Guy Harris wrote:
> What's the code in the subdissector that adds the top-level entry for  
> the protocol?

Sorry - I just realized you asked for the subdissector code, and I sent
the dissector code for the top-level protocol.  At least you can check that
I'm calling dissector_try_port properly...

Here's the subdissector code:

static int
dissect_alp_commonr(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
{
    guint seqno = tvb_get_ntoh24(tvb, 0);

    if (check_col(pinfo->cinfo,COL_INFO)){
        col_append_fstr(pinfo->cinfo, COL_INFO, " CmdSeq=0x%x", seqno);
    }

    if (tree) { // we are being asked for details
        proto_item *ti = NULL;
        proto_tree *alp_commonr_tree = NULL;

        ti = proto_tree_add_item(tree, proto_alp_commonr, tvb, 0,
                                 sizeof(struct n_basic_cmd), FALSE);
        proto_item_append_text(ti, ", CmdSeq: 0x%x", seqno);
        alp_commonr_tree = proto_item_add_subtree(ti, ett_alp_commonr);
        proto_tree_add_item(alp_commonr_tree, hf_alp_commonr_seq_num, tvb,
                            OFFANDSIZE(n_basic_cmd, cmd_seq),
                            FALSE);
        proto_tree_add_item(alp_commonr_tree, hf_alp_commonr_x, tvb,
                            OFFANDSIZE(n_basic_cmd, x),
                            FALSE);
        proto_tree_add_item(alp_commonr_tree, hf_alp_commonr_y, tvb,
                            OFFANDSIZE(n_basic_cmd, y),
                            FALSE);
        proto_tree_add_item(alp_commonr_tree, hf_alp_commonr_width, tvb,
                            OFFANDSIZE(n_basic_cmd, width),
                            FALSE);
        proto_tree_add_item(alp_commonr_tree, hf_alp_commonr_height, tvb,
                            OFFANDSIZE(n_basic_cmd, height),
                            FALSE);
    }
    return(sizeof(struct n_basic_cmd));
}       


I get the COL_INFO update, and I can trace that the code is going into
the branch where it's making the proto_tree_add_item() calls (and verified
that proto_alp_commonr is getting registered/initialized), but none of
that appears...

-Bob

_______________________________________________
Wireshark-dev mailing list
Wireshark-dev@wireshark.org
http://www.wireshark.org/mailman/listinfo/wireshark-dev

Reply via email to