Commit Graph

190 Commits

Author SHA1 Message Date
Stig Bjørlykke fadd2ae1c8 Removed TAB as indent.
Fixed regex for modifying absolute paths in header.

svn path=/trunk/; revision=51776
2013-09-05 08:22:44 +00:00
Jörg Mayer 8b842aeb02 Adapt generated output to always print paths relative to
the asn1/<proto>/ subdir. This makes cmake generated builds
look identical to autotools generated builds.

svn path=/trunk/; revision=51775
2013-09-05 07:38:32 +00:00
Gerald Combs e6202124eb Make sure we're compatible with Python 2 + 3. Tested with Pythons 2.5,
2.7, and 3.3.

svn path=/trunk/; revision=51105
2013-08-02 00:16:14 +00:00
Tomas Kukosa fd5c1ddf5c Allow C directives in #.FN_HDR, #.FN_FTR, #.FN_BODY, they have to start with ##
svn path=/trunk/; revision=49763
2013-06-04 14:07:36 +00:00
Pascal Quantin 0ee4d0a00a Postfix FT_NONE fields with "_element" string to reduce number of incompatible filters in ASN.1 dissectors
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=2402

svn path=/trunk/; revision=49599
2013-05-27 20:26:49 +00:00
Gerald Combs a6131151f5 Use consistent "generated automatically" wording which will hopefully be
picked up by licensecheck.

svn path=/trunk/; revision=48812
2013-04-10 21:24:19 +00:00
Anders Broman a9ed804565 From Tomas Kukosa:
Make it possible to sort LocalCode value_strings.

svn path=/trunk/; revision=48720
2013-04-03 16:52:56 +00:00
Tomas Kukosa 109c2326e2 OPERATION and ERROR tables can loop through only items with either local or global CODEs
svn path=/trunk/; revision=48476
2013-03-22 07:30:32 +00:00
Balint Reczey 1ebdb2e521 Export libwireshark symbols using WS_DLL_PUBLIC define
Also remove old WS_VAR_IMPORT define and related Makefile magic
everywhere in the project.

svn path=/trunk/; revision=47992
2013-03-01 23:53:11 +00:00
Jakub Zawadzki 5a8783f5b1 Initial commit to support yet another method of passing data between dissectors.
Add new parameter 'data' to heur_dissector_t and new_dissector_t, for now it's always NULL

svn path=/trunk/; revision=44860
2012-09-10 21:40:21 +00:00
Pascal Quantin babe622987 Use G_MININT32 instead of -2^31 so as to get rid of 'this decimal constant is unsigned only in ISO C90' warning
svn path=/trunk/; revision=43764
2012-07-17 13:12:50 +00:00
Jeff Morriss cf012d27b1 Build the ASN.1 dissectors directly into epan/dissectors (rather than building
them and then copying them over).  The "all" target to builds these dissectors
now (instead of "generate_files" and/or "copy_files").

asn2wrs's "-O" option now means "the dissector goes in this directory" (rather
than "all output goes in this directory"); it also means that the "-s" (single
output file) option is now required.

Fix things up so that it's possible to build all of the ASN.1 dissectors in
one shot.

Fix building of conformance files when doing out-of-source-tree builds.


Unfortunately "make all" in the asn1 directory always builds something--I think
because of circular depedencies.

svn path=/trunk/; revision=39333
2011-10-10 02:31:11 +00:00
Stig Bjørlykke 46ae76bf6c Always generate packet-*-exp.h.
This fixes a bug when only exporting _PDU objects, and we can have
'#include "packet-*-exp.h"' in packet-*-template.h even when having
no #.EXPORTS in the conformation file.

svn path=/trunk/; revision=39320
2011-10-09 10:42:54 +00:00
Tomas Kukosa 733452afd7 Support for Extension Addition Group in PER encoding
Fix for bug 6196 https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6199

svn path=/trunk/; revision=38421
2011-08-09 08:00:06 +00:00
Gerald Combs a5b20fbdf6 Add a relative path to the "#line" directives we produce. Regenerate the
SNMP and SPNEGO dissectors to see if it helps Coverity locate the
original source files.

svn path=/trunk/; revision=36522
2011-04-08 19:51:39 +00:00
Anders Broman 0119e04527 Try to enhance output at ValueError to ease debugging.
svn path=/trunk/; revision=35578
2011-01-19 06:33:33 +00:00
Balint Reczey 04386e3ca1 Raise Exceptions containing a string instead of string exceptions
This fixes https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=4846

svn path=/trunk/; revision=35258
2010-12-23 23:36:48 +00:00
Guy Harris a8bc4a0d13 Rename the routines that handle dissector tables with unsigned integer
keys to have _uint in their names, to match the routines that handle
dissector tables with string keys.  (Using _port can confuse people into
thinking they're intended solely for use with TCP/UDP/etc. ports when,
in fact, they work better for things such as Ethernet types, where the
binding of particular values to particular protocols are a lot
stronger.)

svn path=/trunk/; revision=35224
2010-12-20 05:35:29 +00:00
Bill Meier 1b7474fab6 Sort value_string array by value if used with value_str_ext fcns;
svn path=/trunk/; revision=34874
2010-11-14 23:48:07 +00:00
Tomas Kukosa 5fbdb1c378 Generate proper extension flags for empty constructed types SEQUENCE { ... } and CHOICE { ... }
svn path=/trunk/; revision=34400
2010-10-07 14:24:04 +00:00
Tomas Kukosa 7c60d30dc5 - fix using hex values as constraint
- avoid crash if unknown type is used in type assignment

svn path=/trunk/; revision=33905
2010-08-24 05:53:17 +00:00
Graeme Lunt 5aa05c8559 New "#.SYNTAX" section for the asn2wrs conformance file.
This allows syntaxes to be registered separately from PDUs.
Within the new section, the ASN.1 types to be used as syntaxes should be iterated. 
An optional second parameter on each line may be provided to provide an alternative name for the syntax (that the user will see). This name must be in double quotes.



svn path=/trunk/; revision=33370
2010-06-29 12:16:10 +00:00
Graeme Lunt 0d9ad5016e Remove the -R flag (used to generate syntax registrations) and replace with a
packet-<proto>-syn-reg.c output file. This is more generic and allows the 
syntax registrations to the directed from the template file.


svn path=/trunk/; revision=33342
2010-06-28 09:26:41 +00:00
Graeme Lunt 2e28eb7b5f New option (-r) to allow a prefix to be removed from type names.
Usage: asn2wrs.py -r prefix

This is used by x509sat where a prefix is used in type names to 
avoid conflicts with built-in types.


svn path=/trunk/; revision=33298
2010-06-23 11:00:46 +00:00
Graeme Lunt a3300280f2 New option (-R) to asn2wrs to register the PDUs defined in the conformance file as BER syntaxes (register_ber_syntax_dissector()).
svn path=/trunk/; revision=33175
2010-06-09 09:27:28 +00:00
Tomas Kukosa 2f0c4dde50 Support of value_string_ext in the asn2wrs using new directive #.USE_VALS_EXT
Example usage in NBAP

svn path=/trunk/; revision=32944
2010-05-25 09:07:12 +00:00
Tomas Kukosa 0611ae90a0 Support of AUTOMATIC tagging environment
(necessary for generating e.g. H.248 from original ASN.1 source)

svn path=/trunk/; revision=32782
2010-05-13 13:16:26 +00:00
Tomas Kukosa e32b9b9062 ASN.1 compiler accepts version brackets in SEQUENCE and CHOICE extensions
svn path=/trunk/; revision=32781
2010-05-13 10:00:37 +00:00
Jeff Morriss a0c858efcd Add a little more code to avoid not-very-useful blurbs:
- Change spaces in the name to underscores before comparing it to the blurb.
  - Check if the type simply as T_ prepended to the name.
  - Don't put in a blurb of "NULL".

and regenerate the dissectors.

svn path=/trunk/; revision=32748
2010-05-11 03:53:31 +00:00
Jeff Morriss e743c4e101 Try to avoid the user confusion reported in
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=3477 by not using blurbs
that look like abbreviations (filter strings).

While we're at it try to avoid giving blurbs that are identical (or nearly so)
to the field name.

Regenerate a couple of dissectors like this to prove out the idea.

svn path=/trunk/; revision=32673
2010-05-05 14:29:55 +00:00
Balint Reczey eef2b5a361 Revert accidentally committed change
svn path=/trunk/; revision=32031
2010-02-27 13:24:42 +00:00
Balint Reczey 339131d835 Prevent potential crash in libsmi.
From: Vincent Bernat <bernat@debian.org>

svn path=/trunk/; revision=32006
2010-02-25 19:28:58 +00:00
Anders Broman 984524db42 Fix from Tomas Kukosa to resolve problem with large negative intiger constraints
"packet-rrlp-fn.c:2391: warning: integer constant is too large for 'long' type."

svn path=/trunk/; revision=31777
2010-02-03 16:58:52 +00:00
Stig Bjørlykke 6a433058f9 Added check for SIZE constraints in bit-string.
svn path=/trunk/; revision=31447
2010-01-05 11:38:33 +00:00
Stig Bjørlykke e73a89d91a Added option (-C) to check for SIZE constraints in octet-string, integer,
enumerated, sequence-of and set-of types.

Added BER functions to check for SIZE constraints and give expert info warnings.

svn path=/trunk/; revision=31309
2009-12-18 15:18:31 +00:00
Anders Broman ba6d7aa766 Handle lenght restriction extension of restricted strings.
Fixes 
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=4251

svn path=/trunk/; revision=31048
2009-11-22 17:01:56 +00:00
Stig Bjørlykke 13201ce6b7 Default to BASE_NONE for FT_BOOLEAN with zero value for display.
svn path=/trunk/; revision=28803
2009-06-22 06:16:39 +00:00
Stig Bjørlykke 7cd1a1d38b Write NULL for empty blurb.
svn path=/trunk/; revision=28773
2009-06-19 03:37:52 +00:00
Stig Bjørlykke dec6ea57ae Use BASE_NONE for FT_BYTES.
svn path=/trunk/; revision=28769
2009-06-18 21:26:13 +00:00
Stig Bjørlykke cbcd176043 Improved name and abbrev used for sequence of and set of elements.
svn path=/trunk/; revision=28377
2009-05-16 22:01:19 +00:00
Anders Broman e5d6ac8615 Use G_GINT64_CONSTANT in stead of G_GUINT4_CONSTANT
svn path=/trunk/; revision=28048
2009-04-14 18:10:45 +00:00
Tomas Kukosa 3d8d91d80c support UINT64 constants for upper value bounds
svn path=/trunk/; revision=28042
2009-04-14 07:34:56 +00:00
Anders Broman 99bbe55222 Make it possible to check for extension marker in SEQUENCE OF and SET OF.
Fore some reason  the trace in bug https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=3360 does not decode properly
if dissecting the exension marker so leave that code #if 0:ed out for now.

svn path=/trunk/; revision=27848
2009-03-25 22:04:23 +00:00
Tomas Kukosa 33763b7a53 - resolve one reduce/reduce conflict in grammar
- fix obsolete Python constructions

svn path=/trunk/; revision=27367
2009-02-04 13:24:09 +00:00
Tomas Kukosa c5ecbf6d40 fix all warn_explicit() usages incompatible with Python 2.6
svn path=/trunk/; revision=26788
2008-11-15 19:53:05 +00:00
Tomas Kukosa e20cfef6f9 - new #.MODULE_EXPORTS directive which exports symbols including module prefix, used to avoid conflicts when two modules have types with the same name and they need to be used together
- fix few Python warnings

svn path=/trunk/; revision=26738
2008-11-10 13:27:41 +00:00
Anders Broman 7ce0cd961e From Pascal Quantin:
ASN.1: display the real name of SEQUENCE/TYPE OF parameters

svn path=/trunk/; revision=26669
2008-11-01 22:28:56 +00:00
Stig Bjørlykke d255e44bfa From Martin Peylo (bug 2507):
The attached patch enables asn2wrs.py and packet-ber.c to decode UTCTime
according to the definitions in X.680.

