📄 r64_endec_test.c
字号:
/******************************************************************************
**
** Copyright (c) 2007, UTStarcom, Inc.
** All Rights Reserved.
**
** Subsystem : Wimax BS
** File : r64_set_message.c
** Created By: Scott.wang
** Created On: 1/18/2007
**
** Purpose:
** set r64 message content function.
** History:
** Programmer Date Rev Description
** Scott.wang 1/18/2007 0.0 Creating file
******************************************************************************/
#include "xcommon.h"
#include "global.h"
#include "gw_common.h"
#include "r64_type_length.h"
#include "r64_message_ie.h"
#include "r64_message.h"
#include "r64_endec.h"
#ifdef R64_ENDEC_DEBUG
/* print function type declare */
void r64_set_ft_qos(R64_MSG_S * p_r64_msg);
void r64_set_ft_handoff(R64_MSG_S * p_r64_msg);
void r64_set_ft_data_path(R64_MSG_S * p_r64_msg);
void r64_set_ft_context(R64_MSG_S * p_r64_msg);
void r64_set_ft_r3_mobility(R64_MSG_S * p_r64_msg);
void r64_set_ft_paging(R64_MSG_S * p_r64_msg);
void r64_set_ft_rrm(R64_MSG_S * p_r64_msg);
void r64_set_ft_auth_relay(R64_MSG_S * p_r64_msg);
void r64_set_ft_ms_state_change(R64_MSG_S * p_r64_msg);
void r64_set_ft_acct_info(R64_MSG_S * p_r64_msg);
/* print message type declare */
void r64_set_ft_qos_msg_registration_request(R64_MSG_S * p_r64_msg);
void r64_set_ft_qos_msg_registration_response(R64_MSG_S * p_r64_msg);
void r64_set_ft_qos_msg_pd_request(R64_MSG_S * p_r64_msg);
void r64_set_ft_qos_msg_pd_response(R64_MSG_S * p_r64_msg);
void r64_set_ft_qos_msg_pr_request(R64_MSG_S * p_r64_msg);
void r64_set_ft_qos_msg_pr_response(R64_MSG_S * p_r64_msg);
void r64_set_ft_qos_msg_lu_request(R64_MSG_S * p_r64_msg);
void r64_set_ft_qos_msg_lu_response(R64_MSG_S * p_r64_msg);
void r64_set_ft_handoff_msg_request(R64_MSG_S * p_r64_msg);
void r64_set_ft_handoff_msg_response(R64_MSG_S * p_r64_msg);
void r64_set_ft_handoff_msg_confirm(R64_MSG_S * p_r64_msg);
void r64_set_ft_handoff_msg_complete(R64_MSG_S * p_r64_msg);
void r64_set_ft_handoff_msg_ack(R64_MSG_S * p_r64_msg);
void r64_set_ft_data_path_msg_pre_registration(R64_MSG_S * p_r64_msg);
void r64_set_ft_data_path_msg_registration_request(R64_MSG_S * p_r64_msg);
void r64_set_ft_data_path_msg_de_registration_request(R64_MSG_S * p_r64_msg);
void r64_set_ft_data_path_msg_modification_request(R64_MSG_S * p_r64_msg);
void r64_set_ft_data_path_msg_pre_registration_response(R64_MSG_S * p_r64_msg);
void r64_set_ft_data_path_msg_registration_response(R64_MSG_S * p_r64_msg);
void r64_set_ft_data_path_msg_de_registration_response(R64_MSG_S * p_r64_msg);
void r64_set_ft_data_path_msg_modification_response(R64_MSG_S * p_r64_msg);
void r64_set_ft_data_path_msg_registration_ack(R64_MSG_S * p_r64_msg);
void r64_set_ft_data_path_msg_setup_request(R64_MSG_S * p_r64_msg);
void r64_set_ft_data_path_msg_setup_response(R64_MSG_S * p_r64_msg);
void r64_set_ft_data_path_msg_modify_ack(R64_MSG_S * p_r64_msg);
void r64_set_ft_data_path_msg_release_request(R64_MSG_S * p_r64_msg);
void r64_set_ft_data_path_msg_release_response(R64_MSG_S * p_r64_msg);
void r64_set_ft_data_path_msg_release_ack(R64_MSG_S * p_r64_msg);
void r64_set_ft_data_path_msg_de_registration_ack(R64_MSG_S * p_r64_msg);
void r64_set_ft_data_path_msg_setup_ack(R64_MSG_S * p_r64_msg);
void r64_set_ft_context_msg_request(R64_MSG_S * p_r64_msg);
void r64_set_ft_context_msg_report(R64_MSG_S * p_r64_msg);
void r64_set_ft_context_msg_ack(R64_MSG_S * p_r64_msg);
void r64_set_ft_context_msg_rsp(R64_MSG_S * p_r64_msg);
void r64_set_ft_context_msg_ms_info_request(R64_MSG_S * p_r64_msg);
void r64_set_ft_context_msg_ms_info_response(R64_MSG_S * p_r64_msg);
void r64_set_ft_r3_mobility_msg_relocation_request(R64_MSG_S * p_r64_msg);
void r64_set_ft_r3_mobility_msg_relocation_response(R64_MSG_S * p_r64_msg);
void r64_set_ft_r3_mobility_msg_relocation_confirm(R64_MSG_S * p_r64_msg);
void r64_set_ft_paging_msg_location_update_reuqest(R64_MSG_S * p_r64_msg);
void r64_set_ft_paging_msg_location_update_response(R64_MSG_S * p_r64_msg);
void r64_set_ft_paging_msg_location_update_confirm(R64_MSG_S * p_r64_msg);
void r64_set_ft_paging_msg_paging_announce(R64_MSG_S * p_r64_msg);
void r64_set_ft_paging_msg_init_paging_req(R64_MSG_S * p_r64_msg);
void r64_set_ft_paging_msg_init_paging_rsp(R64_MSG_S * p_r64_msg);
void r64_set_ft_rrm_msg_phy_parameter_request(R64_MSG_S * p_r64_msg);
void r64_set_ft_rrm_msg_phy_parameter_response(R64_MSG_S * p_r64_msg);
void r64_set_ft_rrm_msg_spare_capacity_request(R64_MSG_S * p_r64_msg);
void r64_set_ft_rrm_msg_spare_capacity_response(R64_MSG_S * p_r64_msg);
void r64_set_ft_auth_relay_msg_eap_start(R64_MSG_S * p_r64_msg);
void r64_set_ft_auth_relay_msg_eap_transfer(R64_MSG_S * p_r64_msg);
void r64_set_ft_auth_relay_msg_authenticated_eap_start(R64_MSG_S * p_r64_msg);
void r64_set_ft_auth_relay_msg_authenticated_eap_relay(R64_MSG_S * p_r64_msg);
void r64_set_ft_ms_state_change_msg_delete_ms_context_directive(R64_MSG_S * p_r64_msg);
void r64_set_ft_ms_state_change_msg_delete_ms_context_directive_ack(R64_MSG_S * p_r64_msg);
void r64_set_ft_ms_state_change_msg_im_entry_ms_state_change_ack(R64_MSG_S * p_r64_msg);
void r64_set_ft_ms_state_change_msg_im_entry_ms_state_change_directive(R64_MSG_S * p_r64_msg);
void r64_set_ft_ms_state_change_msg_im_entry_ms_state_change_request(R64_MSG_S * p_r64_msg);
void r64_set_ft_ms_state_change_msg_im_entry_ms_state_change_response(R64_MSG_S * p_r64_msg);
void r64_set_ft_ms_state_change_msg_im_exit_ms_state_change_ack(R64_MSG_S * p_r64_msg);
void r64_set_ft_ms_state_change_msg_im_exit_ms_state_change_directive(R64_MSG_S * p_r64_msg);
void r64_set_ft_ms_state_change_msg_im_exit_ms_state_change_request(R64_MSG_S * p_r64_msg);
void r64_set_ft_ms_state_change_msg_im_exit_ms_state_change_response(R64_MSG_S * p_r64_msg);
void r64_set_ft_ms_state_change_msg_nw_entry_ms_state_change_ack(R64_MSG_S * p_r64_msg);
void r64_set_ft_ms_state_change_msg_nw_entry_ms_state_change_directive(R64_MSG_S * p_r64_msg);
void r64_set_ft_ms_state_change_msg_nw_entry_ms_state_change_request(R64_MSG_S * p_r64_msg);
void r64_set_ft_ms_state_change_msg_nw_entry_ms_state_change_response(R64_MSG_S * p_r64_msg);
void r64_set_ft_acct_info_msg_request(R64_MSG_S * p_r64_msg);
void r64_set_ft_acct_info_msg_report(R64_MSG_S * p_r64_msg);
void r64_set_ft_acct_info_msg_ack(R64_MSG_S * p_r64_msg);
/* print tlv functions */
void r64_set_tlv_context_purpose_indicator(R64_CONTEXT_PURPOSE_INDICATOR_S * p_context_purpose_indicator);
void r64_set_tlv_ms_id(R64_MS_ID_S * p_ms_id);
void r64_set_tlv_ms_nai(R64_MS_NAI_S * p_ms_nai);
void r64_set_tlv_bs_id(R64_BS_ID_S * p_bs_id);
void r64_set_tlv_sf_id(R64_SFID_S * p_sf_id);
void r64_set_tlv_cause_code(R64_CAUSE_CODE_S * p_cause_code);
void r64_set_tlv_registration_type(R64_REGISTRATION_TYPE_S * p_registration_type);
void r64_set_tlv_cs_type(R64_CS_TYPE_S * p_cs_type);
void r64_set_tlv_key_sn(R64_KEY_SN_S * p_key_sn);
void r64_set_tlv_gw_id(R64_GW_ID_S * p_gw_id);
void r64_set_tlv_anchor_gw_info(R64_ANCHOR_GW_INFO_S * p_anchor_gw_info);
void r64_set_tlv_anchor_authenticator_id(R64_ANCHOR_AUTHENTICATOR_ID_S * p_authenticator_id);
void r64_set_tlv_ak(R64_AK_S * p_ak);
void r64_set_tlv_ak_id(R64_AK_ID_S * p_ak_id);
void r64_set_tlv_ak_life_time(R64_AK_LIFE_TIME_S * p_ak_life_time);
void r64_set_tlv_ak_sn(R64_AK_SN_S * p_ak_sn);
void r64_set_tlv_eap_message(R64_EAP_MESSAGE_S * p_eap_message);
void r64_set_tlv_packet_classifier_rule_priority(R64_PACKET_CLASSIFIER_RULE_PRIORITY_S * p_packet_classifier_rule_priority);
void r64_set_tlv_dscp_rang_and_mask(R64_DSCP_RANG_AND_MASK_S * p_dscp_rang_and_mask);
void r64_set_tlv_ip_protocol(R64_IP_PROTOCOL_S * p_ip_protocol);
void r64_set_tlv_source_address_and_mask(R64_SOURCE_ADDRESS_AND_MASK_S * p_source_address_and_mask);
void r64_set_tlv_destination_address_and_mask(R64_DESTINATION_ADDRESS_AND_MASK_S * p_destination_address_and_mask);
void r64_set_tlv_source_port_range(R64_SOURCE_PORT_RANGE_S * p_source_port_range);
void r64_set_tlv_destination_port_range(R64_DESTINATION_PORT_RANGE_S * p_destination_port_range);
void r64_set_tlv_trafic_priority(R64_TRAFIC_PRIORITY_S * p_trafic_priority);
void r64_set_tlv_maximam_sustained_trafic_rate(R64_MAXIMAM_SUSTAINED_TRAFIC_RATE_S * p_maximam_sustained_trafic_rate);
void r64_set_tlv_minimam_reserved_trafic_rate(R64_MINIMAM_RESERVED_TRAFIC_RATE_S * p_minimam_reserved_trafic_rate);
void r64_set_tlv_maximam_latency(R64_MAXIMAM_LATENCY_S * p_maximam_latency);
void r64_set_tlv_classifier_action(R64_CLASSIFIER_ACTION_S * p_classifier_action);
void r64_set_tlv_tolerated_jitter(R64_TOLERATED_JITTER_S * p_tolerated_jitter);
void r64_set_tlv_sdu_size(R64_SDU_SIZE_S * p_sdu_size);
void r64_set_tlv_unsolicited_grant_interval(R64_UNSOLICITED_GRANT_INTERVAL_S * p_unsolicited_grant_interval);
void r64_set_tlv_maximam_trafic_burst(R64_MAXIMAM_TRAFIC_BURST_S * p_maximam_trafic_burst);
void r64_set_tlv_service_flow_type(R64_SERVICE_FLOW_TYPE_S * p_service_flow_type);
void r64_set_tlv_request_transmission_policy_type_of_data_delivery_service(R64_REQUEST_TRANSMISSION_POLICY_TYPE_OF_DATA_DELIVERY_SERVICE_S * p_request_transmission_policy_type_of_data_delivery_service);
void r64_set_tlv_reduced_source_code(R64_REDUCED_SOURCE_CODE_S * p_reduced_source_code);
void r64_set_tlv_data_path_type(R64_DATA_PATH_TYPE_S * p_data_path_type);
void r64_set_tlv_data_path_id(R64_DATA_PATH_ID_S * p_data_path_id);
void r64_set_tlv_reservation_action(R64_RESERVATION_ACTION_S * p_reservation_action);
void r64_set_tlv_sa_id(R64_SA_ID_S * p_sa_id);
void r64_set_tlv_sa_index(R64_SA_INDEX_S * p_sa_index);
void r64_set_tlv_sa_type(R64_SA_TYPE_S * p_sa_type);
void r64_set_tlv_sa_service_type(R64_SA_SERVICE_TYPE_S * p_sa_service_type);
void r64_set_tlv_dl_phy_quality_info(R64_DL_PHY_QUALITY_INFO_S * p_dl_phy_quality_info);
void r64_set_tlv_ul_phy_quality_info(R64_UL_PHY_QUALITY_INFO_S * p_ul_phy_quality_info);
void r64_set_tlv_relative_delay(R64_RELATIVE_DELAY_S * p_relative_delay);
void r64_set_tlv_ho_id(R64_HO_ID_S * p_ho_id);
void r64_set_tlv_service_level_prediction(R64_SERVICE_LEVEL_PREDICTION_S * p_service_level_prediction);
void r64_set_tlv_ho_process_optimization(R64_HO_PROCESS_OPTIMIZATION_S * p_ho_process_optimization);
void r64_set_tlv_ho_authorization_policy_support(R64_HO_AUTHORIZATION_POLICY_SUPPORT_S * p_ho_authorization_policy_support);
void r64_set_tlv_data_path_establishment_option(R64_DATA_PATH_ESTABLISHMENT_OPTION_S * p_data_path_establishment_option);
void r64_set_tlv_ho_authorization_policy_indicator(R64_HO_AUTHORIZATION_POLICY_INDICATOR_S * p_ho_authorization_policy_indicator);
void r64_set_tlv_action_time(R64_ACTION_TIME_S * p_action_time);
void r64_set_tlv_resource_retain_type(R64_RESOURCE_RETAIN_TYPE_S * p_resource_retain_type);
void r64_set_tlv_resource_retain_time(R64_RESOURCE_RETAIN_TIME_S * p_resource_retain_time);
void r64_set_tlv_preamble_index_subchannel_index(R64_PREAMBLE_INDEX_SUBCHANNEL_INDEX_S * p_preamble_index_subchannel_index);
void r64_set_tlv_auth_result(R64_AUTH_RESULT_S * p_auth_result);
void r64_set_tlv_number_of_uplink_cids(R64_NUMBER_OF_UPLINK_CIDS_S * p_number_of_uplink_cids);
void r64_set_tlv_number_of_downlink_cids(R64_NUMBER_OF_DOWNLINK_CIDS_S * p_number_of_downlink_cids);
void r64_set_tlv_number_of_classifiers(R64_NUMBER_OF_CLASSIFIERS_S * p_number_of_classifiers);
void r64_set_tlv_auth_policy(R64_AUTH_POLICY_S * p_auth_policy);
void r64_set_tlv_pkmv2_message_code(R64_PKMV2_MESSAGE_CODE_S * p_pkmv2_message_code);
void r64_set_tlv_reservation_result(R64_RESERVATION_RESULT_S * p_reservation_result);
void r64_set_tlv_sf_direction(R64_SF_DIRECTION_S * p_sf_direction);
void r64_set_tlv_correlation_id(R64_CORRELATION_ID_S * p_correlation_id);
void r64_set_tlv_target_serving_indicator(R64_TARGET_SERVING_INDICATOR_S * p_target_serving_indicator);
void r64_set_tlv_phsi(R64_PHSI_S * p_phsi);
void r64_set_tlv_phsm(R64_PHSM_S * p_phsm);
void r64_set_tlv_phss(R64_PHSS_S * p_phss);
void r64_set_tlv_phsf(R64_PHSF_S * p_phsf);
void r64_set_tlv_phsv(R64_PHSV_S * p_phsv);
void r64_set_tlv_phs_rule_action(R64_PHS_RULE_ACTION_S * p_phs_rule_action);
void r64_set_tlv_paging_cycle(R64_PAGING_CYCLE_S * p_paging_cycle);
void r64_set_tlv_paging_offset(R64_PAGING_OFFSET_S * p_paging_offset);
void r64_set_tlv_paging_group_id(R64_PAGING_GROUP_ID_S * p_paging_group_id);
void r64_set_tlv_paging_action(R64_PAGING_ACTION_S * p_paging_action);
void r64_set_tlv_paging_cause(R64_PAGING_CAUSE_S * p_paging_cause);
void r64_set_tlv_powerdown_indicator(R64_POWERDOWN_INDICATOR_S * p_powerdown_indicator);
void r64_set_tlv_anchor_pc_id(R64_ANCHOR_PC_ID_S * p_anchor_pc_id);
void r64_set_tlv_lu_status(R64_LU_STATUS_S * p_lu_status);
void r64_set_tlv_lu_indicator(R64_LU_INDICATOR_S * p_lu_indicator);
void r64_set_tlv_idle_mode_retain_info(R64_IDLE_MODE_RETAIN_INFO_S * p_idle_mode_retain_info);
void r64_set_tlv_paging_cycle_request(R64_PAGING_CYCLE_REQUEST_S * p_paging_cycle_request);
void r64_set_tlv_idle_mode_timer(R64_IDLE_MODE_TIMER_S * p_idle_mode_timer);
void r64_set_tlv_paging_controller_id(R64_PAGING_CONTROLLER_ID_S * p_paging_controller_id);
void r64_set_tlv_im_event_code(R64_IM_EVENT_CODE_S * p_im_event_code);
void r64_set_tlv_authentication_indicator(R64_AUTHENTICATION_INDICATOR_S * p_authentication_indicator);
void r64_set_tlv_ho_type(R64_HO_TYPE_S * p_ho_type);
void r64_set_tlv_pre_reg_result_code(R64_PRE_REG_RESULT_CODE_S * p_pre_reg_result_code);
void r64_set_tlv_ho_indication_type(R64_HO_INDICATION_TYPE_S * p_ho_indication_type);
void r64_set_tlv_sbc_context(R64_SBC_CONTEXT_S * p_sbc_context);
void r64_set_tlv_reg_context(R64_REG_CONTEXT_S * p_reg_context);
void r64_set_tlv_pkm_context(R64_PKM_CONTEXT_S * p_pkm_context);
void r64_set_tlv_tek_context(R64_TEK_CONTEXT_S * p_tek_context);
void r64_set_tlv_ak_context(R64_AK_CONTEXT_S * p_ak_context);
void r64_set_tlv_sa_descriptor(R64_SA_DESCRIPTOR_S * p_sa_descriptor);
void r64_set_tlv_rule_index(R64_RULE_INDEX_S * p_rule_index);
void r64_set_tlv_packet_classification_rule(R64_PACKET_CLASSIFICATION_RULE_S * p_packet_classification_rule);
void r64_set_tlv_phs_context(R64_PHS_CONTEXT_S * p_phs_context);
void r64_set_tlv_data_path_info(R64_DATA_PATH_INFO_S * p_data_path_info);
void r64_set_tlv_paging_info(R64_PAGING_INFO_S * p_paging_info);
void r64_set_tlv_be_data_delivery_service(R64_BE_DATA_DELIVERY_SERVICE_S * p_be_data_delivery_service);
void r64_set_tlv_ugs_delivery_service(R64_UGS_DELIVERY_SERVICE_S * p_ugs_delivery_service);
void r64_set_tlv_ertvr_delivery_service(R64_ERTVR_DELIVERY_SERVICE_S * p_ertvr_delivery_service);
void r64_set_tlv_qos_info_resource_descriptor(R64_QOS_INFO_RESOURCE_DESCRIPTOR_S * p_qos_info_resource_descriptor);
void r64_set_tlv_tos_id(R64_TOS_ID_S * p_tos_id);
void r64_set_tlv_sf_info(R64_SF_INFO_S * p_sf_info);
void r64_set_tlv_ms_info(R64_MS_INFO_S * p_ms_info);
void r64_set_tlv_bs_info(R64_BS_INFO_S * p_bs_info);
void r64_set_tlv_auth_complete(R64_AUTH_COMPLETE_S * p_auth_complete);
void r64_set_tlv_ho_operation_mode(R64_HO_OPERATION_MODE_S * p_ho_operation_mode);
void r64_set_tlv_init_paging_rsp_code(R64_INIT_PAGING_RSP_CODE_S * p_init_paging_rsp_code);
void r64_set_tlv_acct_info(R64_ACCT_INFO_S * p_acct_info);
/* print ie type declare */
void r64_set_header(R64_MSG_S * p_r64_msg);
char *gp_message_type_str[R64_MAX_FUNCTION_TYPE][R64_MAX_MSG_TYPE];
extern char *gp_function_type_str[R64_MAX_FUNCTION_TYPE];
#define R64_MAX_STRING_LEN 256
/* print macro */
#define R64_SET_TLV(a, b, c, d, e) \
{\
a = 1; \
b(c);\
}
#define R64_SET_TLVS_HEAD(t, a) \
{ \
}
#define R64_SET_BASIC_BYTE(a, value) \
{ \
a = value;\
return;\
}
#define R64_SET_BASIC_WORD(a, value) \
{ \
a = value;\
return;\
}
#define R64_SET_BASIC_DWORD(a, value) \
{ \
a = value;\
return;\
}
#define R64_SET_BASIC_BYTE_ARRAY(a, value, length) \
{\
memcpy(a, value, length); \
return;\
}
#define R64_SET_BASIC_WORD_ARRAY(a, value, length) \
{\
int i; \
for (i=0; i<length; i++) \
{ \
a[i] = value[i]; \
} \
return;\
}
#define R64_SET_BASIC_DWORD_ARRAY(a, value, length) \
{ \
int i; \
for (i=0; i<length; i++) \
{ \
a[i] = value[i]; \
} \
return;\
}
/*******************************************************************************
** Function Name: r64_set_msg
** Input parameters description:
a - p_r64_msg, pointer to the msg to set
** Output results description:
a - none
** function description:
set r64 msg
*******************************************************************************/
void r64_set_msg(R64_MSG_S * p_r64_msg)
{
if ((p_r64_msg->msgHead.functionType == 0)
|| (p_r64_msg->msgHead.functionType > R64_MAX_FUNCTION_TYPE))
{
printf("Function Type %d error, >%d or = 0\n",
p_r64_msg->msgHead.functionType, R64_MAX_FUNCTION_TYPE);
return;
}
if ((p_r64_msg->msgHead.messageType == 0)
|| (p_r64_msg->msgHead.messageType > R64_MAX_MSG_TYPE))
{
printf("Message Type %d error, >%d or = 0\n",
p_r64_msg->msgHead.messageType, R64_MAX_MSG_TYPE);
return;
}
r64_set_header(p_r64_msg);
switch(p_r64_msg->msgHead.functionType)
{
case R64_FUNCTION_TYPE_QOS:
r64_set_ft_qos(p_r64_msg);
break;
case R64_FUNCTION_TYPE_HANDOFF:
r64_set_ft_handoff(p_r64_msg);
break;
case R64_FUNCTION_TYPE_DATA_PATH:
r64_set_ft_data_path(p_r64_msg);
break;
case R64_FUNCTION_TYPE_CONTEXT:
r64_set_ft_context(p_r64_msg);
break;
case R64_FUNCTION_TYPE_R3_MOBILITY:
r64_set_ft_r3_mobility(p_r64_msg);
break;
case R64_FUNCTION_TYPE_PAGING:
r64_set_ft_paging(p_r64_msg);
break;
case R64_FUNCTION_TYPE_RRM:
r64_set_ft_rrm(p_r64_msg);
break;
case R64_FUNCTION_TYPE_AUTH_RELAY:
r64_set_ft_auth_relay(p_r64_msg);
break;
case R64_FUNCTION_TYPE_MS_STATE_CHANGE:
r64_set_ft_ms_state_change(p_r64_msg);
break;
case R64_FUNCTION_TYPE_ACCT_INFO:
r64_set_ft_acct_info(p_r64_msg);
break;
default:
printf("Unknown function type %d\n", p_r64_msg->msgHead.functionType);
break;
}
return;
}
/*******************************************************************************
** Function Name: r64_set_header
** Input parameters description:
a - p_r64_msg, pointer to the msg to set
** Output results description:
a - none
** function description:
set r64 msg header
*******************************************************************************/
void r64_set_header(R64_MSG_S * p_r64_msg)
{
if (IF_TYPE_R4 == p_r64_msg->msgHead.ifType)
{
printf("R4, Function type %s, message type %s\n",
gp_function_type_str[p_r64_msg->msgHead.functionType-1],
gp_message_type_str[p_r64_msg->msgHead.functionType-1][p_r64_msg->msgHead.messageType-1]);
}
else
{
printf("R6, Function type %s, message type %s\n",
gp_function_type_str[p_r64_msg->msgHead.functionType-1],
gp_message_type_str[p_r64_msg->msgHead.functionType-1][p_r64_msg->msgHead.messageType-1]);
}
/*
p_r64_msg->msgHead.functionType = R64_FUNCTION_TYPE_HANDOFF;
p_r64_msg->msgHead.messageType = R64_ID_HANDOFF_REQUEST;
p_r64_msg->msgHead.ifType = 1;
*/
p_r64_msg->msgHead.version = 1;
p_r64_msg->msgHead.flags = 2;
p_r64_msg->msgHead.length = 0;
p_r64_msg->msgHead.msId.id[0] = 0xa0;
p_r64_msg->msgHead.msId.id[1] = 0xa1;
p_r64_msg->msgHead.msId.id[2] = 0xa2;
p_r64_msg->msgHead.msId.id[3] = 0xa3;
p_r64_msg->msgHead.msId.id[4] = 0xa4;
p_r64_msg->msgHead.msId.id[5] = 0xa5;
p_r64_msg->msgHead.transId = 0x0007;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -