Wireshark mailing list archives

Re: Problems with regenerating lppe dissector


From: Pascal Quantin <pascal.quantin () gmail com>
Date: Mon, 10 Sep 2012 16:26:26 +0200

2012/9/10 Pascal Quantin <pascal.quantin () gmail com>

2012/9/10 Jakub Zawadzki <darkjames-ws () darkjames pl>

Hi,

I'm trying to regenerate packet-lppe.c from asn1/lppe using command:
  ../../tools/asn2wrs.py -p lppe -c ./lppe.cnf -s ./packet-lppe-template
-D . -O ../../epan/dissectors LPPe.asn

Regenerated version doesn't compiles:

../../asn1/lppe/packet-lppe-fn.c:868:77: error: use of undeclared
identifier 'dissect_LPP_PDU_Definitions_GNSS_ID_Bitmap'
  { &hf_lppe_gnssTimeReference, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL
 , dissect_LPP_PDU_Definitions_GNSS_ID_Bitmap },
../../asn1/lppe/packet-lppe-fn.c:1153:75: error: use of undeclared
identifier 'dissect_LPP_PDU_Definitions_GNSS_ID'
  { &hf_lppe_gnss_ID        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL,
dissect_LPP_PDU_Definitions_GNSS_ID },
...

Looking at diff, I have lot of identifier renames, like:
-  { &hf_lppe_gnssTimeReference, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL
 , dissect_lpp_GNSS_ID_Bitmap },
+  { &hf_lppe_gnssTimeReference, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL
 , dissect_LPP_PDU_Definitions_GNSS_ID_Bitmap },
-  { &hf_lppe_ccpAssistanceSuppport, ASN1_EXTENSION_ROOT    ,
ASN1_OPTIONAL    , dissect_lpp_GNSS_SignalIDs },
+  { &hf_lppe_ccpAssistanceSuppport, ASN1_EXTENSION_ROOT    ,
ASN1_OPTIONAL    , dissect_LPP_PDU_Definitions_GNSS_SignalIDs },
...

and hf types changes:
       { "eARFCN", "lppe.eARFCN",
-        FT_UINT32, BASE_DEC, NULL, 0,
+        FT_NONE, BASE_NONE, NULL, 0,
       { "dl-CarrierFreq", "lppe.dl_CarrierFreq",
-        FT_UINT32, BASE_DEC, NULL, 0,
+        FT_NONE, BASE_NONE, NULL, 0,
...

I really need to change only one line:

-static int dissect_OMA_LPPe_MessageExtension_PDU(tvbuff_t *tvb _U_,
packet_info *pinfo _U_, proto_tree *tree _U_) {
+static int dissect_OMA_LPPe_MessageExtension_PDU(tvbuff_t *tvb _U_,
packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {

So I'll commit only this line change, but it'd be great if someone could
look at it.


Hi Jakub,

I'll take care of it later today (as I added both LPP and LPPe dissectors
to the tree, I hope I will be able to figure out what's happening ;) ).

Regards,
Pascal.


Hi Jakub,

LPPe dissector has a dependency to LPP dissector. To generate it, you must
first generate lpp-exp.cnf file. This is handled in the Makefile.common
file found in asn1/lppe:

EXTRA_CNF = \
    $(builddir)/../lpp/lpp-exp.cnf

$(builddir)/../lpp/lpp-exp.cnf:
    (cd $(builddir)/../lpp && $(MAKE_CNF_EXPORT))

Using make instead of executing the asn2wrs.py script directly should allow
you to generate the dissector without errors.

Regards,
Pascal.
___________________________________________________________________________
Sent via:    Wireshark-dev mailing list <wireshark-dev () wireshark org>
Archives:    http://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev
             mailto:wireshark-dev-request () wireshark org?subject=unsubscribe

Current thread: