asn1p_module.c

来自「ASN.1解析解码工具,可以解析各种ASN.1格式的文件,并对相应的BER文件解」· C语言 代码 · 共 63 行

C
63
字号
#include <stdlib.h>#include <string.h>#include "asn1parser/asn1parser.h"/* * Construct a new empty module. */asn1p_module_t *asn1p_module_new() {	asn1p_module_t *mod;	mod = calloc(1, sizeof *mod);	if(mod) {		TQ_INIT(&(mod->exports));		TQ_INIT(&(mod->imports));		TQ_INIT(&(mod->members));	}	return mod;}/* * Destroy the module. */voidasn1p_module_free(asn1p_module_t *mod) {	if(mod) {		asn1p_expr_t *expr;		if(mod->ModuleName)			free(mod->ModuleName);		if(mod->module_oid)			asn1p_oid_free(mod->module_oid);		while((expr = TQ_REMOVE_TYPE(asn1p_expr_t,&(mod->members), next)))			asn1p_expr_free(expr);		free(mod);	}}asn1p_t *asn1p_new() {	asn1p_t *asn;	asn = calloc(1, sizeof(*asn));	if(asn) {		TQ_INIT(&(asn->modules));	}	return asn;}voidasn1p_delete(asn1p_t *asn) {	if(asn) {		asn1p_module_t *mod;		while((mod = TQ_REMOVE_TYPE(asn1p_module_t,&(asn->modules), mod_next)))			asn1p_module_free(mod);		free(asn);	}}

⌨️ 快捷键说明

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