svn path=/trunk/; revision=25897
2008-08-01 16:44:06 +00:00
Tomas Kukosa b2b6786670 cleanup code (remove some collapsed conditions)
svn path=/trunk/; revision=24215
2008-01-28 17:34:38 +00:00
Tomas Kukosa b1d62c4418 use FN_VARIANT parameter in INTEGER type for planned 64bit variants
svn path=/trunk/; revision=24087
2008-01-14 11:21:09 +00:00
Tomas Kukosa 27a531e06a more sophisticated H245 OLC handling focusing on more reliable T.38 establishment
svn path=/trunk/; revision=24043
2008-01-09 13:30:31 +00:00
Anders Broman de16039c51 Get rid of dissect_ber_boolean_value() and change the signature of
dissect_ber_boolean() to return a value and update asn2wrs to generate the new signature.
Regenerate all BER dissectors.

svn path=/trunk/; revision=24015
2008-01-04 16:21:07 +00:00
Tomas Kukosa 7529f33437 support for additionally SIZE constrained Typereference
the support is only semiautomated as this feature does not occur very often
use this feature for the TBCD-STRING in the H.225 dissector

svn path=/trunk/; revision=23958
2007-12-28 10:42:44 +00:00
Tomas Kukosa 1e794fc494 ANSI TCAP regenerated and tested with -T -X asn2wrs options
asn2wrs has -T (tagged types support) and -X (new BER sttructures) default behavior
remove all -T and -X usage

svn path=/trunk/; revision=23823
2007-12-10 08:35:41 +00:00
Tomas Kukosa 1bef58264a fix field attributes handling for tagged types
regenerate involved dissectors

svn path=/trunk/; revision=23783
2007-12-06 11:23:35 +00:00
Tomas Kukosa d32d2e9525 better built-in X.880 support
forward declarations of OPERATION and ERROR classes are not necessary when Remote-Operations-Information-Objects.asn itself is compiled

svn path=/trunk/; revision=23328
2007-11-01 11:56:33 +00:00
Tomas Kukosa 6090991c45 small improvement in class fields handling
svn path=/trunk/; revision=23321
2007-10-31 12:57:01 +00:00
Tomas Kukosa 0386717cf0 accept VariableTypeValueFieldSpec syntax and ParameterizedObjectClass syntax
svn path=/trunk/; revision=23320
2007-10-31 09:33:54 +00:00
Tomas Kukosa 84488ec016 asn2wrs
- parameterized object class assignment
 - octet string with extensible size constraint
 - RELATIVE-OID type (still not supported in packet-per/ber)
packet-per
 - octet string with extensible size constraint
more dissect_per_... functions exported from libwireshark.dll
PER dissectors regenerated
add forgotten packet-h323-template.h
fix svn properties for h323 files

svn path=/trunk/; revision=23309
2007-10-29 19:25:37 +00:00
Tomas Kukosa 49495dfb85 fix export of ObjectFieldSpec and ObjectSetFieldSpec of CLASS
svn path=/trunk/; revision=23250
2007-10-22 19:29:29 +00:00
Tomas Kukosa 44800d2c5a H.460 new dissector implemented (H.460.2-H.460.22)
H.225
 - change RysMessage_vals to h225_Rasmessage_vals
 - use #.PDU directive for H323-UserInformation and RasMessage instead of implementing it by hands
 - register RasMessage_PDU as "h225.ras" dissector for calling it from H.460
asn2wrs make PDUs exportable

svn path=/trunk/; revision=23226
2007-10-18 13:35:57 +00:00
Tomas Kukosa b4ed21c3e6 - new command line option -E which makes just .cnf export file
- new directive #.IMPORT which ignores nonexistent input file if -E is used
- type name parameter for #.FN_HDR and #.FN_FTR is optional if #.FN_PARS or #.FN_HDR precedes

svn path=/trunk/; revision=23181
2007-10-15 11:51:01 +00:00
Jörg Mayer 2e37539cd5 Remove path at two more places from the output
svn path=/trunk/; revision=23155
2007-10-11 23:21:51 +00:00
Tomas Kukosa e6290e8edc put only file basename into #line directives
svn path=/trunk/; revision=23146
2007-10-11 14:48:12 +00:00
Tomas Kukosa 207837b284 do not prepend './' before input file name if -D <dir> option is not used
it made problem with absolute path usage

svn path=/trunk/; revision=23068
2007-10-05 07:36:51 +00:00
Tomas Kukosa 0f31c30b4b support of 'ANY DEFINED BY' from X.208 which is obsolete but still used in some RFCs
svn path=/trunk/; revision=23043
2007-10-02 06:52:11 +00:00
Jörg Mayer 0cb93f22ba Add command line switch
-D dir        : Directory for input_file(s) (default: '.')
to allow asn2wrs being used in out of tree builds.

Beautify -h output a bit.

svn path=/trunk/; revision=22938
2007-09-24 13:49:25 +00:00
Tomas Kukosa e256ad3713 new directive #.ASSIGN_VALUE_TO_TYPE
svn path=/trunk/; revision=22725
2007-08-29 11:47:35 +00:00
Jörg Mayer 0576eb451f Make Windows path separator look like Unix path separator.
That way, we will not have irrelevant diffs depending on
the platform the last submitter built the dissector on.

svn path=/trunk/; revision=22624
2007-08-24 06:51:10 +00:00
Tomas Kukosa 396ceb5607 NBAP rewritten to use original ASN.1 source and updated to TS 25.433 V7.5.0 (2007-06)
svn path=/trunk/; revision=22490
2007-08-13 11:15:39 +00:00
Tomas Kukosa 5a46ea46b5 H.450 regenerated from original ASN.1 sources
svn path=/trunk/; revision=22417
2007-07-30 08:01:59 +00:00
Tomas Kukosa 3b5c406f8c QSIG fully implemented
svn path=/trunk/; revision=22361
2007-07-20 09:54:47 +00:00
Tomas Kukosa 17feb32ca9 change QSIG tables structure so as they can be generated automatically from ASN.1 in the next step
svn path=/trunk/; revision=22354
2007-07-19 11:41:10 +00:00
Tomas Kukosa 698426f6b8 support for syntax of TYPE-IDENTIFIER and ABSTRACT-SYNTAX classes
svn path=/trunk/; revision=22332
2007-07-17 09:59:35 +00:00
Tomas Kukosa 7c5aa2d461 small changes in value reference handling and parameterized object assignment handling
svn path=/trunk/; revision=22234
2007-07-03 11:01:21 +00:00
Tomas Kukosa 8d3fd802e3 - HSTRING value support
- accept any type in CONSTRAINED BY

svn path=/trunk/; revision=22232
2007-07-02 13:03:39 +00:00
Tomas Kukosa 546176eaaf register type of OPERATION fields &ArgumentType and &ResultType and ERROR field &ParemeterType if other type than Typereference is used
svn path=/trunk/; revision=22230
2007-07-02 12:22:05 +00:00
Tomas Kukosa 992aa0798d - implementation of OPERATION and ERROR objects support started
- new #.TABLE... directives to printout objects into output files 

svn path=/trunk/; revision=22223
2007-06-29 11:28:35 +00:00
Tomas Kukosa 2c33ab54e7 check conflict in CLASS fields redefinition
svn path=/trunk/; revision=22203
2007-06-27 14:26:17 +00:00
Tomas Kukosa 705f89de7a - INSTANCE OF type support
- fix bug in empty SET handling
- partial support for OpenTypeFieldVal
- allow useful object classes in ObjectFieldSpec and ObjectSetFieldSpec

svn path=/trunk/; revision=22202
2007-06-27 08:13:53 +00:00
Tomas Kukosa 283c094ec3 comment out some forgotten debug printouts
svn path=/trunk/; revision=22185
2007-06-25 10:26:21 +00:00
Tomas Kukosa c2172dbc5b - fix field type FT_... for SelectionType
- fix OPTIONAL handling in CLASS definition
- Q.932 ROS regenerated

svn path=/trunk/; revision=22184
2007-06-25 08:58:27 +00:00
Tomas Kukosa 2c362d3e8d - improve compilation (passing type information) if modules are not merged with -p option
- start "module grouping" compilation feature

