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

📄 ill-core.c

📁 harvest是一个下载html网页得机器人
💻 C
📖 第 1 页 / 共 5 页
字号:
/* Generated automatically by the YAZ ASN.1 Compiler 0.3 *//* Module-C: ISO-10161-ILL-1 */#include <yaz/ill-core.h>int ill_APDU (ODR o, ILL_APDU **p, int opt, const char *name){	static Odr_arm arm[] = {		{-1, -1, -1, ILL_APDU_ILL_Request,		 (Odr_fun) ill_Request, "illRequest"},		{-1, -1, -1, ILL_APDU_Forward_Notification,		 (Odr_fun) ill_Forward_Notification, "Forward_Notification"},		{-1, -1, -1, ILL_APDU_Shipped,		 (Odr_fun) ill_Shipped, "Shipped"},		{-1, -1, -1, ILL_APDU_ILL_Answer,		 (Odr_fun) ill_Answer, "illAnswer"},		{-1, -1, -1, ILL_APDU_Conditional_Reply,		 (Odr_fun) ill_Conditional_Reply, "Conditional_Reply"},		{-1, -1, -1, ILL_APDU_Cancel,		 (Odr_fun) ill_Cancel, "Cancel"},		{-1, -1, -1, ILL_APDU_Cancel_Reply,		 (Odr_fun) ill_Cancel_Reply, "Cancel_Reply"},		{-1, -1, -1, ILL_APDU_Received,		 (Odr_fun) ill_Received, "Received"},		{-1, -1, -1, ILL_APDU_Recall,		 (Odr_fun) ill_Recall, "Recall"},		{-1, -1, -1, ILL_APDU_Returned,		 (Odr_fun) ill_Returned, "Returned"},		{-1, -1, -1, ILL_APDU_Checked_In,		 (Odr_fun) ill_Checked_In, "Checked_In"},		{-1, -1, -1, ILL_APDU_Overdue,		 (Odr_fun) ill_Overdue, "Overdue"},		{-1, -1, -1, ILL_APDU_Renew,		 (Odr_fun) ill_Renew, "Renew"},		{-1, -1, -1, ILL_APDU_Renew_Answer,		 (Odr_fun) ill_Renew_Answer, "Renew_Answer"},		{-1, -1, -1, ILL_APDU_Lost,		 (Odr_fun) ill_Lost, "Lost"},		{-1, -1, -1, ILL_APDU_Damaged,		 (Odr_fun) ill_Damaged, "Damaged"},		{-1, -1, -1, ILL_APDU_Message,		 (Odr_fun) ill_Message, "Message"},		{-1, -1, -1, ILL_APDU_Status_Query,		 (Odr_fun) ill_Status_Query, "Status_Query"},		{-1, -1, -1, ILL_APDU_Status_Or_Error_Report,		 (Odr_fun) ill_Status_Or_Error_Report, "Status_Or_Error_Report"},		{-1, -1, -1, ILL_APDU_Expired,		 (Odr_fun) ill_Expired, "Expired"},		{-1, -1, -1, -1, (Odr_fun) 0, 0}	};	if (!odr_initmember(o, p, sizeof(**p)))		return odr_missing(o, opt, name);	if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name))		return 1;	*p = 0;	return odr_missing(o, opt, name);}int ill_Request (ODR o, ILL_Request **p, int opt, const char *name){	if (!odr_constructed_begin (o, p, ODR_APPLICATION, 1, name))		return odr_missing(o, opt, name);	if (o->direction == ODR_DECODE)		*p = (ILL_Request *) odr_malloc (o, sizeof(**p));	if (!odr_sequence_begin (o, p, sizeof(**p), 0))	{		*p = 0;		return 0;	}	return		odr_implicit_tag (o, odr_integer,			&(*p)->protocol_version_num, ODR_CONTEXT, 0, 0, "protocol_version_num") &&		odr_implicit_tag (o, ill_Transaction_Id,			&(*p)->transaction_id, ODR_CONTEXT, 1, 0, "transaction_id") &&		odr_implicit_tag (o, ill_Service_Date_Time,			&(*p)->service_date_time, ODR_CONTEXT, 2, 0, "service_date_time") &&		odr_implicit_tag (o, ill_System_Id,			&(*p)->requester_id, ODR_CONTEXT, 3, 1, "requester_id") &&		odr_implicit_tag (o, ill_System_Id,			&(*p)->responder_id, ODR_CONTEXT, 4, 1, "responder_id") &&		odr_implicit_tag (o, ill_Transaction_Type,			&(*p)->transaction_type, ODR_CONTEXT, 5, 0, "transaction_type") &&		odr_implicit_tag (o, ill_Delivery_Address,			&(*p)->delivery_address, ODR_CONTEXT, 6, 1, "delivery_address") &&		ill_Delivery_Service(o, &(*p)->delivery_service, 1, "delivery_service") &&		odr_implicit_tag (o, ill_Delivery_Address,			&(*p)->billing_address, ODR_CONTEXT, 8, 1, "billing_address") &&		odr_implicit_settag (o, ODR_CONTEXT, 9) &&		odr_sequence_of(o, (Odr_fun) ill_Service_Type, &(*p)->iLL_service_type,		  &(*p)->num_iLL_service_type, "iLL_service_type") &&		odr_explicit_tag (o, odr_external,			&(*p)->responder_specific_service, ODR_CONTEXT, 10, 1, "responder_specific_service") &&		odr_implicit_tag (o, ill_Requester_Optional_Messages_Type,			&(*p)->requester_optional_messages, ODR_CONTEXT, 11, 0, "requester_optional_messages") &&		odr_implicit_tag (o, ill_Search_Type,			&(*p)->search_type, ODR_CONTEXT, 12, 1, "search_type") &&		odr_implicit_settag (o, ODR_CONTEXT, 13) &&		(odr_sequence_of(o, (Odr_fun) ill_Supply_Medium_Info_Type, &(*p)->supply_medium_info_type,		  &(*p)->num_supply_medium_info_type, "supply_medium_info_type") || odr_ok(o)) &&		odr_implicit_tag (o, ill_Place_On_Hold_Type,			&(*p)->place_on_hold, ODR_CONTEXT, 14, 0, "place_on_hold") &&		odr_implicit_tag (o, ill_Client_Id,			&(*p)->client_id, ODR_CONTEXT, 15, 1, "client_id") &&		odr_implicit_tag (o, ill_Item_Id,			&(*p)->item_id, ODR_CONTEXT, 16, 0, "item_id") &&		odr_implicit_tag (o, ill_Supplemental_Item_Description,			&(*p)->supplemental_item_description, ODR_CONTEXT, 17, 1, "supplemental_item_description") &&		odr_implicit_tag (o, ill_Cost_Info_Type,			&(*p)->cost_info_type, ODR_CONTEXT, 18, 1, "cost_info_type") &&		odr_explicit_tag (o, ill_String,			&(*p)->copyright_compliance, ODR_CONTEXT, 19, 1, "copyright_compliance") &&		odr_implicit_tag (o, ill_Third_Party_Info_Type,			&(*p)->third_party_info_type, ODR_CONTEXT, 20, 1, "third_party_info_type") &&		odr_implicit_tag (o, odr_bool,			&(*p)->retry_flag, ODR_CONTEXT, 21, 0, "retry_flag") &&		odr_implicit_tag (o, odr_bool,			&(*p)->forward_flag, ODR_CONTEXT, 22, 0, "forward_flag") &&		odr_explicit_tag (o, ill_String,			&(*p)->requester_note, ODR_CONTEXT, 46, 1, "requester_note") &&		odr_explicit_tag (o, ill_String,			&(*p)->forward_note, ODR_CONTEXT, 47, 1, "forward_note") &&		odr_implicit_settag (o, ODR_CONTEXT, 49) &&		(odr_sequence_of(o, (Odr_fun) ill_Extension, &(*p)->iLL_request_extensions,		  &(*p)->num_iLL_request_extensions, "iLL_request_extensions") || odr_ok(o)) &&		odr_sequence_end (o) &&		odr_constructed_end (o);}int ill_Forward_Notification (ODR o, ILL_Forward_Notification **p, int opt, const char *name){	if (!odr_constructed_begin (o, p, ODR_APPLICATION, 2, name))		return odr_missing(o, opt, name);	if (o->direction == ODR_DECODE)		*p = (ILL_Forward_Notification *) odr_malloc (o, sizeof(**p));	if (!odr_sequence_begin (o, p, sizeof(**p), 0))	{		*p = 0;		return 0;	}	return		odr_implicit_tag (o, odr_integer,			&(*p)->protocol_version_num, ODR_CONTEXT, 0, 0, "protocol_version_num") &&		odr_implicit_tag (o, ill_Transaction_Id,			&(*p)->transaction_id, ODR_CONTEXT, 1, 0, "transaction_id") &&		odr_implicit_tag (o, ill_Service_Date_Time,			&(*p)->service_date_time, ODR_CONTEXT, 2, 0, "service_date_time") &&		odr_implicit_tag (o, ill_System_Id,			&(*p)->requester_id, ODR_CONTEXT, 3, 1, "requester_id") &&		odr_implicit_tag (o, ill_System_Id,			&(*p)->responder_id, ODR_CONTEXT, 4, 0, "responder_id") &&		odr_implicit_tag (o, ill_System_Address,			&(*p)->responder_address, ODR_CONTEXT, 24, 1, "responder_address") &&		odr_implicit_tag (o, ill_System_Id,			&(*p)->intermediary_id, ODR_CONTEXT, 25, 0, "intermediary_id") &&		odr_explicit_tag (o, ill_String,			&(*p)->notification_note, ODR_CONTEXT, 48, 1, "notification_note") &&		odr_implicit_settag (o, ODR_CONTEXT, 49) &&		(odr_sequence_of(o, (Odr_fun) ill_Extension, &(*p)->forward_notification_extensions,		  &(*p)->num_forward_notification_extensions, "forward_notification_extensions") || odr_ok(o)) &&		odr_sequence_end (o) &&		odr_constructed_end (o);}int ill_Shipped (ODR o, ILL_Shipped **p, int opt, const char *name){	if (!odr_constructed_begin (o, p, ODR_APPLICATION, 3, name))		return odr_missing(o, opt, name);	if (o->direction == ODR_DECODE)		*p = (ILL_Shipped *) odr_malloc (o, sizeof(**p));	if (!odr_sequence_begin (o, p, sizeof(**p), 0))	{		*p = 0;		return 0;	}	return		odr_implicit_tag (o, odr_integer,			&(*p)->protocol_version_num, ODR_CONTEXT, 0, 0, "protocol_version_num") &&		odr_implicit_tag (o, ill_Transaction_Id,			&(*p)->transaction_id, ODR_CONTEXT, 1, 0, "transaction_id") &&		odr_implicit_tag (o, ill_Service_Date_Time,			&(*p)->service_date_time, ODR_CONTEXT, 2, 0, "service_date_time") &&		odr_implicit_tag (o, ill_System_Id,			&(*p)->requester_id, ODR_CONTEXT, 3, 1, "requester_id") &&		odr_implicit_tag (o, ill_System_Id,			&(*p)->responder_id, ODR_CONTEXT, 4, 1, "responder_id") &&		odr_implicit_tag (o, ill_System_Address,			&(*p)->responder_address, ODR_CONTEXT, 24, 1, "responder_address") &&		odr_implicit_tag (o, ill_System_Id,			&(*p)->intermediary_id, ODR_CONTEXT, 25, 1, "intermediary_id") &&		odr_implicit_tag (o, ill_System_Id,			&(*p)->supplier_id, ODR_CONTEXT, 26, 1, "supplier_id") &&		odr_implicit_tag (o, ill_Client_Id,			&(*p)->client_id, ODR_CONTEXT, 15, 1, "client_id") &&		odr_implicit_tag (o, ill_Transaction_Type,			&(*p)->transaction_type, ODR_CONTEXT, 5, 0, "transaction_type") &&		odr_implicit_tag (o, ill_Supplemental_Item_Description,			&(*p)->supplemental_item_description, ODR_CONTEXT, 17, 1, "supplemental_item_description") &&		odr_implicit_tag (o, ill_Shipped_Service_Type,			&(*p)->shipped_service_type, ODR_CONTEXT, 27, 0, "shipped_service_type") &&		odr_implicit_tag (o, ill_Responder_Optional_Messages_Type,			&(*p)->responder_optional_messages, ODR_CONTEXT, 28, 1, "responder_optional_messages") &&		odr_implicit_tag (o, ill_Supply_Details,			&(*p)->supply_details, ODR_CONTEXT, 29, 0, "supply_details") &&		odr_implicit_tag (o, ill_Postal_Address,			&(*p)->return_to_address, ODR_CONTEXT, 30, 1, "return_to_address") &&		odr_explicit_tag (o, ill_String,			&(*p)->responder_note, ODR_CONTEXT, 46, 1, "responder_note") &&		odr_implicit_settag (o, ODR_CONTEXT, 49) &&		(odr_sequence_of(o, (Odr_fun) ill_Extension, &(*p)->shipped_extensions,		  &(*p)->num_shipped_extensions, "shipped_extensions") || odr_ok(o)) &&		odr_sequence_end (o) &&		odr_constructed_end (o);}int ill_Answer (ODR o, ILL_Answer **p, int opt, const char *name){	static Odr_arm arm[] = {		{ODR_EXPLICIT, ODR_CONTEXT, 1, ILL_Answer_conditional_results,		(Odr_fun) ill_Conditional_Results, "conditional_results"},		{ODR_EXPLICIT, ODR_CONTEXT, 2, ILL_Answer_retry_results,		(Odr_fun) ill_Retry_Results, "retry_results"},		{ODR_EXPLICIT, ODR_CONTEXT, 3, ILL_Answer_unfilled_results,		(Odr_fun) ill_Unfilled_Results, "unfilled_results"},		{ODR_EXPLICIT, ODR_CONTEXT, 4, ILL_Answer_locations_results,		(Odr_fun) ill_Locations_Results, "locations_results"},		{ODR_EXPLICIT, ODR_CONTEXT, 5, ILL_Answer_will_supply_results,		(Odr_fun) ill_Will_Supply_Results, "will_supply_results"},		{ODR_EXPLICIT, ODR_CONTEXT, 6, ILL_Answer_hold_placed_results,		(Odr_fun) ill_Hold_Placed_Results, "hold_placed_results"},		{ODR_EXPLICIT, ODR_CONTEXT, 7, ILL_Answer_estimate_results,		(Odr_fun) ill_Estimate_Results, "estimate_results"},		{-1, -1, -1, -1, (Odr_fun) 0, 0}	};	if (!odr_constructed_begin (o, p, ODR_APPLICATION, 4, name))		return odr_missing(o, opt, name);	if (o->direction == ODR_DECODE)		*p = (ILL_Answer *) odr_malloc (o, sizeof(**p));	if (!odr_sequence_begin (o, p, sizeof(**p), 0))	{		*p = 0;		return 0;	}	return		odr_implicit_tag (o, odr_integer,			&(*p)->protocol_version_num, ODR_CONTEXT, 0, 0, "protocol_version_num") &&		odr_implicit_tag (o, ill_Transaction_Id,			&(*p)->transaction_id, ODR_CONTEXT, 1, 0, "transaction_id") &&		odr_implicit_tag (o, ill_Service_Date_Time,			&(*p)->service_date_time, ODR_CONTEXT, 2, 0, "service_date_time") &&		odr_implicit_tag (o, ill_System_Id,			&(*p)->requester_id, ODR_CONTEXT, 3, 1, "requester_id") &&		odr_implicit_tag (o, ill_System_Id,			&(*p)->responder_id, ODR_CONTEXT, 4, 1, "responder_id") &&		odr_implicit_tag (o, ill_Transaction_Results,			&(*p)->transaction_results, ODR_CONTEXT, 31, 0, "transaction_results") &&		((odr_constructed_begin (o, &(*p)->u, ODR_CONTEXT, 32, "results_explanation") &&		odr_choice (o, arm, &(*p)->u, &(*p)->which, 0) &&		odr_constructed_end (o)) || odr_ok(o)) &&		odr_explicit_tag (o, odr_external,			&(*p)->responder_specific_results, ODR_CONTEXT, 33, 1, "responder_specific_results") &&		odr_implicit_tag (o, ill_Supplemental_Item_Description,			&(*p)->supplemental_item_description, ODR_CONTEXT, 17, 1, "supplemental_item_description") &&		odr_implicit_tag (o, ill_Send_To_List_Type,			&(*p)->send_to_list, ODR_CONTEXT, 23, 1, "send_to_list") &&		odr_implicit_tag (o, ill_Already_Tried_List_Type,			&(*p)->already_tried_list, ODR_CONTEXT, 34, 1, "already_tried_list") &&		odr_implicit_tag (o, ill_Responder_Optional_Messages_Type,			&(*p)->responder_optional_messages, ODR_CONTEXT, 28, 1, "responder_optional_messages") &&		odr_explicit_tag (o, ill_String,			&(*p)->responder_note, ODR_CONTEXT, 46, 1, "responder_note") &&		odr_implicit_settag (o, ODR_CONTEXT, 49) &&		(odr_sequence_of(o, (Odr_fun) ill_Extension, &(*p)->ill_answer_extensions,		  &(*p)->num_ill_answer_extensions, "ill_answer_extensions") || odr_ok(o)) &&		odr_sequence_end (o) &&		odr_constructed_end (o);}int ill_Conditional_Reply (ODR o, ILL_Conditional_Reply **p, int opt, const char *name){	if (!odr_constructed_begin (o, p, ODR_APPLICATION, 5, name))		return odr_missing(o, opt, name);	if (o->direction == ODR_DECODE)		*p = (ILL_Conditional_Reply *) odr_malloc (o, sizeof(**p));	if (!odr_sequence_begin (o, p, sizeof(**p), 0))	{		*p = 0;		return 0;	}	return		odr_implicit_tag (o, odr_integer,			&(*p)->protocol_version_num, ODR_CONTEXT, 0, 0, "protocol_version_num") &&		odr_implicit_tag (o, ill_Transaction_Id,			&(*p)->transaction_id, ODR_CONTEXT, 1, 0, "transaction_id") &&		odr_implicit_tag (o, ill_Service_Date_Time,			&(*p)->service_date_time, ODR_CONTEXT, 2, 0, "service_date_time") &&		odr_implicit_tag (o, ill_System_Id,			&(*p)->requester_id, ODR_CONTEXT, 3, 1, "requester_id") &&		odr_implicit_tag (o, ill_System_Id,			&(*p)->responder_id, ODR_CONTEXT, 4, 1, "responder_id") &&		odr_implicit_tag (o, odr_bool,			&(*p)->answer, ODR_CONTEXT, 35, 0, "answer") &&		odr_explicit_tag (o, ill_String,			&(*p)->requester_note, ODR_CONTEXT, 46, 1, "requester_note") &&		odr_implicit_settag (o, ODR_CONTEXT, 49) &&		(odr_sequence_of(o, (Odr_fun) ill_Extension, &(*p)->conditional_reply_extensions,		  &(*p)->num_conditional_reply_extensions, "conditional_reply_extensions") || odr_ok(o)) &&		odr_sequence_end (o) &&		odr_constructed_end (o);}int ill_Cancel (ODR o, ILL_Cancel **p, int opt, const char *name){	if (!odr_constructed_begin (o, p, ODR_APPLICATION, 6, name))		return odr_missing(o, opt, name);	if (o->direction == ODR_DECODE)		*p = (ILL_Cancel *) odr_malloc (o, sizeof(**p));	if (!odr_sequence_begin (o, p, sizeof(**p), 0))	{		*p = 0;		return 0;	}	return		odr_implicit_tag (o, odr_integer,			&(*p)->protocol_version_num, ODR_CONTEXT, 0, 0, "protocol_version_num") &&		odr_implicit_tag (o, ill_Transaction_Id,

⌨️ 快捷键说明

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