⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 str_lib.c

📁 mediastreamer2是开源的网络传输媒体流的库
💻 C
📖 第 1 页 / 共 3 页
字号:
	EVP_PKEY *pkey;	check_store(s,STORE_F_STORE_LIST_PRIVATE_KEY_NEXT,		list_object_next,STORE_R_NO_LIST_OBJECT_NEXT_FUNCTION);	object = s->meth->list_object_next(s, handle);	if (!object || !object->data.key || !object->data.key)		{		STOREerr(STORE_F_STORE_LIST_PRIVATE_KEY_NEXT,			STORE_R_FAILED_LISTING_KEYS);		return 0;		}	CRYPTO_add(&object->data.key->references,1,CRYPTO_LOCK_EVP_PKEY);#ifdef REF_PRINT	REF_PRINT("EVP_PKEY",data);#endif	pkey = object->data.key;	STORE_OBJECT_free(object);	return pkey;	}int STORE_list_private_key_end(STORE *s, void *handle)	{	check_store(s,STORE_F_STORE_LIST_PRIVATE_KEY_END,		list_object_end,STORE_R_NO_LIST_OBJECT_END_FUNCTION);	if (!s->meth->list_object_end(s, handle))		{		STOREerr(STORE_F_STORE_LIST_PRIVATE_KEY_END,			STORE_R_FAILED_LISTING_KEYS);		return 0;		}	return 1;	}int STORE_list_private_key_endp(STORE *s, void *handle)	{	check_store(s,STORE_F_STORE_LIST_PRIVATE_KEY_ENDP,		list_object_endp,STORE_R_NO_LIST_OBJECT_ENDP_FUNCTION);	if (!s->meth->list_object_endp(s, handle))		{		STOREerr(STORE_F_STORE_LIST_PRIVATE_KEY_ENDP,			STORE_R_FAILED_LISTING_KEYS);		return 0;		}	return 1;	}EVP_PKEY *STORE_get_public_key(STORE *s, OPENSSL_ITEM attributes[],	OPENSSL_ITEM parameters[])	{	STORE_OBJECT *object;	EVP_PKEY *pkey;	check_store(s,STORE_F_STORE_GET_PUBLIC_KEY,		get_object,STORE_R_NO_GET_OBJECT_FUNCTION);	object = s->meth->get_object(s, STORE_OBJECT_TYPE_PUBLIC_KEY,		attributes, parameters);	if (!object || !object->data.key || !object->data.key)		{		STOREerr(STORE_F_STORE_GET_PUBLIC_KEY,			STORE_R_FAILED_GETTING_KEY);		return 0;		}	CRYPTO_add(&object->data.key->references,1,CRYPTO_LOCK_EVP_PKEY);#ifdef REF_PRINT	REF_PRINT("EVP_PKEY",data);#endif	pkey = object->data.key;	STORE_OBJECT_free(object);	return pkey;	}int STORE_store_public_key(STORE *s, EVP_PKEY *data, OPENSSL_ITEM attributes[],	OPENSSL_ITEM parameters[])	{	STORE_OBJECT *object;	int i;	check_store(s,STORE_F_STORE_STORE_PUBLIC_KEY,		store_object,STORE_R_NO_STORE_OBJECT_FUNCTION);	object = STORE_OBJECT_new();	if (!object)		{		STOREerr(STORE_F_STORE_STORE_PUBLIC_KEY,			ERR_R_MALLOC_FAILURE);		return 0;		}	object->data.key = EVP_PKEY_new();	if (!object->data.key)		{		STOREerr(STORE_F_STORE_STORE_PUBLIC_KEY,			ERR_R_MALLOC_FAILURE);		return 0;		}		CRYPTO_add(&data->references,1,CRYPTO_LOCK_EVP_PKEY);#ifdef REF_PRINT	REF_PRINT("EVP_PKEY",data);#endif	object->data.key = data;	i = s->meth->store_object(s, STORE_OBJECT_TYPE_PUBLIC_KEY, object,		attributes, parameters);	STORE_OBJECT_free(object);	if (!i)		{		STOREerr(STORE_F_STORE_STORE_PUBLIC_KEY,			STORE_R_FAILED_STORING_KEY);		return 0;		}	return i;	}int STORE_modify_public_key(STORE *s, OPENSSL_ITEM search_attributes[],	OPENSSL_ITEM add_attributes[], OPENSSL_ITEM modify_attributes[],	OPENSSL_ITEM delete_attributes[], OPENSSL_ITEM parameters[])	{	check_store(s,STORE_F_STORE_MODIFY_PUBLIC_KEY,		modify_object,STORE_R_NO_MODIFY_OBJECT_FUNCTION);	if (!s->meth->modify_object(s, STORE_OBJECT_TYPE_PUBLIC_KEY,		    search_attributes, add_attributes, modify_attributes,		    delete_attributes, parameters))		{		STOREerr(STORE_F_STORE_MODIFY_PUBLIC_KEY,			STORE_R_FAILED_MODIFYING_PUBLIC_KEY);		return 0;		}	return 1;	}int STORE_revoke_public_key(STORE *s, OPENSSL_ITEM attributes[],	OPENSSL_ITEM parameters[])	{	int i;	check_store(s,STORE_F_STORE_REVOKE_PUBLIC_KEY,		revoke_object,STORE_R_NO_REVOKE_OBJECT_FUNCTION);	i = s->meth->revoke_object(s, STORE_OBJECT_TYPE_PUBLIC_KEY,		attributes, parameters);	if (!i)		{		STOREerr(STORE_F_STORE_REVOKE_PUBLIC_KEY,			STORE_R_FAILED_REVOKING_KEY);		return 0;		}	return i;	}int STORE_delete_public_key(STORE *s, OPENSSL_ITEM attributes[],	OPENSSL_ITEM parameters[])	{	check_store(s,STORE_F_STORE_DELETE_PUBLIC_KEY,		delete_object,STORE_R_NO_DELETE_OBJECT_FUNCTION);		if (!s->meth->delete_object(s, STORE_OBJECT_TYPE_PUBLIC_KEY,		    attributes, parameters))		{		STOREerr(STORE_F_STORE_DELETE_PUBLIC_KEY,			STORE_R_FAILED_DELETING_KEY);		return 0;		}	return 1;	}void *STORE_list_public_key_start(STORE *s, OPENSSL_ITEM attributes[],	OPENSSL_ITEM parameters[])	{	void *handle;	check_store(s,STORE_F_STORE_LIST_PUBLIC_KEY_START,		list_object_start,STORE_R_NO_LIST_OBJECT_START_FUNCTION);	handle = s->meth->list_object_start(s, STORE_OBJECT_TYPE_PUBLIC_KEY,		attributes, parameters);	if (!handle)		{		STOREerr(STORE_F_STORE_LIST_PUBLIC_KEY_START,			STORE_R_FAILED_LISTING_KEYS);		return 0;		}	return handle;	}EVP_PKEY *STORE_list_public_key_next(STORE *s, void *handle)	{	STORE_OBJECT *object;	EVP_PKEY *pkey;	check_store(s,STORE_F_STORE_LIST_PUBLIC_KEY_NEXT,		list_object_next,STORE_R_NO_LIST_OBJECT_NEXT_FUNCTION);	object = s->meth->list_object_next(s, handle);	if (!object || !object->data.key || !object->data.key)		{		STOREerr(STORE_F_STORE_LIST_PUBLIC_KEY_NEXT,			STORE_R_FAILED_LISTING_KEYS);		return 0;		}	CRYPTO_add(&object->data.key->references,1,CRYPTO_LOCK_EVP_PKEY);#ifdef REF_PRINT	REF_PRINT("EVP_PKEY",data);#endif	pkey = object->data.key;	STORE_OBJECT_free(object);	return pkey;	}int STORE_list_public_key_end(STORE *s, void *handle)	{	check_store(s,STORE_F_STORE_LIST_PUBLIC_KEY_END,		list_object_end,STORE_R_NO_LIST_OBJECT_END_FUNCTION);	if (!s->meth->list_object_end(s, handle))		{		STOREerr(STORE_F_STORE_LIST_PUBLIC_KEY_END,			STORE_R_FAILED_LISTING_KEYS);		return 0;		}	return 1;	}int STORE_list_public_key_endp(STORE *s, void *handle)	{	check_store(s,STORE_F_STORE_LIST_PUBLIC_KEY_ENDP,		list_object_endp,STORE_R_NO_LIST_OBJECT_ENDP_FUNCTION);	if (!s->meth->list_object_endp(s, handle))		{		STOREerr(STORE_F_STORE_LIST_PUBLIC_KEY_ENDP,			STORE_R_FAILED_LISTING_KEYS);		return 0;		}	return 1;	}X509_CRL *STORE_generate_crl(STORE *s, OPENSSL_ITEM attributes[],	OPENSSL_ITEM parameters[])	{	STORE_OBJECT *object;	X509_CRL *crl;	check_store(s,STORE_F_STORE_GENERATE_CRL,		generate_object,STORE_R_NO_GENERATE_CRL_FUNCTION);	object = s->meth->generate_object(s, STORE_OBJECT_TYPE_X509_CRL,		attributes, parameters);	if (!object || !object->data.crl)		{		STOREerr(STORE_F_STORE_GENERATE_CRL,			STORE_R_FAILED_GENERATING_CRL);		return 0;		}	CRYPTO_add(&object->data.crl->references,1,CRYPTO_LOCK_X509_CRL);#ifdef REF_PRINT	REF_PRINT("X509_CRL",data);#endif	crl = object->data.crl;	STORE_OBJECT_free(object);	return crl;	}X509_CRL *STORE_get_crl(STORE *s, OPENSSL_ITEM attributes[],	OPENSSL_ITEM parameters[])	{	STORE_OBJECT *object;	X509_CRL *crl;	check_store(s,STORE_F_STORE_GET_CRL,		get_object,STORE_R_NO_GET_OBJECT_FUNCTION);	object = s->meth->get_object(s, STORE_OBJECT_TYPE_X509_CRL,		attributes, parameters);	if (!object || !object->data.crl)		{		STOREerr(STORE_F_STORE_GET_CRL,			STORE_R_FAILED_GETTING_KEY);		return 0;		}	CRYPTO_add(&object->data.crl->references,1,CRYPTO_LOCK_X509_CRL);#ifdef REF_PRINT	REF_PRINT("X509_CRL",data);#endif	crl = object->data.crl;	STORE_OBJECT_free(object);	return crl;	}int STORE_store_crl(STORE *s, X509_CRL *data, OPENSSL_ITEM attributes[],	OPENSSL_ITEM parameters[])	{	STORE_OBJECT *object;	int i;	check_store(s,STORE_F_STORE_STORE_CRL,		store_object,STORE_R_NO_STORE_OBJECT_FUNCTION);	object = STORE_OBJECT_new();	if (!object)		{		STOREerr(STORE_F_STORE_STORE_CRL,			ERR_R_MALLOC_FAILURE);		return 0;		}		CRYPTO_add(&data->references,1,CRYPTO_LOCK_X509_CRL);#ifdef REF_PRINT	REF_PRINT("X509_CRL",data);#endif	object->data.crl = data;	i = s->meth->store_object(s, STORE_OBJECT_TYPE_X509_CRL, object,		attributes, parameters);	STORE_OBJECT_free(object);	if (!i)		{		STOREerr(STORE_F_STORE_STORE_CRL,			STORE_R_FAILED_STORING_KEY);		return 0;		}	return i;	}int STORE_modify_crl(STORE *s, OPENSSL_ITEM search_attributes[],	OPENSSL_ITEM add_attributes[], OPENSSL_ITEM modify_attributes[],	OPENSSL_ITEM delete_attributes[], OPENSSL_ITEM parameters[])	{	check_store(s,STORE_F_STORE_MODIFY_CRL,		modify_object,STORE_R_NO_MODIFY_OBJECT_FUNCTION);	if (!s->meth->modify_object(s, STORE_OBJECT_TYPE_X509_CRL,		    search_attributes, add_attributes, modify_attributes,		    delete_attributes, parameters))		{		STOREerr(STORE_F_STORE_MODIFY_CRL,			STORE_R_FAILED_MODIFYING_CRL);		return 0;		}	return 1;	}int STORE_delete_crl(STORE *s, OPENSSL_ITEM attributes[],	OPENSSL_ITEM parameters[])	{	check_store(s,STORE_F_STORE_DELETE_CRL,		delete_object,STORE_R_NO_DELETE_OBJECT_FUNCTION);		if (!s->meth->delete_object(s, STORE_OBJECT_TYPE_X509_CRL,		    attributes, parameters))		{		STOREerr(STORE_F_STORE_DELETE_CRL,			STORE_R_FAILED_DELETING_KEY);		return 0;		}	return 1;	}void *STORE_list_crl_start(STORE *s, OPENSSL_ITEM attributes[],	OPENSSL_ITEM parameters[])	{	void *handle;	check_store(s,STORE_F_STORE_LIST_CRL_START,		list_object_start,STORE_R_NO_LIST_OBJECT_START_FUNCTION);	handle = s->meth->list_object_start(s, STORE_OBJECT_TYPE_X509_CRL,		attributes, parameters);	if (!handle)		{		STOREerr(STORE_F_STORE_LIST_CRL_START,			STORE_R_FAILED_LISTING_KEYS);		return 0;		}	return handle;	}X509_CRL *STORE_list_crl_next(STORE *s, void *handle)	{	STORE_OBJECT *object;	X509_CRL *crl;	check_store(s,STORE_F_STORE_LIST_CRL_NEXT,		list_object_next,STORE_R_NO_LIST_OBJECT_NEXT_FUNCTION);	object = s->meth->list_object_next(s, handle);	if (!object || !object->data.crl)		{		STOREerr(STORE_F_STORE_LIST_CRL_NEXT,			STORE_R_FAILED_LISTING_KEYS);		return 0;		}	CRYPTO_add(&object->data.crl->references,1,CRYPTO_LOCK_X509_CRL);#ifdef REF_PRINT	REF_PRINT("X509_CRL",data);#endif	crl = object->data.crl;	STORE_OBJECT_free(object);	return crl;	}int STORE_list_crl_end(STORE *s, void *handle)	{	check_store(s,STORE_F_STORE_LIST_CRL_END,		list_object_end,STORE_R_NO_LIST_OBJECT_END_FUNCTION);	if (!s->meth->list_object_end(s, handle))		{		STOREerr(STORE_F_STORE_LIST_CRL_END,			STORE_R_FAILED_LISTING_KEYS);		return 0;		}	return 1;	}int STORE_list_crl_endp(STORE *s, void *handle)	{	check_store(s,STORE_F_STORE_LIST_CRL_ENDP,		list_object_endp,STORE_R_NO_LIST_OBJECT_ENDP_FUNCTION);	if (!s->meth->list_object_endp(s, handle))		{		STOREerr(STORE_F_STORE_LIST_CRL_ENDP,			STORE_R_FAILED_LISTING_KEYS);		return 0;		}	return 1;	}int STORE_store_number(STORE *s, BIGNUM *data, OPENSSL_ITEM attributes[],	OPENSSL_ITEM parameters[])	{	STORE_OBJECT *object;	int i;	check_store(s,STORE_F_STORE_STORE_NUMBER,		store_object,STORE_R_NO_STORE_OBJECT_NUMBER_FUNCTION);	object = STORE_OBJECT_new();	if (!object)		{		STOREerr(STORE_F_STORE_STORE_NUMBER,			ERR_R_MALLOC_FAILURE);		return 0;		}		object->data.number = data;	i = s->meth->store_object(s, STORE_OBJECT_TYPE_NUMBER, object,		attributes, parameters);	STORE_OBJECT_free(object);	if (!i)		{		STOREerr(STORE_F_STORE_STORE_NUMBER,			STORE_R_FAILED_STORING_NUMBER);		return 0;		}	return 1;	}int STORE_modify_number(STORE *s, OPENSSL_ITEM search_attributes[],	OPENSSL_ITEM add_attributes[], OPENSSL_ITEM modify_attributes[],	OPENSSL_ITEM delete_attributes[], OPENSSL_ITEM parameters[])	{	check_store(s,STORE_F_STORE_MODIFY_NUMBER,		modify_object,STORE_R_NO_MODIFY_OBJECT_FUNCTION);	if (!s->meth->modify_object(s, STORE_OBJECT_TYPE_NUMBER,		    search_attributes, add_attributes, modify_attributes,		    delete_attributes, parameters))		{		STOREerr(STORE_F_STORE_MODIFY_NUMBER,			STORE_R_FAILED_MODIFYING_NUMBER);		return 0;		}	return 1;	}BIGNUM *STORE_get_number(STORE *s, OPENSSL_ITEM attributes[],	OPENSSL_ITEM parameters[])	{	STORE_OBJECT *object;	BIGNUM *n;	check_store(s,STORE_F_STORE_GET_NUMBER,		get_object,STORE_R_NO_GET_OBJECT_NUMBER_FUNCTION);	object = s->meth->get_object(s, STORE_OBJECT_TYPE_NUMBER, attributes,		parameters);	if (!object || !object->data.number)		{		STOREerr(STORE_F_STORE_GET_NUMBER,			STORE_R_FAILED_GETTING_NUMBER);		return 0;		}	n = object->data.number;	object->data.number = NULL;	STORE_OBJECT_free(object);	return n;	}int STORE_delete_number(STORE *s, OPENSSL_ITEM attributes[],	OPENSSL_ITEM parameters[])	{	check_store(s,STORE_F_STORE_DELETE_NUMBER,		delete_object,STORE_R_NO_DELETE_NUMBER_FUNCTION);	if (!s->meth->delete_object(s, STORE_OBJECT_TYPE_NUMBER, attributes,		    parameters))		{		STOREerr(STORE_F_STORE_DELETE_NUMBER,			STORE_R_FAILED_DELETING_NUMBER);		return 0;		}	return 1;	}int STORE_store_arbitrary(STORE *s, BUF_MEM *data, OPENSSL_ITEM attributes[],	OPENSSL_ITEM parameters[])	{	STORE_OBJECT *object;	int i;	check_store(s,STORE_F_STORE_STORE_ARBITRARY,		store_object,STORE_R_NO_STORE_OBJECT_ARBITRARY_FUNCTION);	object = STORE_OBJECT_new();	if (!object)		{		STOREerr(STORE_F_STORE_STORE_ARBITRARY,			ERR_R_MALLOC_FAILURE);		return 0;		}		object->data.arbitrary = data;	i = s->meth->store_object(s, STORE_OBJECT_TYPE_ARBITRARY, object,		attributes, parameters);	STORE_OBJECT_free(object);	if (!i)		{		STOREerr(STORE_F_STORE_STORE_ARBITRARY,			STORE_R_FAILED_STORING_ARBITRARY);		return 0;		}	return 1;	}int STORE_modify_arbitrary(STORE *s, OPENSSL_ITEM search_attributes[],	OPENSSL_ITEM add_attributes[], OPENSSL_ITEM modify_attributes[],	OPENSSL_ITEM delete_attributes[], OPENSSL_ITEM parameters[])	{	check_store(s,STORE_F_STORE_MODIFY_ARBITRARY,		modify_object,STORE_R_NO_MODIFY_OBJECT_FUNCTION);	if (!s->meth->modify_object(s, STORE_OBJECT_TYPE_ARBITRARY,		    search_attributes, add_attributes, modify_attributes,		    delete_attributes, parameters))		{		STOREerr(STORE_F_STORE_MODIFY_ARBITRARY,			STORE_R_FAILED_MODIFYING_ARBITRARY);		return 0;		}	return 1;	}BUF_MEM *STORE_get_arbitrary(STORE *s, OPENSSL_ITEM attributes[],	OPENSSL_ITEM parameters[])	{	STORE_OBJECT *object;	BUF_MEM *b;	check_store(s,STORE_F_STORE_GET_ARBITRARY,		get_object,STORE_R_NO_GET_OBJECT_ARBITRARY_FUNCTION);	object = s->meth->get_object(s, STORE_OBJECT_TYPE_ARBITRARY,		attributes, parameters);	if (!object || !object->data.arbitrary)		{		STOREerr(STORE_F_STORE_GET_ARBITRARY,			STORE_R_FAILED_GETTING_ARBITRARY);		return 0;		}	b = object->data.arbitrary;	object->data.arbitrary = NULL;	STORE_OBJECT_free(object);	return b;	}int STORE_delete_arbitrary(STORE *s, OPENSSL_ITEM attributes[],	OPENSSL_ITEM parameters[])	{	check_store(s,STORE_F_STORE_DELETE_ARBITRARY,		delete_object,STORE_R_NO_DELETE_ARBITRARY_FUNCTION);	if (!s->meth->delete_object(s, STORE_OBJECT_TYPE_ARBITRARY, attributes,

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -