From 861ada7227e65f50b55e9c93e3c8fee73de4542d Mon Sep 17 00:00:00 2001 From: Anders Broman Date: Sat, 27 Mar 2010 15:23:16 +0000 Subject: From Chuck Kristofek: DIS update to introduce hf_ based filtering and radio family dissection. https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=4610 svn path=/trunk/; revision=32306 --- epan/dissectors/packet-dis-fields.h | 131 ++++++++++++++++++++++++++++++++++-- 1 file changed, 126 insertions(+), 5 deletions(-) (limited to 'epan/dissectors/packet-dis-fields.h') diff --git a/epan/dissectors/packet-dis-fields.h b/epan/dissectors/packet-dis-fields.h index 4c01288e46..e97ade8ab3 100644 --- a/epan/dissectors/packet-dis-fields.h +++ b/epan/dissectors/packet-dis-fields.h @@ -29,6 +29,64 @@ #include +extern int hf_dis_proto_ver; +extern int hf_dis_exercise_id; +extern int hf_dis_pdu_type; +extern int hf_dis_proto_fam; +extern int hf_dis_pdu_length; +extern int hf_dis_entity_id_site; +extern int hf_dis_entity_id_application; +extern int hf_dis_entity_id_entity; +extern int hf_dis_num_art_params; +extern int hf_dis_radio_id; +extern int hf_dis_ens; +extern int hf_dis_ens_class; +extern int hf_dis_ens_type; +extern int hf_dis_tdl_type; +extern int hf_dis_sample_rate; +extern int hf_dis_data_length; +extern int hf_dis_num_of_samples; +extern int hf_dis_signal_data; +extern int hf_dis_radio_category; +extern int hf_dis_nomenclature_version; +extern int hf_dis_nomenclature; +extern int hf_dis_radio_transmit_state; +extern int hf_dis_radio_input_source; +extern int hf_dis_antenna_pattern_type; +extern int hf_dis_antenna_pattern_length; +extern int hf_dis_transmit_frequency; +extern int hf_dis_spread_spectrum_usage; +extern int hf_dis_frequency_hopping; +extern int hf_dis_pseudo_noise_modulation; +extern int hf_dis_time_hopping; +extern int hf_dis_modulation_major; +extern int hf_dis_modulation_system; +extern int hf_dis_crypto_system; +extern int hf_dis_crypto_key; +extern int hf_dis_encryption_mode; +extern int hf_dis_key_identifier; +extern int hf_dis_modulation_parameter_length; +extern int hf_dis_mod_param_fh_net_id; +extern int hf_dis_mod_param_fh_set_id; +extern int hf_dis_mod_param_fh_lo_set_id; +extern int hf_dis_mod_param_fh_msg_start; +extern int hf_dis_mod_param_fh_reserved; +extern int hf_dis_mod_param_fh_sync_time_offset; +extern int hf_dis_mod_param_fh_security_key; +extern int hf_dis_mod_param_fh_clear_channel; +extern int hf_dis_mod_param_dump; +extern int hf_dis_mod_param_ts_allocation_mode; +extern int hf_dis_mod_param_transmitter_prim_mode; +extern int hf_dis_mod_param_transmitter_second_mode; +extern int hf_dis_mod_param_sync_state; +extern int hf_dis_mod_param_network_sync_id; +extern int hf_dis_antenna_pattern_parameter_dump; + +extern int ett_dis_ens; +extern int ett_dis_crypto_key; + + + /* enumeration of all field types used for DIS parsing. */ typedef enum { @@ -50,6 +108,7 @@ typedef enum /* padding */ DIS_FIELDTYPE_PAD8, DIS_FIELDTYPE_PAD16, + DIS_FIELDTYPE_PAD24, DIS_FIELDTYPE_PAD32, /* enumerations */ @@ -74,8 +133,25 @@ typedef enum DIS_FIELDTYPE_REQUEST_STATUS, DIS_FIELDTYPE_REQUIRED_RELIABILITY_SERVICE, DIS_FIELDTYPE_RESPONSE_FLAG, - + DIS_FIELDTYPE_TDL_TYPE, + DIS_FIELDTYPE_RADIO_CATEGORY, + DIS_FIELDTYPE_NOMENCLATURE_VERSION, + DIS_FIELDTYPE_NOMENCLATURE, + DIS_FIELDTYPE_RADIO_TRANSMIT_STATE, + DIS_FIELDTYPE_RADIO_INPUT_SOURCE, + DIS_FIELDTYPE_ANTENNA_PATTERN_TYPE, + DIS_FIELDTYPE_SPREAD_SPECTRUM, + DIS_FIELDTYPE_MODULATION_MAJOR, + DIS_FIELDTYPE_MODULATION_DETAIL, + DIS_FIELDTYPE_MODULATION_SYSTEM, + DIS_FIELDTYPE_CRYPTO_SYSTEM, + /* other atomic types */ + DIS_FIELDTYPE_PDU_LENGTH, + DIS_FIELDTYPE_EXERCISE_ID, + DIS_FIELDTYPE_SITE, + DIS_FIELDTYPE_APPLICATION, + DIS_FIELDTYPE_ENTITY, DIS_FIELDTYPE_APPEARANCE, DIS_FIELDTYPE_ARTIC_PARAM_TYPE, DIS_FIELDTYPE_CAPABILITIES, @@ -99,12 +175,34 @@ typedef enum DIS_FIELDTYPE_TIME_INTERVAL, DIS_FIELDTYPE_TIMESTAMP, DIS_FIELDTYPE_WARHEAD, + DIS_FIELDTYPE_RADIO_ID, + DIS_FIELDTYPE_SAMPLE_RATE, + DIS_FIELDTYPE_DATA_LENGTH, + DIS_FIELDTYPE_NUMBER_OF_SAMPLES, + DIS_FIELDTYPE_NUM_ARTICULATION_PARAMS, + DIS_FIELDTYPE_ANTENNA_PATTERN_LENGTH, + DIS_FIELDTYPE_TRANSMIT_FREQUENCY, + DIS_FIELDTYPE_MODULATION_PARAMETER_LENGTH, + DIS_FIELDTYPE_FH_NETWORK_ID, + DIS_FIELDTYPE_FH_SET_ID, + DIS_FIELDTYPE_LO_SET_ID, + DIS_FIELDTYPE_FH_MSG_START, + DIS_FIELDTYPE_RESERVED, + DIS_FIELDTYPE_FH_SYNC_TIME_OFFSET, + DIS_FIELDTYPE_FH_SECURITY_KEY, + DIS_FIELDTYPE_FH_CLEAR_CHANNEL, + DIS_FIELDTYPE_TS_ALLOCATION_MODE, + DIS_FIELDTYPE_TRANSMITTER_PRIMARY_MODE, + DIS_FIELDTYPE_TRANSMITTER_SECONDARY_MODE, + DIS_FIELDTYPE_JTIDS_SYNC_STATE, + DIS_FIELDTYPE_NETWORK_SYNC_ID, - /* composite types */ + /* composite types */ DIS_FIELDTYPE_BURST_DESCRIPTOR, DIS_FIELDTYPE_CLOCK_TIME, DIS_FIELDTYPE_ENTITY_ID, DIS_FIELDTYPE_ENTITY_TYPE, + DIS_FIELDTYPE_RADIO_ENTITY_TYPE, DIS_FIELDTYPE_EVENT_ID, DIS_FIELDTYPE_LINEAR_VELOCITY, DIS_FIELDTYPE_LOCATION_ENTITY, @@ -114,14 +212,24 @@ typedef enum DIS_FIELDTYPE_VARIABLE_DATUM_VALUE, DIS_FIELDTYPE_VECTOR_32, DIS_FIELDTYPE_VECTOR_64, - + DIS_FIELDTYPE_ENCODING_SCHEME, + DIS_FIELDTYPE_ANTENNA_LOCATION, + DIS_FIELDTYPE_REL_ANTENNA_LOCATON, + DIS_FIELDTYPE_MODULATION_TYPE, + DIS_FIELDTYPE_CRYPTO_KEY_ID, + DIS_FIELDTYPE_MODULATION_PARAMETERS, + DIS_FIELDTYPE_ANTENNA_PATTERN_PARAMETERS, + DIS_FIELDTYPE_MOD_PARAMS_CCTT_SINCGARS, + DIS_FIELDTYPE_MOD_PARAMS_JTIDS_MIDS, + /* arrays */ DIS_FIELDTYPE_FIXED_DATUMS, DIS_FIELDTYPE_FIXED_DATUM_IDS, DIS_FIELDTYPE_VARIABLE_DATUMS, DIS_FIELDTYPE_VARIABLE_DATUM_IDS, DIS_FIELDTYPE_VARIABLE_PARAMETERS, - DIS_FIELDTYPE_VARIABLE_RECORDS + DIS_FIELDTYPE_VARIABLE_RECORDS, + DIS_FIELDTYPE_RADIO_DATA } DIS_FieldType; @@ -165,11 +273,15 @@ extern DIS_ParserNode DIS_FIELDS_BURST_DESCRIPTOR[]; extern DIS_ParserNode DIS_FIELDS_CLOCK_TIME[]; extern DIS_ParserNode DIS_FIELDS_ENTITY_ID[]; extern DIS_ParserNode DIS_FIELDS_ENTITY_TYPE[]; +extern DIS_ParserNode DIS_FIELDS_RADIO_ENTITY_TYPE[]; +extern DIS_ParserNode DIS_FIELDS_MODULATION_TYPE[]; extern DIS_ParserNode DIS_FIELDS_EVENT_ID[]; extern DIS_ParserNode DIS_FIELDS_ORIENTATION[]; extern DIS_ParserNode DIS_FIELDS_SIMULATION_ADDRESS[]; extern DIS_ParserNode DIS_FIELDS_VECTOR_FLOAT_32[]; extern DIS_ParserNode DIS_FIELDS_VECTOR_FLOAT_64[]; +extern DIS_ParserNode DIS_FIELDS_MOD_PARAMS_CCTT_SINCGARS[]; +extern DIS_ParserNode DIS_FIELDS_MOD_PARAMS_JTIDS_MIDS[]; /* Array records */ extern DIS_ParserNode DIS_FIELDS_FIXED_DATUM[]; @@ -207,15 +319,24 @@ extern gint parseField_VariableParameter(tvbuff_t *tvb, proto_tree *tree, gint o extern gint parseField_VariableRecord(tvbuff_t *tvb, proto_tree *tree, gint offset); -extern guint32 protocolVersion; +extern guint32 disProtocolVersion; extern guint32 pduType; extern guint32 protocolFamily; extern guint32 persistentObjectPduType; extern guint32 entityKind; extern guint32 entityDomain; +extern guint32 radioID; +extern guint32 disRadioTransmitState; +extern guint32 encodingScheme; +extern guint32 numSamples; extern guint32 numFixed; extern guint32 numVariable; extern guint32 variableDatumLength; extern guint32 variableRecordLength; +extern guint32 majorModulation; +extern guint32 systemModulation; +extern guint32 modulationParamLength; +extern guint32 disAntennaPattern; + #endif /* packet-dis-fieldparsers.h */ -- cgit v1.2.3