summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcbontje <cbontje@gmail.com>2015-02-05 12:51:51 -0700
committerAlexis La Goutte <alexis.lagoutte@gmail.com>2015-02-05 22:08:17 +0000
commitb3e82690a6afd111786f73f74ffd38fe8741aea0 (patch)
treef6899dd364d1b380cf704ae55e5fc932c4921fb8
parent1fdc6f409fb6b8baa333d51a03a2d3c5a9b2ddb3 (diff)
downloadwireshark-b3e82690a6afd111786f73f74ffd38fe8741aea0.tar.gz
SEL Protocol Maintenance (2/2)
- Complete internal cleanup of 'fastser' -> 'fastmsg' syntax - Includes all variables, comments and filter values Change-Id: Ib58e470c9552387cb8c1d8c68fa1574cf7aa1691 Reviewed-on: https://code.wireshark.org/review/6974 Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com> Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com> Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
-rw-r--r--epan/dissectors/packet-selfm.c726
1 files changed, 363 insertions, 363 deletions
diff --git a/epan/dissectors/packet-selfm.c b/epan/dissectors/packet-selfm.c
index 17719975ba..ae4d4aa5da 100644
--- a/epan/dissectors/packet-selfm.c
+++ b/epan/dissectors/packet-selfm.c
@@ -147,65 +147,65 @@ static int hf_selfm_alt_fastop_len = -1;
static int hf_selfm_alt_fastop_code = -1;
static int hf_selfm_alt_fastop_valid = -1;
-static int hf_selfm_fastser_len = -1;
-static int hf_selfm_fastser_routing_addr = -1;
-static int hf_selfm_fastser_status = -1;
-static int hf_selfm_fastser_funccode = -1;
-static int hf_selfm_fastser_seq = -1;
-static int hf_selfm_fastser_seq_fir = -1;
-static int hf_selfm_fastser_seq_fin = -1;
-static int hf_selfm_fastser_seq_cnt = -1;
-static int hf_selfm_fastser_resp_num = -1;
-static int hf_selfm_fastser_crc16 = -1;
-static int hf_selfm_fastser_def_route_sup = -1;
-static int hf_selfm_fastser_def_rx_stat = -1;
-static int hf_selfm_fastser_def_tx_stat = -1;
-static int hf_selfm_fastser_def_rx_maxfr = -1;
-static int hf_selfm_fastser_def_tx_maxfr = -1;
-static int hf_selfm_fastser_def_rx_num_fc = -1;
-static int hf_selfm_fastser_def_rx_fc = -1;
-static int hf_selfm_fastser_def_tx_num_fc = -1;
-static int hf_selfm_fastser_def_tx_fc = -1;
-static int hf_selfm_fastser_uns_en_fc = -1;
-static int hf_selfm_fastser_uns_en_fc_data = -1;
-static int hf_selfm_fastser_uns_dis_fc = -1;
-static int hf_selfm_fastser_uns_dis_fc_data = -1;
-static int hf_selfm_fastser_baseaddr = -1;
-static int hf_selfm_fastser_numwords = -1;
-static int hf_selfm_fastser_flags = -1;
-static int hf_selfm_fastser_datafmt_resp_numitem = -1;
-static int hf_selfm_fastser_dataitem_qty = -1;
-static int hf_selfm_fastser_dataitem_type = -1;
-static int hf_selfm_fastser_dataitem_uint16 = -1;
-static int hf_selfm_fastser_dataitem_int16 = -1;
-static int hf_selfm_fastser_dataitem_uint32 = -1;
-static int hf_selfm_fastser_dataitem_int32 = -1;
-static int hf_selfm_fastser_dataitem_float = -1;
-static int hf_selfm_fastser_devdesc_num_region = -1;
-static int hf_selfm_fastser_devdesc_num_ctrl = -1;
-static int hf_selfm_fastser_unsresp_orig = -1;
-static int hf_selfm_fastser_unsresp_doy = -1;
-static int hf_selfm_fastser_unsresp_year = -1;
-static int hf_selfm_fastser_unsresp_todms = -1;
-static int hf_selfm_fastser_unsresp_num_elmt = -1;
-static int hf_selfm_fastser_unsresp_elmt_idx = -1;
-static int hf_selfm_fastser_unsresp_elmt_ts_ofs = -1;
-static int hf_selfm_fastser_unsresp_elmt_status = -1;
-static int hf_selfm_fastser_unsresp_eor = -1;
-static int hf_selfm_fastser_unsresp_elmt_statword = -1;
-static int hf_selfm_fastser_unswrite_addr1 = -1;
-static int hf_selfm_fastser_unswrite_addr2 = -1;
-static int hf_selfm_fastser_unswrite_num_reg = -1;
-static int hf_selfm_fastser_unswrite_reg_val = -1;
-static int hf_selfm_fastser_soe_req_orig = -1;
-static int hf_selfm_fastser_soe_resp_numblks = -1;
-static int hf_selfm_fastser_soe_resp_orig = -1;
-static int hf_selfm_fastser_soe_resp_numbits = -1;
-static int hf_selfm_fastser_soe_resp_pad = -1;
-static int hf_selfm_fastser_soe_resp_doy = -1;
-static int hf_selfm_fastser_soe_resp_year = -1;
-static int hf_selfm_fastser_soe_resp_tod = -1;
-/* static int hf_selfm_fastser_soe_resp_data = -1; */
+static int hf_selfm_fastmsg_len = -1;
+static int hf_selfm_fastmsg_routing_addr = -1;
+static int hf_selfm_fastmsg_status = -1;
+static int hf_selfm_fastmsg_funccode = -1;
+static int hf_selfm_fastmsg_seq = -1;
+static int hf_selfm_fastmsg_seq_fir = -1;
+static int hf_selfm_fastmsg_seq_fin = -1;
+static int hf_selfm_fastmsg_seq_cnt = -1;
+static int hf_selfm_fastmsg_resp_num = -1;
+static int hf_selfm_fastmsg_crc16 = -1;
+static int hf_selfm_fastmsg_def_route_sup = -1;
+static int hf_selfm_fastmsg_def_rx_stat = -1;
+static int hf_selfm_fastmsg_def_tx_stat = -1;
+static int hf_selfm_fastmsg_def_rx_maxfr = -1;
+static int hf_selfm_fastmsg_def_tx_maxfr = -1;
+static int hf_selfm_fastmsg_def_rx_num_fc = -1;
+static int hf_selfm_fastmsg_def_rx_fc = -1;
+static int hf_selfm_fastmsg_def_tx_num_fc = -1;
+static int hf_selfm_fastmsg_def_tx_fc = -1;
+static int hf_selfm_fastmsg_uns_en_fc = -1;
+static int hf_selfm_fastmsg_uns_en_fc_data = -1;
+static int hf_selfm_fastmsg_uns_dis_fc = -1;
+static int hf_selfm_fastmsg_uns_dis_fc_data = -1;
+static int hf_selfm_fastmsg_baseaddr = -1;
+static int hf_selfm_fastmsg_numwords = -1;
+static int hf_selfm_fastmsg_flags = -1;
+static int hf_selfm_fastmsg_datafmt_resp_numitem = -1;
+static int hf_selfm_fastmsg_dataitem_qty = -1;
+static int hf_selfm_fastmsg_dataitem_type = -1;
+static int hf_selfm_fastmsg_dataitem_uint16 = -1;
+static int hf_selfm_fastmsg_dataitem_int16 = -1;
+static int hf_selfm_fastmsg_dataitem_uint32 = -1;
+static int hf_selfm_fastmsg_dataitem_int32 = -1;
+static int hf_selfm_fastmsg_dataitem_float = -1;
+static int hf_selfm_fastmsg_devdesc_num_region = -1;
+static int hf_selfm_fastmsg_devdesc_num_ctrl = -1;
+static int hf_selfm_fastmsg_unsresp_orig = -1;
+static int hf_selfm_fastmsg_unsresp_doy = -1;
+static int hf_selfm_fastmsg_unsresp_year = -1;
+static int hf_selfm_fastmsg_unsresp_todms = -1;
+static int hf_selfm_fastmsg_unsresp_num_elmt = -1;
+static int hf_selfm_fastmsg_unsresp_elmt_idx = -1;
+static int hf_selfm_fastmsg_unsresp_elmt_ts_ofs = -1;
+static int hf_selfm_fastmsg_unsresp_elmt_status = -1;
+static int hf_selfm_fastmsg_unsresp_eor = -1;
+static int hf_selfm_fastmsg_unsresp_elmt_statword = -1;
+static int hf_selfm_fastmsg_unswrite_addr1 = -1;
+static int hf_selfm_fastmsg_unswrite_addr2 = -1;
+static int hf_selfm_fastmsg_unswrite_num_reg = -1;
+static int hf_selfm_fastmsg_unswrite_reg_val = -1;
+static int hf_selfm_fastmsg_soe_req_orig = -1;
+static int hf_selfm_fastmsg_soe_resp_numblks = -1;
+static int hf_selfm_fastmsg_soe_resp_orig = -1;
+static int hf_selfm_fastmsg_soe_resp_numbits = -1;
+static int hf_selfm_fastmsg_soe_resp_pad = -1;
+static int hf_selfm_fastmsg_soe_resp_doy = -1;
+static int hf_selfm_fastmsg_soe_resp_year = -1;
+static int hf_selfm_fastmsg_soe_resp_tod = -1;
+/* static int hf_selfm_fastmsg_soe_resp_data = -1; */
/* Initialize the subtree pointers */
@@ -226,13 +226,13 @@ static gint ett_selfm_fmdata_ai = -1;
static gint ett_selfm_fmdata_dig = -1;
static gint ett_selfm_fmdata_ai_ch = -1;
static gint ett_selfm_fmdata_dig_ch = -1;
-static gint ett_selfm_fastser = -1;
-static gint ett_selfm_fastser_seq = -1;
-static gint ett_selfm_fastser_def_fc = -1;
-static gint ett_selfm_fastser_datareg = -1;
-static gint ett_selfm_fastser_tag = -1;
-static gint ett_selfm_fastser_element_list = -1;
-static gint ett_selfm_fastser_element = -1;
+static gint ett_selfm_fastmsg = -1;
+static gint ett_selfm_fastmsg_seq = -1;
+static gint ett_selfm_fastmsg_def_fc = -1;
+static gint ett_selfm_fastmsg_datareg = -1;
+static gint ett_selfm_fastmsg_tag = -1;
+static gint ett_selfm_fastmsg_element_list = -1;
+static gint ett_selfm_fastmsg_element = -1;
/* Expert fields */
static expert_field ei_selfm_crc16_incorrect = EI_INIT;
@@ -277,7 +277,7 @@ static expert_field ei_selfm_crc16_incorrect = EI_INIT;
#define FM_CONFIG_ANA_SFTYPE_NONE 0xFF
-/* Fast SER Function Codes, "response" or "ACK" messages are the same as the request, but have the MSB set */
+/* Fast Message Function Codes, "response" or "ACK" messages are the same as the request, but have the MSB set */
#define FAST_MSG_CFG_BLOCK 0x00
#define FAST_MSG_EN_UNS_DATA 0x01
#define FAST_MSG_DIS_UNS_DATA 0x02
@@ -305,12 +305,12 @@ static expert_field ei_selfm_crc16_incorrect = EI_INIT;
#define FAST_MSG_BITLABEL_RESP 0xB3
-/* Fast SER Sequence Byte Masks */
+/* Fast Message Sequence Byte Masks */
#define FAST_MSG_SEQ_FIR 0x80
#define FAST_MSG_SEQ_FIN 0x40
#define FAST_MSG_SEQ_CNT 0x3f
-/* Fast SER Tag Data Types */
+/* Fast Message Tag Data Types */
#define FAST_MSG_TAGTYPE_CHAR8 0x0011 /* 1 x 8-bit character per item */
#define FAST_MSG_TAGTYPE_CHAR16 0x0012 /* 2 x 8-bit characters per item */
#define FAST_MSG_TAGTYPE_DIGWORD8_BL 0x0021 /* 8-bit binary item, with labels */
@@ -376,16 +376,16 @@ typedef struct {
gchar name[10+1]; /* Name of Data Item, 10 chars, null-terminated */
guint16 quantity; /* Quantity of values within Data Item */
guint16 data_type; /* Data Item Type, Char, Int, FP, etc */
-} fastser_dataitem;
+} fastmsg_dataitem;
/**************************************************************************************/
/* Fast Message Data Region struct */
/**************************************************************************************/
-/* Holds Configuration Information required to decode a Fast Message Data Region */
+/* Holds Configuration Information required to decode a Fast Message Data Region */
/* Each data region format is returned as a sequential list of tags, w/o reference to */
typedef struct {
gchar name[10+1]; /* Name of Data Region, 10 chars, null-terminated */
-} fastser_dataregion;
+} fastmsg_dataregion;
/**************************************************************************************/
/* Fast Unsolicited SER Index Lookup */
@@ -402,8 +402,8 @@ typedef struct {
/**************************************************************************************/
typedef struct {
wmem_list_t *fm_config_frames; /* List contains a fm_config_data struct for each Fast Meter configuration frame */
- wmem_list_t *fastser_dataitems; /* List contains a fastser_dataitem struct for each Fast SER Data Item */
- wmem_tree_t *fastser_dataregions; /* Tree contains a fastser_dataregion struct for each Fast SER Data Region */
+ wmem_list_t *fastmsg_dataitems; /* List contains a fastmsg_dataitem struct for each Fast Message Data Item */
+ wmem_tree_t *fastmsg_dataregions; /* Tree contains a fastmsg_dataregion struct for each Fast Message Data Region */
wmem_tree_t *fastser_uns_wordbits; /* Tree contains a fastser_uns_wordbit struct for each comma-separated entry in the 'SER List' User Preference */
} fm_conversation;
@@ -445,9 +445,9 @@ static const value_string selfm_relaydef_proto_vals[] = {
{ 0x0008, "IEC 61850" },
{ 0x0100, "SEL Fast Meter w/ Fast Operate" },
{ 0x0101, "SEL Limited Multidrop (LMD) w/ Fast Operate" },
- { 0x0200, "SEL Fast Meter w/ Fast SER" },
- { 0x0300, "SEL Fast Meter w/ Fast Operate and Fast SER" },
- { 0x0301, "SEL Limited Multidrop (LMD) w/ Fast Operate and Fast SER" },
+ { 0x0200, "SEL Fast Meter w/ Fast Message" },
+ { 0x0300, "SEL Fast Meter w/ Fast Operate and Fast Message" },
+ { 0x0301, "SEL Limited Multidrop (LMD) w/ Fast Operate and Fast Message" },
{ 0, NULL }
};
static value_string_ext selfm_relaydef_proto_vals_ext = VALUE_STRING_EXT_INIT(selfm_relaydef_proto_vals);
@@ -696,8 +696,8 @@ static const value_string selfm_foconfig_alt_funccode_vals[] = {
{ 0, NULL }
};
-/* Fast SER Message Function Codes */
-static const value_string selfm_fastser_func_code_vals[] = {
+/* Fast Message Function Codes */
+static const value_string selfm_fastmsg_func_code_vals[] = {
{ FAST_MSG_CFG_BLOCK, "Fast Message Configuration Block Request" },
{ FAST_MSG_EN_UNS_DATA, "Enable Unsolicited Data" },
{ FAST_MSG_DIS_UNS_DATA, "Disable Unsolicited Data" },
@@ -725,10 +725,10 @@ static const value_string selfm_fastser_func_code_vals[] = {
{ FAST_MSG_BITLABEL_RESP, "Bit Label Response" },
{ 0, NULL }
};
-static value_string_ext selfm_fastser_func_code_vals_ext =
- VALUE_STRING_EXT_INIT(selfm_fastser_func_code_vals);
+static value_string_ext selfm_fastmsg_func_code_vals_ext =
+ VALUE_STRING_EXT_INIT(selfm_fastmsg_func_code_vals);
-static const value_string selfm_fastser_tagtype_vals[] = {
+static const value_string selfm_fastmsg_tagtype_vals[] = {
{ FAST_MSG_TAGTYPE_CHAR8, "1 x 8-bit character per item" },
{ FAST_MSG_TAGTYPE_CHAR16, "2 x 8-bit characters per item" },
{ FAST_MSG_TAGTYPE_DIGWORD8_BL, "8-bit binary item, with labels" },
@@ -745,7 +745,7 @@ static const value_string selfm_fastser_tagtype_vals[] = {
/* Fast Message Unsolicited Write COM Port Codes */
-static const value_string selfm_fastser_unswrite_com_vals[] = {
+static const value_string selfm_fastmsg_unswrite_com_vals[] = {
{ 0x0100, "COM01" },
{ 0x0200, "COM02" },
{ 0x0300, "COM03" },
@@ -763,8 +763,8 @@ static const value_string selfm_fastser_unswrite_com_vals[] = {
{ 0x0F00, "COM15" },
{ 0, NULL }
};
-static value_string_ext selfm_fastser_unswrite_com_vals_ext =
- VALUE_STRING_EXT_INIT(selfm_fastser_unswrite_com_vals);
+static value_string_ext selfm_fastmsg_unswrite_com_vals_ext =
+ VALUE_STRING_EXT_INIT(selfm_fastmsg_unswrite_com_vals);
/* Tables for reassembly of fragments. */
static reassembly_table selfm_reassembly_table;
@@ -910,14 +910,14 @@ static fm_config_frame* fmconfig_frame_fast(tvbuff_t *tvb)
/******************************************************************************************************/
/* Execute dissection of Data Item definition info before loading GUI tree */
-/* Load configuration information into fastser_dataitem struct */
+/* Load configuration information into fastmsg_dataitem struct */
/******************************************************************************************************/
-static fastser_dataitem* fastser_dataitem_save(tvbuff_t *tvb, int offset)
+static fastmsg_dataitem* fastmsg_dataitem_save(tvbuff_t *tvb, int offset)
{
- fastser_dataitem *dataitem;
+ fastmsg_dataitem *dataitem;
/* get a new dataitem and initialize it */
- dataitem = wmem_new(wmem_file_scope(), fastser_dataitem);
+ dataitem = wmem_new(wmem_file_scope(), fastmsg_dataitem);
/* retrieve data item name and terminate with a null */
tvb_memcpy(tvb, dataitem->name, offset, 10);
@@ -933,14 +933,14 @@ static fastser_dataitem* fastser_dataitem_save(tvbuff_t *tvb, int offset)
/******************************************************************************************************/
/* Execute dissection of Data Region definition info before loading GUI tree */
-/* Load configuration information into fastser_dataregion struct */
+/* Load configuration information into fastmsg_dataregion struct */
/******************************************************************************************************/
-static fastser_dataregion* fastser_dataregion_save(tvbuff_t *tvb, int offset)
+static fastmsg_dataregion* fastmsg_dataregion_save(tvbuff_t *tvb, int offset)
{
- fastser_dataregion *dataregion;
+ fastmsg_dataregion *dataregion;
/* get a new dataregion and initialize it */
- dataregion = wmem_new(wmem_file_scope(), fastser_dataregion);
+ dataregion = wmem_new(wmem_file_scope(), fastmsg_dataregion);
/* retrieve data region name and terminate with a null */
tvb_memcpy(tvb, dataregion->name, offset, 10);
@@ -957,11 +957,11 @@ static const gchar*
region_lookup(packet_info *pinfo, guint32 base_addr)
{
fm_conversation *conv;
- fastser_dataregion *dataregion = NULL;
+ fastmsg_dataregion *dataregion = NULL;
conv = (fm_conversation *)p_get_proto_data(wmem_file_scope(), pinfo, proto_selfm, 0);
if (conv) {
- dataregion = (fastser_dataregion*)wmem_tree_lookup32(conv->fastser_dataregions, base_addr);
+ dataregion = (fastmsg_dataregion*)wmem_tree_lookup32(conv->fastmsg_dataregions, base_addr);
}
if (dataregion) {
@@ -1636,21 +1636,21 @@ dissect_alt_fastop_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, in
}
-/**************************************************************************************************************************/
-/* Code to dissect Fast SER Read Response Messages */
-/**************************************************************************************************************************/
-/* Each Read Response frame can have a maximum data size of 117 x 16-bit words (or 234 bytes) - this is due to the 20 */
-/* the 20 bytes of overhead and 254 max frame size. In the event of a larger data payload than 234 bytes, the FIR and FIN */
-/* bits will be used to indicate either the first frame, last frame, or a neither/middle frame. */
-/* We can use the FIN bit to attempt a reassembly of the data payload since all messages will arrive sequentially. */
-/**************************************************************************************************************************/
+/************************************************************************************************************************/
+/* Code to dissect Fast Message Read Response Messages */
+/************************************************************************************************************************/
+/* Each Read Response frame can have a maximum data size of 117 x 16-bit words (or 234 bytes) - this is due to the 20 */
+/* bytes of overhead and 254 max frame size. In the event of a larger data payload than 234 bytes, the FIR and FIN */
+/* bits will be used to indicate either the first frame, last frame, or a neither/middle frame. */
+/* We can use the FIN bit to attempt a reassembly of the data payload since all messages will arrive sequentially. */
+/************************************************************************************************************************/
static int
-dissect_fastser_readresp_frame(tvbuff_t *tvb, proto_tree *fastser_tree, packet_info *pinfo, int offset, guint8 seq_byte)
+dissect_fastmsg_readresp_frame(tvbuff_t *tvb, proto_tree *fastmsg_tree, packet_info *pinfo, int offset, guint8 seq_byte)
{
- proto_item *fastser_tag_value_item=NULL, *fmdata_dig_item=NULL;
+ proto_item *fastmsg_tag_value_item=NULL, *fmdata_dig_item=NULL;
proto_item *pi_baseaddr=NULL, *pi_fnum=NULL, *pi_type=NULL, *pi_qty=NULL;
- proto_tree *fastser_tag_tree=NULL, *fmdata_dig_tree=NULL;
+ proto_tree *fastmsg_tag_tree=NULL, *fmdata_dig_tree=NULL;
guint32 base_addr;
guint16 data_size, num_addr, cnt;
guint8 *item_val_str_ptr;
@@ -1658,7 +1658,7 @@ dissect_fastser_readresp_frame(tvbuff_t *tvb, proto_tree *fastser_tree, packet_i
gboolean seq_fir, seq_fin, save_fragmented;
int payload_offset=0;
fm_conversation *conv;
- fastser_dataitem *dataitem;
+ fastmsg_dataitem *dataitem;
tvbuff_t *data_tvb, *payload_tvb;
/* Decode sequence byte components */
@@ -1672,10 +1672,10 @@ dissect_fastser_readresp_frame(tvbuff_t *tvb, proto_tree *fastser_tree, packet_i
/* Append Column Info w/ Base Address */
col_append_sep_fstr(pinfo->cinfo, COL_INFO, NULL, "%#x [%s]", base_addr, region_lookup(pinfo, base_addr));
- pi_baseaddr = proto_tree_add_item(fastser_tree, hf_selfm_fastser_baseaddr, tvb, offset, 4, ENC_BIG_ENDIAN);
+ pi_baseaddr = proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_baseaddr, tvb, offset, 4, ENC_BIG_ENDIAN);
proto_item_append_text(pi_baseaddr, " [%s]", region_lookup(pinfo, base_addr));
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_numwords, tvb, offset+4, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_numwords, tvb, offset+4, 2, ENC_BIG_ENDIAN);
offset += 6;
/* Setup a new tvb representing just the data payload of this particular message */
@@ -1697,7 +1697,7 @@ dissect_fastser_readresp_frame(tvbuff_t *tvb, proto_tree *fastser_tree, packet_i
payload_tvb = process_reassembled_data(data_tvb, 0, pinfo,
"Reassembled Data Response Payload", frag_msg, &selfm_frag_items,
- NULL, fastser_tree);
+ NULL, fastmsg_tree);
if (payload_tvb) { /* Reassembled */
/* We have the complete payload */
@@ -1727,11 +1727,11 @@ dissect_fastser_readresp_frame(tvbuff_t *tvb, proto_tree *fastser_tree, packet_i
conv = (fm_conversation *)p_get_proto_data(wmem_file_scope(), pinfo, proto_selfm, 0);
if (conv) {
- /* Start at front of list and cycle through possible instances of multiple fastser_dataitem frames, looking for match */
- wmem_list_frame_t *frame = wmem_list_head(conv->fastser_dataitems);
+ /* Start at front of list and cycle through possible instances of multiple fastmsg_dataitem frames, looking for match */
+ wmem_list_frame_t *frame = wmem_list_head(conv->fastmsg_dataitems);
while (frame) {
- dataitem = (fastser_dataitem *)wmem_list_frame_data(frame);
+ dataitem = (fastmsg_dataitem *)wmem_list_frame_data(frame);
/* If the stored base address of the current data item matches the current base address of this response frame */
/* mark that the config data was found and attempt further dissection */
@@ -1762,14 +1762,14 @@ dissect_fastser_readresp_frame(tvbuff_t *tvb, proto_tree *fastser_tree, packet_i
break;
}
- fastser_tag_tree = proto_tree_add_subtree_format(fastser_tree, payload_tvb, payload_offset, data_size,
- ett_selfm_fastser_tag, NULL, "Data Item Name: %s", dataitem->name);
+ fastmsg_tag_tree = proto_tree_add_subtree_format(fastmsg_tree, payload_tvb, payload_offset, data_size,
+ ett_selfm_fastmsg_tag, NULL, "Data Item Name: %s", dataitem->name);
/* Load some information from the stored Data Format Response message into the tree for reference */
- pi_fnum = proto_tree_add_text(fastser_tag_tree, payload_tvb, payload_offset, data_size, "Using frame number %d (Index Pos: %d) as Data Format Reference",dataitem->fnum, dataitem->index_pos );
- pi_type = proto_tree_add_text(fastser_tag_tree, payload_tvb, payload_offset, data_size, "Data_Type: %s (%#x)",
- val_to_str_const(dataitem->data_type, selfm_fastser_tagtype_vals, "Unknown Data Type"), dataitem->data_type);
- pi_qty = proto_tree_add_text(fastser_tag_tree, payload_tvb, payload_offset, data_size, "Quantity: %d",dataitem->quantity );
+ pi_fnum = proto_tree_add_text(fastmsg_tag_tree, payload_tvb, payload_offset, data_size, "Using frame number %d (Index Pos: %d) as Data Format Reference",dataitem->fnum, dataitem->index_pos );
+ pi_type = proto_tree_add_text(fastmsg_tag_tree, payload_tvb, payload_offset, data_size, "Data_Type: %s (%#x)",
+ val_to_str_const(dataitem->data_type, selfm_fastmsg_tagtype_vals, "Unknown Data Type"), dataitem->data_type);
+ pi_qty = proto_tree_add_text(fastmsg_tag_tree, payload_tvb, payload_offset, data_size, "Quantity: %d",dataitem->quantity );
PROTO_ITEM_SET_GENERATED(pi_fnum);
PROTO_ITEM_SET_GENERATED(pi_type);
@@ -1783,7 +1783,7 @@ dissect_fastser_readresp_frame(tvbuff_t *tvb, proto_tree *fastser_tree, packet_i
for (cnt=1; cnt <= dataitem->quantity; cnt++) {
- fmdata_dig_tree = proto_tree_add_subtree_format(fastser_tag_tree, payload_tvb, payload_offset, 1,
+ fmdata_dig_tree = proto_tree_add_subtree_format(fastmsg_tag_tree, payload_tvb, payload_offset, 1,
ett_selfm_fmdata_dig, &fmdata_dig_item, "8-bit Binary Items (Row: %2d)", cnt);
/* Display the bit pattern on the digital channel proto_item */
@@ -1811,46 +1811,46 @@ dissect_fastser_readresp_frame(tvbuff_t *tvb, proto_tree *fastser_tree, packet_i
case FAST_MSG_TAGTYPE_CHAR8:
case FAST_MSG_TAGTYPE_CHAR16:
item_val_str_ptr = tvb_get_string_enc(wmem_packet_scope(), payload_tvb, payload_offset, data_size, ENC_ASCII);
- proto_tree_add_text(fastser_tag_tree, payload_tvb, payload_offset, data_size, "Value: %s", item_val_str_ptr);
+ proto_tree_add_text(fastmsg_tag_tree, payload_tvb, payload_offset, data_size, "Value: %s", item_val_str_ptr);
payload_offset += data_size;
break;
case FAST_MSG_TAGTYPE_INT16:
for (cnt=1; cnt <= dataitem->quantity; cnt++) {
- fastser_tag_value_item = proto_tree_add_item(fastser_tag_tree, hf_selfm_fastser_dataitem_int16, payload_tvb, payload_offset, data_size/dataitem->quantity, ENC_BIG_ENDIAN);
- proto_item_prepend_text(fastser_tag_value_item, "Value %d ", cnt);
+ fastmsg_tag_value_item = proto_tree_add_item(fastmsg_tag_tree, hf_selfm_fastmsg_dataitem_int16, payload_tvb, payload_offset, data_size/dataitem->quantity, ENC_BIG_ENDIAN);
+ proto_item_prepend_text(fastmsg_tag_value_item, "Value %d ", cnt);
payload_offset += data_size/dataitem->quantity;
}
break;
case FAST_MSG_TAGTYPE_UINT16:
for (cnt=1; cnt <= dataitem->quantity; cnt++) {
- fastser_tag_value_item = proto_tree_add_item(fastser_tag_tree, hf_selfm_fastser_dataitem_uint16, payload_tvb, payload_offset, data_size/dataitem->quantity, ENC_BIG_ENDIAN);
- proto_item_prepend_text(fastser_tag_value_item, "Value %d ", cnt);
+ fastmsg_tag_value_item = proto_tree_add_item(fastmsg_tag_tree, hf_selfm_fastmsg_dataitem_uint16, payload_tvb, payload_offset, data_size/dataitem->quantity, ENC_BIG_ENDIAN);
+ proto_item_prepend_text(fastmsg_tag_value_item, "Value %d ", cnt);
payload_offset += data_size/dataitem->quantity;
}
break;
case FAST_MSG_TAGTYPE_INT32:
for (cnt=1; cnt <= dataitem->quantity; cnt++) {
- fastser_tag_value_item = proto_tree_add_item(fastser_tag_tree, hf_selfm_fastser_dataitem_int32, payload_tvb, payload_offset, data_size/dataitem->quantity, ENC_BIG_ENDIAN);
- proto_item_prepend_text(fastser_tag_value_item, "Value %d ", cnt);
+ fastmsg_tag_value_item = proto_tree_add_item(fastmsg_tag_tree, hf_selfm_fastmsg_dataitem_int32, payload_tvb, payload_offset, data_size/dataitem->quantity, ENC_BIG_ENDIAN);
+ proto_item_prepend_text(fastmsg_tag_value_item, "Value %d ", cnt);
payload_offset += data_size/dataitem->quantity;
}
break;
case FAST_MSG_TAGTYPE_UINT32:
for (cnt=1; cnt <= dataitem->quantity; cnt++) {
- fastser_tag_value_item = proto_tree_add_item(fastser_tag_tree, hf_selfm_fastser_dataitem_uint32, payload_tvb, payload_offset, data_size/dataitem->quantity, ENC_BIG_ENDIAN);
- proto_item_prepend_text(fastser_tag_value_item, "Value %d ", cnt);
+ fastmsg_tag_value_item = proto_tree_add_item(fastmsg_tag_tree, hf_selfm_fastmsg_dataitem_uint32, payload_tvb, payload_offset, data_size/dataitem->quantity, ENC_BIG_ENDIAN);
+ proto_item_prepend_text(fastmsg_tag_value_item, "Value %d ", cnt);
payload_offset += data_size/dataitem->quantity;
}
break;
case FAST_MSG_TAGTYPE_FLOAT:
for (cnt=1; cnt <= dataitem->quantity; cnt++) {
- fastser_tag_value_item = proto_tree_add_item(fastser_tag_tree, hf_selfm_fastser_dataitem_float, payload_tvb, payload_offset, data_size/dataitem->quantity, ENC_BIG_ENDIAN);
- proto_item_prepend_text(fastser_tag_value_item, "Value %d ", cnt);
+ fastmsg_tag_value_item = proto_tree_add_item(fastmsg_tag_tree, hf_selfm_fastmsg_dataitem_float, payload_tvb, payload_offset, data_size/dataitem->quantity, ENC_BIG_ENDIAN);
+ proto_item_prepend_text(fastmsg_tag_value_item, "Value %d ", cnt);
payload_offset += data_size/dataitem->quantity;
}
break;
@@ -1879,17 +1879,17 @@ dissect_fastser_readresp_frame(tvbuff_t *tvb, proto_tree *fastser_tree, packet_i
/******************************************************************************************************/
-/* Code to dissect Fast SER Frames */
+/* Code to dissect Fast Message Frames */
/******************************************************************************************************/
static int
-dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int offset)
+dissect_fastmsg_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int offset)
{
/* Set up structures needed to add the protocol subtree and manage it */
- proto_item *fastser_def_fc_item, *fastser_seq_item, *fastser_elementlist_item;
- proto_item *fastser_tag_item;
- proto_item *pi_baseaddr, *fastser_crc16_item;
- proto_tree *fastser_tree, *fastser_def_fc_tree=NULL, *fastser_seq_tree=NULL, *fastser_elementlist_tree=NULL;
- proto_tree *fastser_element_tree=NULL, *fastser_datareg_tree=NULL, *fastser_tag_tree=NULL;
+ proto_item *fastmsg_def_fc_item, *fastmsg_seq_item, *fastmsg_elementlist_item;
+ proto_item *fastmsg_tag_item;
+ proto_item *pi_baseaddr, *fastmsg_crc16_item;
+ proto_tree *fastmsg_tree, *fastmsg_def_fc_tree=NULL, *fastmsg_seq_tree=NULL, *fastmsg_elementlist_tree=NULL;
+ proto_tree *fastmsg_element_tree=NULL, *fastmsg_datareg_tree=NULL, *fastmsg_tag_tree=NULL;
gint cnt, num_elements, elmt_status32_ofs=0, elmt_status, null_offset;
guint8 len, funccode, seq, rx_num_fc, tx_num_fc;
guint8 seq_cnt, seq_fir, seq_fin, elmt_idx, fc_enable;
@@ -1900,25 +1900,25 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
len = tvb_get_guint8(tvb, offset);
- fastser_tree = proto_tree_add_subtree(tree, tvb, offset, len-2, ett_selfm_fastser, NULL, "Fast Message Details");
+ fastmsg_tree = proto_tree_add_subtree(tree, tvb, offset, len-2, ett_selfm_fastmsg, NULL, "Fast Message Details");
/* Reported length */
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_len, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_len, tvb, offset, 1, ENC_BIG_ENDIAN);
/* 5-byte Future Routing Address */
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_routing_addr, tvb, offset+1, 5, ENC_NA);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_routing_addr, tvb, offset+1, 5, ENC_NA);
offset += 6;
/* Add Status Byte to tree */
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_status, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_status, tvb, offset, 1, ENC_BIG_ENDIAN);
offset += 1;
/* Get Function Code, add to tree */
funccode = tvb_get_guint8(tvb, offset);
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_funccode, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_funccode, tvb, offset, 1, ENC_BIG_ENDIAN);
/* Append Column Info w/ Function Code */
- col_append_sep_fstr(pinfo->cinfo, COL_INFO, NULL, "%s", val_to_str_ext_const(funccode, &selfm_fastser_func_code_vals_ext, "Unknown Function Code"));
+ col_append_sep_fstr(pinfo->cinfo, COL_INFO, NULL, "%s", val_to_str_ext_const(funccode, &selfm_fastmsg_func_code_vals_ext, "Unknown Function Code"));
offset += 1;
@@ -1928,19 +1928,19 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
seq_fir = seq & FAST_MSG_SEQ_FIR;
seq_fin = seq & FAST_MSG_SEQ_FIN;
- fastser_seq_item = proto_tree_add_uint_format_value(fastser_tree, hf_selfm_fastser_seq, tvb, offset, 1, seq, "0x%02x (", seq);
- if (seq_fir) proto_item_append_text(fastser_seq_item, "FIR, ");
- if (seq_fin) proto_item_append_text(fastser_seq_item, "FIN, ");
- proto_item_append_text(fastser_seq_item, "Count %u)", seq_cnt);
+ fastmsg_seq_item = proto_tree_add_uint_format_value(fastmsg_tree, hf_selfm_fastmsg_seq, tvb, offset, 1, seq, "0x%02x (", seq);
+ if (seq_fir) proto_item_append_text(fastmsg_seq_item, "FIR, ");
+ if (seq_fin) proto_item_append_text(fastmsg_seq_item, "FIN, ");
+ proto_item_append_text(fastmsg_seq_item, "Count %u)", seq_cnt);
- fastser_seq_tree = proto_item_add_subtree(fastser_seq_item, ett_selfm_fastser_seq);
- proto_tree_add_boolean(fastser_seq_tree, hf_selfm_fastser_seq_fir, tvb, offset, 1, seq);
- proto_tree_add_boolean(fastser_seq_tree, hf_selfm_fastser_seq_fin, tvb, offset, 1, seq);
- proto_tree_add_item(fastser_seq_tree, hf_selfm_fastser_seq_cnt, tvb, offset, 1, ENC_BIG_ENDIAN);
+ fastmsg_seq_tree = proto_item_add_subtree(fastmsg_seq_item, ett_selfm_fastmsg_seq);
+ proto_tree_add_boolean(fastmsg_seq_tree, hf_selfm_fastmsg_seq_fir, tvb, offset, 1, seq);
+ proto_tree_add_boolean(fastmsg_seq_tree, hf_selfm_fastmsg_seq_fin, tvb, offset, 1, seq);
+ proto_tree_add_item(fastmsg_seq_tree, hf_selfm_fastmsg_seq_cnt, tvb, offset, 1, ENC_BIG_ENDIAN);
offset += 1;
/* Add Response Number to tree */
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_resp_num, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_resp_num, tvb, offset, 1, ENC_BIG_ENDIAN);
offset += 1;
/* Depending on Function Code used, remaining section of packet will be handled differently. */
@@ -1950,13 +1950,13 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
/* Function code to enable */
fc_enable = tvb_get_guint8(tvb, offset);
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_uns_en_fc, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_uns_en_fc, tvb, offset, 1, ENC_BIG_ENDIAN);
/* Append Column Info w/ "Enable" Function Code */
col_append_sep_fstr(pinfo->cinfo, COL_INFO, NULL, "Function to Enable (%#x)", fc_enable);
/* 3-byte Function Code data */
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_uns_en_fc_data, tvb, offset+1, 3, ENC_NA);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_uns_en_fc_data, tvb, offset+1, 3, ENC_NA);
offset += 4;
@@ -1966,13 +1966,13 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
/* Function code to disable */
fc_enable = tvb_get_guint8(tvb, offset);
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_uns_dis_fc, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_uns_dis_fc, tvb, offset, 1, ENC_BIG_ENDIAN);
/* Append Column Info w/ "Disable" Function Code */
col_append_sep_fstr(pinfo->cinfo, COL_INFO, NULL, "Function to Disable (%#x)", fc_enable);
/* 1-byte Function Code data */
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_uns_dis_fc_data, tvb, offset+1, 1, ENC_NA);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_uns_dis_fc_data, tvb, offset+1, 1, ENC_NA);
offset += 2;
@@ -1986,10 +1986,10 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
/* Append Column Info w/ Base Address */
col_append_sep_fstr(pinfo->cinfo, COL_INFO, NULL, "%#x [%s]", base_addr, region_lookup(pinfo, base_addr));
- pi_baseaddr = proto_tree_add_item(fastser_tree, hf_selfm_fastser_baseaddr, tvb, offset, 4, ENC_BIG_ENDIAN);
+ pi_baseaddr = proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_baseaddr, tvb, offset, 4, ENC_BIG_ENDIAN);
proto_item_append_text(pi_baseaddr, " [%s]", region_lookup(pinfo, base_addr));
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_numwords, tvb, offset+4, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_numwords, tvb, offset+4, 2, ENC_BIG_ENDIAN);
offset += 6;
break;
@@ -2000,7 +2000,7 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
/* For the number of registers, step through and retrieve/print each 16-bit component */
for (cnt=0; cnt < num_reg; cnt++) {
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_unswrite_reg_val, tvb, offset, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_unswrite_reg_val, tvb, offset, 2, ENC_BIG_ENDIAN);
offset += 2;
}
@@ -2009,7 +2009,7 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
case FAST_MSG_SOE_STATE_REQ: /* 0x16 - SOE Present State Request */
/* 4 bytes - "Origination Path" */
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_soe_req_orig, tvb, offset, 4, ENC_NA);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_soe_req_orig, tvb, offset, 4, ENC_NA);
offset += 4;
break;
@@ -2017,17 +2017,17 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
case FAST_MSG_UNS_RESP: /* 0x18 - Unsolicited Fast SER Data Response */
/* 4 bytes - "Origination Path" */
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_unsresp_orig, tvb, offset, 4, ENC_NA);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_unsresp_orig, tvb, offset, 4, ENC_NA);
offset += 4;
/* Timestamp: 2-byte day-of-year, 2-byte year, 4-byte time-of-day in milliseconds */
/* XXX - We can use a built-in function to convert the tod_ms to a readable time format, is there anything for day_of_year? */
tod_ms = tvb_get_ntohl(tvb, offset+4);
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_unsresp_doy, tvb, offset, 2, ENC_BIG_ENDIAN);
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_unsresp_year, tvb, offset+2, 2, ENC_BIG_ENDIAN);
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_unsresp_todms, tvb, offset+4, 4, ENC_BIG_ENDIAN);
- proto_tree_add_text(fastser_tree, tvb, offset+4, 4, "Time of Day (decoded): %s", time_msecs_to_str(wmem_packet_scope(), tod_ms));
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_unsresp_doy, tvb, offset, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_unsresp_year, tvb, offset+2, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_unsresp_todms, tvb, offset+4, 4, ENC_BIG_ENDIAN);
+ proto_tree_add_text(fastmsg_tree, tvb, offset+4, 4, "Time of Day (decoded): %s", time_msecs_to_str(wmem_packet_scope(), tod_ms));
offset += 8;
/* Build element tree */
@@ -2035,8 +2035,8 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
/* The general formula is: (Length - 34) / 4 */
num_elements = (len-34) / 4;
- fastser_elementlist_item = proto_tree_add_uint(fastser_tree, hf_selfm_fastser_unsresp_num_elmt, tvb, offset, (4*num_elements), num_elements);
- fastser_elementlist_tree = proto_item_add_subtree(fastser_elementlist_item, ett_selfm_fastser_element_list);
+ fastmsg_elementlist_item = proto_tree_add_uint(fastmsg_tree, hf_selfm_fastmsg_unsresp_num_elmt, tvb, offset, (4*num_elements), num_elements);
+ fastmsg_elementlist_tree = proto_item_add_subtree(fastmsg_elementlist_item, ett_selfm_fastmsg_element_list);
/* "Reported New Status" word for up to 32 index elements is following the upcoming 0xFFFFFFFE End-of-record indicator
Search for that indicator and use the detected tvb offset+4 to retrieve the proper 32-bit status word.
@@ -2060,27 +2060,27 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
elmt_status = ((elmt_status32 >> cnt) & 0x01);
/* Build the tree */
- fastser_element_tree = proto_tree_add_subtree_format(fastser_elementlist_tree, tvb, offset, 4, ett_selfm_fastser_element, NULL,
+ fastmsg_element_tree = proto_tree_add_subtree_format(fastmsg_elementlist_tree, tvb, offset, 4, ett_selfm_fastmsg_element, NULL,
"Reported Event %d (Index: %d [%s], New State: %s)", cnt+1, elmt_idx, fastser_uns_wordbit_lookup(pinfo, elmt_idx),
val_to_str_const(elmt_status, selfm_ser_status_vals, "Unknown"));
/* Add Index Number and Timestamp offset to tree */
- proto_tree_add_item(fastser_element_tree, hf_selfm_fastser_unsresp_elmt_idx, tvb, offset, 1, ENC_BIG_ENDIAN);
- proto_tree_add_item(fastser_element_tree, hf_selfm_fastser_unsresp_elmt_ts_ofs, tvb, offset+1, 3, ENC_BIG_ENDIAN);
- proto_tree_add_text(fastser_element_tree, tvb, offset+1, 3,
+ proto_tree_add_item(fastmsg_element_tree, hf_selfm_fastmsg_unsresp_elmt_idx, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_element_tree, hf_selfm_fastmsg_unsresp_elmt_ts_ofs, tvb, offset+1, 3, ENC_BIG_ENDIAN);
+ proto_tree_add_text(fastmsg_element_tree, tvb, offset+1, 3,
"SER Element Timestamp Offset (decoded): %s", time_msecs_to_str(wmem_packet_scope(), tod_ms + (elmt_ts_offset/1000)));
- proto_tree_add_uint(fastser_element_tree, hf_selfm_fastser_unsresp_elmt_status, tvb, elmt_status32_ofs, 4, elmt_status);
+ proto_tree_add_uint(fastmsg_element_tree, hf_selfm_fastmsg_unsresp_elmt_status, tvb, elmt_status32_ofs, 4, elmt_status);
offset += 4;
}
/* 4-byte End-of-Record Terminator 0xFFFFFFFE */
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_unsresp_eor, tvb, offset, 4, ENC_NA);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_unsresp_eor, tvb, offset, 4, ENC_NA);
offset += 4;
/* 4-byte Element Status word */
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_unsresp_elmt_statword, tvb, offset, 4, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_unsresp_elmt_statword, tvb, offset, 4, ENC_BIG_ENDIAN);
offset += 4;
break;
@@ -2096,15 +2096,15 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
/* Append Column Info w/ Address Information */
col_append_sep_fstr(pinfo->cinfo, COL_INFO, NULL, "%#x, %#x", addr1, addr2);
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_unswrite_addr1, tvb, offset, 2, ENC_BIG_ENDIAN);
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_unswrite_addr2, tvb, offset+2, 2, ENC_BIG_ENDIAN);
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_unswrite_num_reg, tvb, offset+4, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_unswrite_addr1, tvb, offset, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_unswrite_addr2, tvb, offset+2, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_unswrite_num_reg, tvb, offset+4, 2, ENC_BIG_ENDIAN);
offset += 6;
/* For the number of registers, step through and retrieve/print each 16-bit component */
for (cnt=0; cnt < num_reg; cnt++) {
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_unswrite_reg_val, tvb, offset, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_unswrite_reg_val, tvb, offset, 2, ENC_BIG_ENDIAN);
offset += 2;
}
@@ -2118,7 +2118,7 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
col_append_sep_fstr(pinfo->cinfo, COL_INFO, NULL, "%#x [%s]", base_addr, region_lookup(pinfo, base_addr));
/* Add Base Address to Tree */
- pi_baseaddr = proto_tree_add_item(fastser_tree, hf_selfm_fastser_baseaddr, tvb, offset, 4, ENC_BIG_ENDIAN);
+ pi_baseaddr = proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_baseaddr, tvb, offset, 4, ENC_BIG_ENDIAN);
proto_item_append_text(pi_baseaddr, " [%s]", region_lookup(pinfo, base_addr));
offset += 4;
@@ -2128,7 +2128,7 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
case FAST_MSG_BITLABEL_REQ: /* 0x33 - Bit Label Request */
base_addr = tvb_get_ntohl(tvb, offset); /* 32-bit field with base address to read */
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_baseaddr, tvb, offset, 4, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_baseaddr, tvb, offset, 4, ENC_BIG_ENDIAN);
offset += 4;
/* Append Column Info w/ Base Address */
@@ -2140,17 +2140,17 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
case FAST_MSG_CFG_BLOCK_RESP: /* 0x80 (resp to 0x00) - Fast Message Configuration Block Response */
/* Routing Support */
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_def_route_sup, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_def_route_sup, tvb, offset, 1, ENC_BIG_ENDIAN);
offset += 1;
/* RX / TX Status */
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_def_rx_stat, tvb, offset, 1, ENC_BIG_ENDIAN);
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_def_tx_stat, tvb, offset+1, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_def_rx_stat, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_def_tx_stat, tvb, offset+1, 1, ENC_BIG_ENDIAN);
offset += 2;
/* Max Frames RX/TX */
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_def_rx_maxfr, tvb, offset, 1, ENC_BIG_ENDIAN);
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_def_tx_maxfr, tvb, offset+1, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_def_rx_maxfr, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_def_tx_maxfr, tvb, offset+1, 1, ENC_BIG_ENDIAN);
offset += 2;
/* 6 bytes of reserved space */
@@ -2158,25 +2158,25 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
/* Number of Supported RX Function Codes */
rx_num_fc = tvb_get_guint8(tvb, offset);
- fastser_def_fc_item = proto_tree_add_item(fastser_tree, hf_selfm_fastser_def_rx_num_fc, tvb, offset, 1, ENC_BIG_ENDIAN);
- fastser_def_fc_tree = proto_item_add_subtree(fastser_def_fc_item, ett_selfm_fastser_def_fc);
+ fastmsg_def_fc_item = proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_def_rx_num_fc, tvb, offset, 1, ENC_BIG_ENDIAN);
+ fastmsg_def_fc_tree = proto_item_add_subtree(fastmsg_def_fc_item, ett_selfm_fastmsg_def_fc);
offset += 1;
/* Add Supported RX Function Codes to tree */
for (cnt=0; cnt<rx_num_fc; cnt++) {
- proto_tree_add_item(fastser_def_fc_tree, hf_selfm_fastser_def_rx_fc, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_def_fc_tree, hf_selfm_fastmsg_def_rx_fc, tvb, offset, 1, ENC_BIG_ENDIAN);
offset += 2;
}
/* Number of Supported TX Function Codes */
tx_num_fc = tvb_get_guint8(tvb, offset);
- fastser_def_fc_item = proto_tree_add_item(fastser_tree, hf_selfm_fastser_def_tx_num_fc, tvb, offset, 1, ENC_BIG_ENDIAN);
- fastser_def_fc_tree = proto_item_add_subtree(fastser_def_fc_item, ett_selfm_fastser_def_fc);
+ fastmsg_def_fc_item = proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_def_tx_num_fc, tvb, offset, 1, ENC_BIG_ENDIAN);
+ fastmsg_def_fc_tree = proto_item_add_subtree(fastmsg_def_fc_item, ett_selfm_fastmsg_def_fc);
offset += 1;
/* Add Supported TX Function Codes to tree */
for (cnt=0; cnt<tx_num_fc; cnt++) {
- proto_tree_add_item(fastser_def_fc_tree, hf_selfm_fastser_def_tx_fc, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_def_fc_tree, hf_selfm_fastmsg_def_tx_fc, tvb, offset, 1, ENC_BIG_ENDIAN);
offset += 2;
}
@@ -2184,24 +2184,24 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
case FAST_MSG_READ_RESP: /* 0x90 (resp to 0x10) - Read Response */
- offset = dissect_fastser_readresp_frame( tvb, fastser_tree, pinfo, offset, seq);
+ offset = dissect_fastmsg_readresp_frame( tvb, fastmsg_tree, pinfo, offset, seq);
break;
case FAST_MSG_SOE_STATE_RESP: /* 0x96 - (resp to 0x16) SOE Present State Response */
/* 16-bit field with number of blocks of present state data */
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_soe_resp_numblks, tvb, offset, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_soe_resp_numblks, tvb, offset, 2, ENC_BIG_ENDIAN);
offset += 2;
/* XXX - With examples, need to loop through each one of these items based on the num_blocks */
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_soe_resp_orig, tvb, offset, 4, ENC_NA);
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_soe_resp_numbits, tvb, offset+4, 1, ENC_BIG_ENDIAN);
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_soe_resp_pad, tvb, offset+5, 1, ENC_BIG_ENDIAN);
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_soe_resp_doy, tvb, offset+6, 2, ENC_BIG_ENDIAN);
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_soe_resp_year, tvb, offset+8, 2, ENC_BIG_ENDIAN);
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_soe_resp_tod, tvb, offset+10, 4, ENC_BIG_ENDIAN);
- /* proto_tree_add_item(fastser_tree, hf_selfm_fastser_soe_resp_data, tvb, offset+14, 2, ENC_BIG_ENDIAN); */
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_soe_resp_orig, tvb, offset, 4, ENC_NA);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_soe_resp_numbits, tvb, offset+4, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_soe_resp_pad, tvb, offset+5, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_soe_resp_doy, tvb, offset+6, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_soe_resp_year, tvb, offset+8, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_soe_resp_tod, tvb, offset+10, 4, ENC_BIG_ENDIAN);
+ /* proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_soe_resp_data, tvb, offset+14, 2, ENC_BIG_ENDIAN); */
offset += 14;
@@ -2212,13 +2212,13 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
/* Add FID / RID ASCII data to tree */
fid_str_ptr = tvb_get_string_enc(wmem_packet_scope(), tvb, offset, 50, ENC_ASCII);
rid_str_ptr = tvb_get_string_enc(wmem_packet_scope(), tvb, offset+50, 40, ENC_ASCII);
- proto_tree_add_text(fastser_tree, tvb, offset, 50, "FID: %s", fid_str_ptr);
- proto_tree_add_text(fastser_tree, tvb, offset+50, 40, "RID: %s", rid_str_ptr);
+ proto_tree_add_text(fastmsg_tree, tvb, offset, 50, "FID: %s", fid_str_ptr);
+ proto_tree_add_text(fastmsg_tree, tvb, offset+50, 40, "RID: %s", rid_str_ptr);
offset += 90;
/* 16-bit field with number of data areas */
num_reg = tvb_get_ntohs(tvb, offset);
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_devdesc_num_region, tvb, offset, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_devdesc_num_region, tvb, offset, 2, ENC_BIG_ENDIAN);
offset += 2;
/* Maximum size of 7 regions per message, check the seq_cnt to determine if we have stepped into
@@ -2231,31 +2231,31 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
}
/* 16-bit field with number of control areas */
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_devdesc_num_ctrl, tvb, offset, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_devdesc_num_ctrl, tvb, offset, 2, ENC_BIG_ENDIAN);
offset += 2;
/* Each 18-byte data area description has a 10 byte region name, followed by 32-bit base, */
/* 16-bit message word count and 16-bit flag field */
for (cnt=0; cnt<num_reg; cnt++) {
- fastser_datareg_tree = proto_tree_add_subtree_format(fastser_tree, tvb, offset, 18,
- ett_selfm_fastser_datareg, NULL, "Fast Message Data Region #%d", cnt+1);
+ fastmsg_datareg_tree = proto_tree_add_subtree_format(fastmsg_tree, tvb, offset, 18,
+ ett_selfm_fastmsg_datareg, NULL, "Fast Message Data Region #%d", cnt+1);
/* 10-Byte Region description */
region_name_ptr = tvb_get_string_enc(wmem_packet_scope(), tvb, offset, 10, ENC_ASCII);
- proto_tree_add_text(fastser_datareg_tree, tvb, offset, 10, "Data Region Name: %s", region_name_ptr);
+ proto_tree_add_text(fastmsg_datareg_tree, tvb, offset, 10, "Data Region Name: %s", region_name_ptr);
offset += 10;
/* 32-bit field with base address of data region */
- proto_tree_add_item(fastser_datareg_tree, hf_selfm_fastser_baseaddr, tvb, offset, 4, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_datareg_tree, hf_selfm_fastmsg_baseaddr, tvb, offset, 4, ENC_BIG_ENDIAN);
offset += 4;
/* 16-bit field with number of 16-bit words in region */
- proto_tree_add_item(fastser_datareg_tree, hf_selfm_fastser_numwords, tvb, offset, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_datareg_tree, hf_selfm_fastmsg_numwords, tvb, offset, 2, ENC_BIG_ENDIAN);
offset += 2;
/* 16-bit flag field */
- proto_tree_add_item(fastser_datareg_tree, hf_selfm_fastser_flags, tvb, offset, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_datareg_tree, hf_selfm_fastmsg_flags, tvb, offset, 2, ENC_BIG_ENDIAN);
offset += 2;
}
@@ -2276,7 +2276,7 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
base_addr = tvb_get_ntohl(tvb, offset); /* 32-bit field with base address to read */
/* Add Base Address to Tree */
- pi_baseaddr = proto_tree_add_item(fastser_tree, hf_selfm_fastser_baseaddr, tvb, offset, 4, ENC_BIG_ENDIAN);
+ pi_baseaddr = proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_baseaddr, tvb, offset, 4, ENC_BIG_ENDIAN);
proto_item_append_text(pi_baseaddr, " [%s]", region_lookup(pinfo, base_addr));
offset += 4;
@@ -2285,18 +2285,18 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
col_append_sep_fstr(pinfo->cinfo, COL_INFO, NULL, "%#x [%s]", base_addr, region_lookup(pinfo, base_addr));
/* 16-bit field with number of data items to follow */
- proto_tree_add_item(fastser_tree, hf_selfm_fastser_datafmt_resp_numitem, tvb, offset, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_datafmt_resp_numitem, tvb, offset, 2, ENC_BIG_ENDIAN);
offset += 2;
while ((tvb_reported_length_remaining(tvb, offset)) > 2) {
/* Data Item record name 10 bytes */
tag_name_ptr = tvb_get_string_enc(wmem_packet_scope(), tvb, offset, 10, ENC_ASCII);
- fastser_tag_item = proto_tree_add_text(fastser_tree, tvb, offset, 14, "Data Item Record Name: %s", tag_name_ptr);
- fastser_tag_tree = proto_item_add_subtree(fastser_tag_item, ett_selfm_fastser_tag);
+ fastmsg_tag_item = proto_tree_add_text(fastmsg_tree, tvb, offset, 14, "Data Item Record Name: %s", tag_name_ptr);
+ fastmsg_tag_tree = proto_item_add_subtree(fastmsg_tag_item, ett_selfm_fastmsg_tag);
/* Data item qty and type */
- proto_tree_add_item(fastser_tag_tree, hf_selfm_fastser_dataitem_qty, tvb, offset+10, 2, ENC_BIG_ENDIAN);
- proto_tree_add_item(fastser_tag_tree, hf_selfm_fastser_dataitem_type, tvb, offset+12, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tag_tree, hf_selfm_fastmsg_dataitem_qty, tvb, offset+10, 2, ENC_BIG_ENDIAN);
+ proto_tree_add_item(fastmsg_tag_tree, hf_selfm_fastmsg_dataitem_type, tvb, offset+12, 2, ENC_BIG_ENDIAN);
offset += 14;
}
@@ -2311,7 +2311,7 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
/* find the null separators and add the bit label text strings to the tree */
for (null_offset = offset; null_offset < len; null_offset++) {
if ((tvb_memeql(tvb, null_offset, "\x00", 1) == 0) && (tvb_reported_length_remaining(tvb, offset) > 2)) {
- proto_tree_add_text(fastser_tree, tvb, offset, (null_offset-offset), "Bit Label #%d Name: %s", cnt,
+ proto_tree_add_text(fastmsg_tree, tvb, offset, (null_offset-offset), "Bit Label #%d Name: %s", cnt,
tvb_format_text(tvb, offset, (null_offset-offset)));
offset = null_offset+1; /* skip the null */
cnt++;
@@ -2325,17 +2325,17 @@ dissect_fastser_frame(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, int o
} /* func_code */
/* Add CRC16 to Tree */
- fastser_crc16_item = proto_tree_add_item(fastser_tree, hf_selfm_fastser_crc16, tvb, offset, 2, ENC_BIG_ENDIAN);
+ fastmsg_crc16_item = proto_tree_add_item(fastmsg_tree, hf_selfm_fastmsg_crc16, tvb, offset, 2, ENC_BIG_ENDIAN);
crc16 = tvb_get_ntohs(tvb, offset);
/* If option is enabled, validate the CRC16 */
if (selfm_crc16) {
crc16_calc = crc16_plain_tvb_offset_seed(tvb, 0, len-2, 0xFFFF);
if (crc16_calc != crc16) {
- expert_add_info_format(pinfo, fastser_crc16_item, &ei_selfm_crc16_incorrect, "Incorrect CRC - should be 0x%04x", crc16_calc);
+ expert_add_info_format(pinfo, fastmsg_crc16_item, &ei_selfm_crc16_incorrect, "Incorrect CRC - should be 0x%04x", crc16_calc);
}
else {
- proto_item_append_text(fastser_crc16_item, " [OK]");
+ proto_item_append_text(fastmsg_crc16_item, " [OK]");
}
}
@@ -2382,8 +2382,8 @@ dissect_selfm(tvbuff_t *selfm_tvb, packet_info *pinfo, proto_tree *tree, void* d
if (fm_conv_data == NULL) {
fm_conv_data = wmem_new(wmem_file_scope(), fm_conversation);
fm_conv_data->fm_config_frames = wmem_list_new(wmem_file_scope());
- fm_conv_data->fastser_dataitems = wmem_list_new(wmem_file_scope());
- fm_conv_data->fastser_dataregions = wmem_tree_new(wmem_file_scope());
+ fm_conv_data->fastmsg_dataitems = wmem_list_new(wmem_file_scope());
+ fm_conv_data->fastmsg_dataregions = wmem_tree_new(wmem_file_scope());
fm_conv_data->fastser_uns_wordbits = wmem_tree_new(wmem_file_scope());
conversation_add_proto_data(conversation, proto_selfm, (void *)fm_conv_data);
@@ -2439,13 +2439,13 @@ dissect_selfm(tvbuff_t *selfm_tvb, packet_info *pinfo, proto_tree *tree, void* d
/* Enter the single frame multiple times, retrieving a single dataitem per entry */
for (cnt = 1; (cnt <= num_items); cnt++) {
- fastser_dataitem *dataitem_ptr = fastser_dataitem_save(selfm_tvb, offset);
+ fastmsg_dataitem *dataitem_ptr = fastmsg_dataitem_save(selfm_tvb, offset);
dataitem_ptr->fnum = pinfo->fd->num;
dataitem_ptr->base_address = base_addr;
dataitem_ptr->index_pos = cnt;
- /* Store the data item configuration info in the fastser_dataitems list */
- wmem_list_append(fm_conv_data->fastser_dataitems, dataitem_ptr);
+ /* Store the data item configuration info in the fastmsg_dataitems list */
+ wmem_list_append(fm_conv_data->fastmsg_dataitems, dataitem_ptr);
offset += 14;
}
}
@@ -2456,17 +2456,17 @@ dissect_selfm(tvbuff_t *selfm_tvb, packet_info *pinfo, proto_tree *tree, void* d
seq = tvb_get_guint8(selfm_tvb, offset+10);
- /* Set offset to where the dissect_fastser_readresp_frame function would normally be called, */
+ /* Set offset to where the dissect_fastmsg_readresp_frame function would normally be called, */
/* right before base address & num_items */
offset = 12;
/* Call the same read response function that will be called during GUI dissection */
- offset = dissect_fastser_readresp_frame( selfm_tvb, tree, pinfo, offset, seq);
+ offset = dissect_fastmsg_readresp_frame( selfm_tvb, tree, pinfo, offset, seq);
}
- /* 4. Fill conversation data array with Fast SER Data Region info from Device Desc Response Messages. This */
- /* will retrieve a data region name (associated to an address) that can later be displayed in the tree. */
+ /* 4. Fill conversation data array with Fast Message Data Region info from Device Desc Response Messages. This */
+ /* will retrieve a data region name (associated to an address) that can later be displayed in the tree. */
if ((CMD_FAST_MSG == msg_type) && (tvb_get_guint8(selfm_tvb, offset+9) == FAST_MSG_DEVDESC_RESP)) {
seq = tvb_get_guint8(selfm_tvb, offset+10);
@@ -2489,10 +2489,10 @@ dissect_selfm(tvbuff_t *selfm_tvb, packet_info *pinfo, proto_tree *tree, void* d
/* Enter the single frame multiple times, retrieving a single data region per entry */
for (cnt = 1; (cnt <= num_items); cnt++) {
guint32 base_address = tvb_get_ntohl(selfm_tvb, offset+10);
- fastser_dataregion *dataregion_ptr = fastser_dataregion_save(selfm_tvb, offset);
+ fastmsg_dataregion *dataregion_ptr = fastmsg_dataregion_save(selfm_tvb, offset);
- /* Store the data region info in the fastser_dataregions tree */
- wmem_tree_insert32(fm_conv_data->fastser_dataregions, base_address, dataregion_ptr);
+ /* Store the data region info in the fastmsg_dataregions tree */
+ wmem_tree_insert32(fm_conv_data->fastmsg_dataregions, base_address, dataregion_ptr);
offset += 18;
}
}
@@ -2535,7 +2535,7 @@ dissect_selfm(tvbuff_t *selfm_tvb, packet_info *pinfo, proto_tree *tree, void* d
dissect_foconfig_frame(selfm_tvb, selfm_tree, offset);
break;
case CMD_FAST_MSG:
- dissect_fastser_frame(selfm_tvb, selfm_tree, pinfo, offset);
+ dissect_fastmsg_frame(selfm_tvb, selfm_tree, pinfo, offset);
break;
case CMD_FASTOP_RB_CTRL:
case CMD_FASTOP_BR_CTRL:
@@ -2570,7 +2570,7 @@ get_selfm_len(packet_info *pinfo _U_, tvbuff_t *tvb, int offset _U_, void *data
{
guint message_len=0; /* message length, inclusive of header, data, crc */
- /* XXX: this logic doesn't take into account the offset */
+ /* XXX: this logic doesn't take into account the offset */
/* Get length byte from message */
if (tvb_length(tvb) > 2) {
message_len = tvb_get_guint8(tvb, 2);
@@ -2804,127 +2804,127 @@ proto_register_selfm(void)
{ "Operate Code", "selfm.alt_fastop.code", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }},
{ &hf_selfm_alt_fastop_valid,
{ "Operate Code Validation", "selfm.alt_fastop.valid", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }},
- /* "Fast SER Message" specific fields */
- { &hf_selfm_fastser_len,
- { "Length", "selfm.fastser.len", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_routing_addr,
- { "Routing Address (future)", "selfm.fastser.routing_addr", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_status,
- { "Status Byte", "selfm.fastser.status", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_funccode,
- { "Function Code", "selfm.fastser.funccode", FT_UINT8, BASE_HEX | BASE_EXT_STRING, &selfm_fastser_func_code_vals_ext, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_seq,
- { "Sequence Byte", "selfm.fastser.seq", FT_UINT8, BASE_HEX, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_seq_fir,
- { "FIR", "selfm.fastser.seq_fir", FT_BOOLEAN, 8, NULL, FAST_MSG_SEQ_FIR, NULL, HFILL }},
- { &hf_selfm_fastser_seq_fin,
- { "FIN", "selfm.fastser.seq_fin", FT_BOOLEAN, 8, NULL, FAST_MSG_SEQ_FIN, NULL, HFILL }},
- { &hf_selfm_fastser_seq_cnt,
- { "Count", "selfm.fastser.seq_cnt", FT_UINT8, BASE_DEC, NULL, FAST_MSG_SEQ_CNT, "Frame Count Number", HFILL }},
- { &hf_selfm_fastser_resp_num,
- { "Response Number", "selfm.fastser.resp_num", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_crc16,
- { "CRC-16", "selfm.fastser.crc16", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_def_route_sup,
- { "Routing Support", "selfm.fastser.def_route_sup", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_def_rx_stat,
- { "Status RX", "selfm.fastser.def_rx_stat", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_def_tx_stat,
- { "Status TX", "selfm.fastser.def_tx_stat", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_def_rx_maxfr,
- { "Max Frames RX", "selfm.fastser.def_rx_maxfr", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_def_tx_maxfr,
- { "Max Frames TX", "selfm.fastser.def_tx_maxfr", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_def_rx_num_fc,
- { "Number of Supported RX Function Codes", "selfm.fastser.def_rx_num_fc", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_def_rx_fc,
- { "Receive Function Code", "selfm.fastser.def_rx_fc", FT_UINT8, BASE_HEX | BASE_EXT_STRING, &selfm_fastser_func_code_vals_ext, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_def_tx_num_fc,
- { "Number of Supported TX Function Codes", "selfm.fastser.def_tx_num_fc", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_def_tx_fc,
- { "Transmit Function Code", "selfm.fastser.def_tx_fc", FT_UINT8, BASE_HEX | BASE_EXT_STRING, &selfm_fastser_func_code_vals_ext, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_uns_en_fc,
- { "Function Code to Enable", "selfm.fastser.uns_en_fc", FT_UINT8, BASE_HEX | BASE_EXT_STRING, &selfm_fastser_func_code_vals_ext, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_uns_en_fc_data,
- { "Function Code Data", "selfm.fastser.uns_en_fc_data", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_uns_dis_fc,
- { "Function Code to Disable", "selfm.fastser.uns_dis_fc", FT_UINT8, BASE_HEX | BASE_EXT_STRING, &selfm_fastser_func_code_vals_ext, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_uns_dis_fc_data,
- { "Function Code Data", "selfm.fastser.uns_dis_fc_data", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_unsresp_orig,
- { "Origination path", "selfm.fastser.unsresp_orig", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_unsresp_doy,
- { "Day of Year", "selfm.fastser.unsresp_doy", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_unsresp_year,
- { "Year", "selfm.fastser.unsresp_year", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_unsresp_todms,
- { "Time of Day (in ms)", "selfm.fastser.unsresp_todms", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_unsresp_num_elmt,
- { "Number of SER Elements", "selfm.fastser.unsresp_num_elmt", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_unsresp_elmt_idx,
- { "SER Element Index", "selfm.fastser.unsresp_elmt_idx", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_unsresp_elmt_ts_ofs,
- { "SER Element Timestamp Offset (us)", "selfm.fastser.unsresp_elmt_ts_ofs", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_unsresp_elmt_status,
- { "SER Element Status", "selfm.fastser.unsresp_elmt_status", FT_UINT8, BASE_DEC, VALS(selfm_ser_status_vals), 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_unsresp_eor,
- { "End of Record Indicator", "selfm.fastser.unsresp_eor", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_unsresp_elmt_statword,
- { "SER Element Status Word", "selfm.fastser.unsresp_elmt_statword", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_unswrite_addr1,
- { "Write Address Region #1", "selfm.fastser.unswrite_addr1", FT_UINT16, BASE_HEX | BASE_EXT_STRING, &selfm_fastser_unswrite_com_vals_ext, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_unswrite_addr2,
- { "Write Address Region #2", "selfm.fastser.unswrite_addr2", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_unswrite_num_reg,
- { "Number of Registers", "selfm.fastser.unswrite_num_reg", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_unswrite_reg_val,
- { "Register Value", "selfm.fastser.unswrite_reg_val", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_baseaddr,
- { "Base Address", "selfm.fastser.baseaddr", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_numwords,
- { "Number of 16-bit Words", "selfm.fastser.numwords", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_flags,
- { "Flag Word", "selfm.fastser.flags", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_datafmt_resp_numitem,
- { "Number of Data Items Records", "selfm.fastser.datafmt_resp_numitem", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_dataitem_qty,
- { "Data Item Quantity", "selfm.fastser.dataitem_qty", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_dataitem_type,
- { "Data Item Type", "selfm.fastser.dataitem_type", FT_UINT16, BASE_HEX, VALS(selfm_fastser_tagtype_vals), 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_dataitem_uint16,
- { "(uint16)", "selfm.fastser.dataitem_uint16", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_dataitem_int16,
- { "(int16)", "selfm.fastser.dataitem_int16", FT_INT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_dataitem_uint32,
- { "(uint32)", "selfm.fastser.dataitem_uint32", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_dataitem_int32,
- { "(int32)", "selfm.fastser.dataitem_int32", FT_INT32, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_dataitem_float,
- { "(float)", "selfm.fastser.dataitem_float", FT_FLOAT, BASE_NONE, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_devdesc_num_region,
- { "Number of Data Regions", "selfm.fastser.devdesc_num_region", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_devdesc_num_ctrl,
- { "Number of Control Regions", "selfm.fastser.devdesc_num_ctrl", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_soe_req_orig,
- { "Origination path", "selfm.fastser.soe_req_orig", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_soe_resp_numblks,
- { "Number of Blocks", "selfm.fastser.soe_resp_numblks", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_soe_resp_orig,
- { "Origination path", "selfm.fastser.soe_resp_orig", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_soe_resp_numbits,
- { "Number of Bits", "selfm.fastser.soe_resp_numbits", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_soe_resp_pad,
- { "Pad Byte", "selfm.fastser.soe_resp_pad", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_soe_resp_doy,
- { "Day of Year", "selfm.fastser.soe_resp_doy", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_soe_resp_year,
- { "Year", "selfm.fastser.soe_resp_year", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- { &hf_selfm_fastser_soe_resp_tod,
- { "Time of Day (ms)", "selfm.fastser.soe_resp_tod", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }},
- /* { &hf_selfm_fastser_soe_resp_data,
- { "Packed Binary State Data", "selfm.fastser.soe_resp_data", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }}, */
-
- /* "Fast SER Message" Re-assembly header fields */
+ /* "Fast Message" specific fields */
+ { &hf_selfm_fastmsg_len,
+ { "Length", "selfm.fastmsg.len", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_routing_addr,
+ { "Routing Address (future)", "selfm.fastmsg.routing_addr", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_status,
+ { "Status Byte", "selfm.fastmsg.status", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_funccode,
+ { "Function Code", "selfm.fastmsg.funccode", FT_UINT8, BASE_HEX | BASE_EXT_STRING, &selfm_fastmsg_func_code_vals_ext, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_seq,
+ { "Sequence Byte", "selfm.fastmsg.seq", FT_UINT8, BASE_HEX, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_seq_fir,
+ { "FIR", "selfm.fastmsg.seq_fir", FT_BOOLEAN, 8, NULL, FAST_MSG_SEQ_FIR, NULL, HFILL }},
+ { &hf_selfm_fastmsg_seq_fin,
+ { "FIN", "selfm.fastmsg.seq_fin", FT_BOOLEAN, 8, NULL, FAST_MSG_SEQ_FIN, NULL, HFILL }},
+ { &hf_selfm_fastmsg_seq_cnt,
+ { "Count", "selfm.fastmsg.seq_cnt", FT_UINT8, BASE_DEC, NULL, FAST_MSG_SEQ_CNT, "Frame Count Number", HFILL }},
+ { &hf_selfm_fastmsg_resp_num,
+ { "Response Number", "selfm.fastmsg.resp_num", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_crc16,
+ { "CRC-16", "selfm.fastmsg.crc16", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_def_route_sup,
+ { "Routing Support", "selfm.fastmsg.def_route_sup", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_def_rx_stat,
+ { "Status RX", "selfm.fastmsg.def_rx_stat", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_def_tx_stat,
+ { "Status TX", "selfm.fastmsg.def_tx_stat", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_def_rx_maxfr,
+ { "Max Frames RX", "selfm.fastmsg.def_rx_maxfr", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_def_tx_maxfr,
+ { "Max Frames TX", "selfm.fastmsg.def_tx_maxfr", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_def_rx_num_fc,
+ { "Number of Supported RX Function Codes", "selfm.fastmsg.def_rx_num_fc", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_def_rx_fc,
+ { "Receive Function Code", "selfm.fastmsg.def_rx_fc", FT_UINT8, BASE_HEX | BASE_EXT_STRING, &selfm_fastmsg_func_code_vals_ext, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_def_tx_num_fc,
+ { "Number of Supported TX Function Codes", "selfm.fastmsg.def_tx_num_fc", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_def_tx_fc,
+ { "Transmit Function Code", "selfm.fastmsg.def_tx_fc", FT_UINT8, BASE_HEX | BASE_EXT_STRING, &selfm_fastmsg_func_code_vals_ext, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_uns_en_fc,
+ { "Function Code to Enable", "selfm.fastmsg.uns_en_fc", FT_UINT8, BASE_HEX | BASE_EXT_STRING, &selfm_fastmsg_func_code_vals_ext, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_uns_en_fc_data,
+ { "Function Code Data", "selfm.fastmsg.uns_en_fc_data", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_uns_dis_fc,
+ { "Function Code to Disable", "selfm.fastmsg.uns_dis_fc", FT_UINT8, BASE_HEX | BASE_EXT_STRING, &selfm_fastmsg_func_code_vals_ext, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_uns_dis_fc_data,
+ { "Function Code Data", "selfm.fastmsg.uns_dis_fc_data", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_unsresp_orig,
+ { "Origination path", "selfm.fastmsg.unsresp_orig", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_unsresp_doy,
+ { "Day of Year", "selfm.fastmsg.unsresp_doy", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_unsresp_year,
+ { "Year", "selfm.fastmsg.unsresp_year", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_unsresp_todms,
+ { "Time of Day (in ms)", "selfm.fastmsg.unsresp_todms", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_unsresp_num_elmt,
+ { "Number of SER Elements", "selfm.fastmsg.unsresp_num_elmt", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_unsresp_elmt_idx,
+ { "SER Element Index", "selfm.fastmsg.unsresp_elmt_idx", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_unsresp_elmt_ts_ofs,
+ { "SER Element Timestamp Offset (us)", "selfm.fastmsg.unsresp_elmt_ts_ofs", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_unsresp_elmt_status,
+ { "SER Element Status", "selfm.fastmsg.unsresp_elmt_status", FT_UINT8, BASE_DEC, VALS(selfm_ser_status_vals), 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_unsresp_eor,
+ { "End of Record Indicator", "selfm.fastmsg.unsresp_eor", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_unsresp_elmt_statword,
+ { "SER Element Status Word", "selfm.fastmsg.unsresp_elmt_statword", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_unswrite_addr1,
+ { "Write Address Region #1", "selfm.fastmsg.unswrite_addr1", FT_UINT16, BASE_HEX | BASE_EXT_STRING, &selfm_fastmsg_unswrite_com_vals_ext, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_unswrite_addr2,
+ { "Write Address Region #2", "selfm.fastmsg.unswrite_addr2", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_unswrite_num_reg,
+ { "Number of Registers", "selfm.fastmsg.unswrite_num_reg", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_unswrite_reg_val,
+ { "Register Value", "selfm.fastmsg.unswrite_reg_val", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_baseaddr,
+ { "Base Address", "selfm.fastmsg.baseaddr", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_numwords,
+ { "Number of 16-bit Words", "selfm.fastmsg.numwords", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_flags,
+ { "Flag Word", "selfm.fastmsg.flags", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_datafmt_resp_numitem,
+ { "Number of Data Items Records", "selfm.fastmsg.datafmt_resp_numitem", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_dataitem_qty,
+ { "Data Item Quantity", "selfm.fastmsg.dataitem_qty", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_dataitem_type,
+ { "Data Item Type", "selfm.fastmsg.dataitem_type", FT_UINT16, BASE_HEX, VALS(selfm_fastmsg_tagtype_vals), 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_dataitem_uint16,
+ { "(uint16)", "selfm.fastmsg.dataitem_uint16", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_dataitem_int16,
+ { "(int16)", "selfm.fastmsg.dataitem_int16", FT_INT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_dataitem_uint32,
+ { "(uint32)", "selfm.fastmsg.dataitem_uint32", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_dataitem_int32,
+ { "(int32)", "selfm.fastmsg.dataitem_int32", FT_INT32, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_dataitem_float,
+ { "(float)", "selfm.fastmsg.dataitem_float", FT_FLOAT, BASE_NONE, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_devdesc_num_region,
+ { "Number of Data Regions", "selfm.fastmsg.devdesc_num_region", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_devdesc_num_ctrl,
+ { "Number of Control Regions", "selfm.fastmsg.devdesc_num_ctrl", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_soe_req_orig,
+ { "Origination path", "selfm.fastmsg.soe_req_orig", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_soe_resp_numblks,
+ { "Number of Blocks", "selfm.fastmsg.soe_resp_numblks", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_soe_resp_orig,
+ { "Origination path", "selfm.fastmsg.soe_resp_orig", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_soe_resp_numbits,
+ { "Number of Bits", "selfm.fastmsg.soe_resp_numbits", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_soe_resp_pad,
+ { "Pad Byte", "selfm.fastmsg.soe_resp_pad", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_soe_resp_doy,
+ { "Day of Year", "selfm.fastmsg.soe_resp_doy", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_soe_resp_year,
+ { "Year", "selfm.fastmsg.soe_resp_year", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ { &hf_selfm_fastmsg_soe_resp_tod,
+ { "Time of Day (ms)", "selfm.fastmsg.soe_resp_tod", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }},
+ /* { &hf_selfm_fastmsg_soe_resp_data,
+ { "Packed Binary State Data", "selfm.fastmsg.soe_resp_data", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }}, */
+
+ /* "Fast Message" Re-assembly header fields */
{ &hf_selfm_fragment,
{ "SEL Fast Msg Response Data Fragment", "selfm.respdata.fragment", FT_FRAMENUM, BASE_NONE, NULL, 0x0, "SEL Fast Message Response Data Fragment", HFILL }},
{ &hf_selfm_fragments,
@@ -2971,13 +2971,13 @@ proto_register_selfm(void)
&ett_selfm_fmdata_dig,
&ett_selfm_fmdata_ai_ch,
&ett_selfm_fmdata_dig_ch,
- &ett_selfm_fastser,
- &ett_selfm_fastser_seq,
- &ett_selfm_fastser_def_fc,
- &ett_selfm_fastser_tag,
- &ett_selfm_fastser_element_list,
- &ett_selfm_fastser_element,
- &ett_selfm_fastser_datareg,
+ &ett_selfm_fastmsg,
+ &ett_selfm_fastmsg_seq,
+ &ett_selfm_fastmsg_def_fc,
+ &ett_selfm_fastmsg_tag,
+ &ett_selfm_fastmsg_element_list,
+ &ett_selfm_fastmsg_element,
+ &ett_selfm_fastmsg_datareg,
&ett_selfm_fragment,
&ett_selfm_fragments