Commit graph

197 commits

Author SHA1 Message Date
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
Anders Broman
81ee0e3c42 Copy paste error, actx duplicated.
svn path=/trunk/; revision=21892
2007-05-22 21:13:55 +00:00
Anders Broman
dca634c4de Prepare for the use of the new -X parameter for BER encoded protocols.
svn path=/trunk/; revision=21889
2007-05-22 16:17:54 +00:00
Jörg Mayer
5e33afbf50 Don't generate enums that end in a comma
svn path=/trunk/; revision=21888
2007-05-22 16:14:28 +00:00
Tomas Kukosa
16c4aa8e38 - fix asn2wrs crash if typereference assignment has non-default body
- mode directives for assignments omitting 
  (#.NO_OMIT_ASSGN, #.OMIT_ALL_ASSIGNMENTS, #.OMIT_ASSIGNMENTS_EXCEPT, #.OMIT_ALL_TYPE_ASSIGNMENTS, #.OMIT_TYPE_ASSIGNMENTS_EXCEPT, #.OMIT_ALL_VALUE_ASSIGNMENTS, #.OMIT_VALUE_ASSIGNMENTS_EXCEPT)

svn path=/trunk/; revision=21824
2007-05-18 12:48:28 +00:00
Tomas Kukosa
58105364d5 fix crash if C enum for ENUMERATED type is created
svn path=/trunk/; revision=21786
2007-05-15 12:50:13 +00:00
Tomas Kukosa
e62aef53da fix bug - compiler crashes if already imported value or class is defined
svn path=/trunk/; revision=21785
2007-05-15 11:41:45 +00:00
Tomas Kukosa
12abbdb118 command line option -X for "new BER" CHOICE and SEQUENCE table format (type oriented instead of field oriented)
svn path=/trunk/; revision=21779
2007-05-15 08:55:12 +00:00
Tomas Kukosa
35da9bda8a support for value range and unions in permitted alphabet
svn path=/trunk/; revision=21777
2007-05-15 08:15:34 +00:00
Anders Broman
f08cd1e5e3 actx in the rest of dissect_ber..()l
svn path=/trunk/; revision=21773
2007-05-15 05:49:43 +00:00
Tomas Kukosa
25c299ea4e - support of constraint unions
- support of FN_VARIANT parameter for OpenType
- many small changes

svn path=/trunk/; revision=21758
2007-05-14 13:46:09 +00:00
Anders Broman
0bc558f88d actx in ber_external
svn path=/trunk/; revision=21755
2007-05-13 22:01:17 +00:00
Anders Broman
c01f382974 Second step in introducing asn context to BER dissectors just like in PER.
svn path=/trunk/; revision=21753
2007-05-13 20:58:29 +00:00
Tomas Kukosa
a38b44a647 - simple Information Objects support
- all definitions in ASN.1 source are skipped and need not to be commented out
  - #.CLASS directive can define types for Object Class Fields
- do not append 'xxx' postfix to parametrized types (changes H.235 and H.450 in accordance with it)
- change QSIG ASN.1 source to be more identical to original one

svn path=/trunk/; revision=21715
2007-05-07 12:59:31 +00:00
Anders Broman
4c692a62b6 Start introducing actx to ber functions.
svn path=/trunk/; revision=21705
2007-05-06 22:34:05 +00:00
Tomas Kukosa
d58b1031de - new #.OPT directive which allows to use command line options from conformance file (and more options in the future)
- option -F|CREATE_FIELDS used from conformance file can have type parameter, field functions are created only for its members

svn path=/trunk/; revision=21682
2007-05-04 13:11:34 +00:00
Tomas Kukosa
48b11b6f15 - fix creating PDU_NEW functions, return the right value
- allow FN_PARS to be spreaded over more lines

svn path=/trunk/; revision=21675
2007-05-04 06:55:48 +00:00
Anders Broman
98cb9db12d Split out asn1 common functions. Start of BER EXTERNAL.
svn path=/trunk/; revision=21670
2007-05-03 21:52:57 +00:00
Tomas Kukosa
3ecac7ddd1 - REAL type and values are supported
- if a value of some INTEGER type is defined then it is assigned to this type like a named value
i.e.
MyType ::= INTEGER
mv01 MyType ::= 1
is equal to
MyType ::= INTEGER { mv01 (1) }

svn path=/trunk/; revision=21663
2007-05-03 11:42:33 +00:00
Tomas Kukosa
6f80d9228f - better reporting of syntax errors (or unsupported syntax) in ASN.1 source
- support of EXTERNAL type
- support of ObjectDescriptor for PER
- new #.CLASS directive for supporting some class workarounds

svn path=/trunk/; revision=21642
2007-05-02 12:18:27 +00:00
Tomas Kukosa
9f6c1ed0bb - new #.Exports parameter VALS_WITH_TABLE which "exports" whole table into header file
/it is only one way how to use it in Windows plugins/
- better handling of imports and definitions if more ASN.1 sources are compiled together
- fix tag handling on top level of PDU
- new -I command line option for path(s) of conformance files including

svn path=/trunk/; revision=21600
2007-04-27 07:35:01 +00:00
Tomas Kukosa
dc9a2c4c14 new parameter EXTERN for #.EXPORTS directive
svn path=/trunk/; revision=21561
2007-04-25 11:14:14 +00:00
Tomas Kukosa
6c2acdcfba fix bug in handling of tagged type reference
svn path=/trunk/; revision=21559
2007-04-25 06:33:24 +00:00
Tomas Kukosa
635171a4c0 added missing dependency in tagged type
svn path=/trunk/; revision=21475
2007-04-19 12:58:31 +00:00
Tomas Kukosa
0bb959a11a - new -L command line option to suppress #line directives from .cnf file
- new #.MAKE_ENUM and #.MAKE_DEFINES directives to generate enum/#define for enumerated types (ENUMERATED or INTEGER with named values)

svn path=/trunk/; revision=21466
2007-04-18 08:55:28 +00:00
Tomas Kukosa
f764553978 support of tagged types for BER - i.e. tagged assignments, more than one level tags in SEQUENCE/CHOICE
it has to be enabled with -T option as it is experimental

svn path=/trunk/; revision=21407
2007-04-13 14:19:26 +00:00
Ronnie Sahlberg
8920a7e7f2 change the signature that asn2wrs generates for functions to marm all parameters as _U_
to reduce the number of compiler warnings.

update some template and cnf files to use _U_ as well 


svn path=/trunk/; revision=21088
2007-03-21 10:22:22 +00:00
Tomas Kukosa
55c73aa1d2 filed blurb changed to "proto.WrsType" variant
svn path=/trunk/; revision=18911
2006-08-15 13:24:00 +00:00
Tomas Kukosa
c333c6b5bd few formal changes in PER dissector (rename asn_* types to asn1_* ones)
svn path=/trunk/; revision=18652
2006-07-04 06:49:53 +00:00
Tomas Kukosa
6ceb7937bc remove name field from per_sequence_t structure, it can be retrieved from field information
svn path=/trunk/; revision=18637
2006-07-03 07:03:57 +00:00
Tomas Kukosa
ba9d5cd625 fix wrong terminator record in per_sequence_t tables
svn path=/trunk/; revision=18621
2006-06-30 10:18:25 +00:00
Tomas Kukosa
9be9eb8e14 use "type function" instead of "field function" in PER CHOICE and SEQUENCE tables
it matches asn2wrs approach and makes generated dissectors source shorter

svn path=/trunk/; revision=18612
2006-06-29 15:26:41 +00:00
Tomas Kukosa
662f88f02e fix bug introduced with last change
svn path=/trunk/; revision=18545
2006-06-22 12:02:05 +00:00
Tomas Kukosa
98d7d92661 - change ETH_VAR to WS_VAR
- preparation for tagged type support

svn path=/trunk/; revision=18525
2006-06-20 19:54:28 +00:00
Gerald Combs
f7e38bd5e6 Change ETH_VAR_IMPORT to WS_VAR_IMPORT. Try to fix a duplicate variable
definition in the Catapult DCT2000 code.

svn path=/trunk/; revision=18524
2006-06-20 18:30:54 +00:00
Anders Broman
581dc56d63 MAke it possible to get a tvb with a BIT STRING, regenerate PER dissectors.
svn path=/trunk/; revision=18395
2006-06-08 06:06:17 +00:00
Tomas Kukosa
1f24a713be - packet-per.[ch]: Open Type support
- asn2wrs.py: TYPE-IDENTIFIER and ABSTRACT-SYNTAX information object classes support

svn path=/trunk/; revision=18338
2006-06-05 06:49:52 +00:00
Tomas Kukosa
4f6abb316a - new directive #.VIRTUAL_ASSGN - making assign from type of any filed
- new directive #.SET_TYPE - enforce type for field
- T_... name is based on renamed field (if present) instead of original one
- report unused #.FN_HDR, #.FN_BODY, #.FN_FTR
- new directive #.TF_RENAME - renames type and field together
(example of usage will follow in H225 and H245 dissectors)

svn path=/trunk/; revision=18237
2006-05-29 12:59:33 +00:00
Tomas Kukosa
fbd2a3fe3e - fix bugs in dissect_per_octet_string() introduced with unaligned variant
- step to new ASN.1 API - pass asn_ctx_t* through PER dissectors instead of packet_info*
- PER ALIGNED/UNALIGNED flag moved to asn_ctx_t
- PER created tree item pointer moved to asn_ctx_t
- add nbap into PER dissectors in asn1/Makefile.nmake
- use add_oid_str_name() instead of register_ber_oid_name() in H.225 and H.245
- export asn_ctx_init from library
- PER dissectors regenerated

svn path=/trunk/; revision=18209
2006-05-22 11:49:50 +00:00
Tomas Kukosa
4c4664721e bug fix, one space missing
svn path=/trunk/; revision=18204
2006-05-22 05:55:59 +00:00
Tomas Kukosa
62da958bd9 - asn2eth renamed to asn2wrs
- remove obsolete -X option from makefiles
- not generate enumerated map table for BER

dissector will be regenerated later

svn path=/trunk/; revision=18199
2006-05-21 14:36:05 +00:00
Renamed from tools/asn2eth.py (Browse further)