svn path=/trunk/; revision=22063
2007-06-07 06:05:36 +00:00
Tomas Kukosa b4d36142ed build-in OPERATION and ERROR classes definition
svn path=/trunk/; revision=22056
2007-06-06 09:46:35 +00:00
Tomas Kukosa 1dcf2aaef0 use ASN.1 type names in #.FN_BODY (instead of Wireshark type names)
svn path=/trunk/; revision=22054
2007-06-06 08:12:27 +00:00
Tomas Kukosa 0fec7475c0 replace '&' with '_' in asn2c() function
svn path=/trunk/; revision=22046
2007-06-05 13:43:45 +00:00
Tomas Kukosa 31e45c7a21 not allow #.FN_HDR/FTR for Wireshark types but only for ASN.1 types
it makes interconnection between .cnf file and ASN.1 source more readable
(changes for #.FN_BODY will follow)

svn path=/trunk/; revision=22043
2007-06-05 12:00:57 +00:00
Tomas Kukosa 368528502e few small changes to compile INAP (Q.1248.x) from original ASN.1 source
svn path=/trunk/; revision=22042
2007-06-05 08:33:39 +00:00
Tomas Kukosa eb782d0cea - CLASS definitions support including exports through the *-exp.cnf file
- support of extension in middle of SEQUENCE root elements
- new option EMBEDDED_PDV_CB to set default callback
- ChoiceValue support at syntax level
- ValueSet support at syntax level
- exception identifier support
- ValueFromObject support at syntax level
- next minor changes (to compile X.880 and INAP)

- dissectors using classes regenerated

svn path=/trunk/; revision=22036
2007-06-04 14:41:38 +00:00
Anders Broman 4393bceae5 INAP:
- Use (some) IN CS4 asn1 files Q.1248.1 Q.1248.2 Q.1248.3

BER/asn2wrs:
-  Add basic support for EmbeddedPDVType

svn path=/trunk/; revision=22031
2007-06-03 19:58:59 +00:00
Anders Broman 7c5ec2a1e0 Syntax suport for Embedded pdv.
svn path=/trunk/; revision=22025
2007-06-02 12:26:13 +00:00
Tomas Kukosa 7cd09b8fd6 - fix bug in TaggedType support
svn path=/trunk/; revision=22003
2007-05-30 14:22:26 +00:00
Tomas Kukosa 5445d333de - better support if more modules are compiled together
- BSTRING support
- bug fix which sometimes duplicates items in SEQ/CHOICE extension

svn path=/trunk/; revision=22002
2007-05-30 14:13:26 +00:00
Tomas Kukosa 41ac062479 - COMPONENTS OF implementation (can be used only inside one module or more modules compiled together, can not be done across exported/imported types)
- if protocol name contains dot '.' it is replaced with dash '-' for default output filename
- fix bug in more modules output handling if they are not merged together but output is done one by one
- new #.OPT option EXTERNAL_TYPE_CB for default EXTERNAL type callback
- start of X.880 support implementation

svn path=/trunk/; revision=21984
2007-05-29 14:32:46 +00:00
Tomas Kukosa 77a163a6e3 fix SelectionType creation for export (if the type is only exported but not used in module)
svn path=/trunk/; revision=21973
2007-05-28 11:10:41 +00:00
Tomas Kukosa 28b739896d support of SelectionType
e.g. in TCAP
Component{...} ::= CHOICE {
  basicROS  ROS{...},
  returnResultNotLast [7] returnResult < ROS{..}
}

svn path=/trunk/; revision=21972
2007-05-28 10:55:03 +00:00
Tomas Kukosa ddc09877e2 small improvements in value handling, defined INTEGER value can be used in OID value
svn path=/trunk/; revision=21969
2007-05-28 07:10:09 +00:00
Tomas Kukosa 3f071c757a - improvements in registering dissectors to OID table (value defined in ASN.1 can be used)
- new #.END_OF_CNF directive

svn path=/trunk/; revision=21916
2007-05-24 07:19:21 +00:00
Tomas Kukosa e6e55fd517 small fix in duplicate type warning
svn path=/trunk/; revision=21911
2007-05-23 19:35:29 +00:00
Tomas Kukosa fe5ee23c89 - support of CONTAINING constraint in OCTET STRING and BIT STRING
- fix handling of tag for EXTERNAL type
- change automatic postfix for duplicate names from '...%d' to '..._%02d'

svn path=/trunk/; revision=21906
2007-05-23 13:42:05 +00:00