BACnet has a private transfer service which is vendor specific. The start of
each request and response contains the vendor identifier. I've added a way for
vendors to provide their own dissectors by registering their vendor identifier.
The packet-bacapp.c method fConfirmedPrivateTransfer has been modified to look
for a vendor specified dissector. If found it will be run. If not found we
default to running the standard dissection included in packet-bacapp.c.
I modified the summary column display for private transfer messages so that the
summary now displays the Vendor Identifier (V=xx) and the Service Number (SN=xx).
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5250
From me: Rename sub-dissector tablle to "bacapp.vendor_identifier"
Change subdissector ui_name to "BACapp Vendor Identifier"
svn path=/trunk/; revision=34625
Find a patch who clean up PPP dissector
* Remove check_col (from my previous patch #5325)
* Remove the #define ppp_min (unused)
* Remove some unused ett_*
* Cleanup NO ARRAY entry (it is a false positive of checkhf tool, it is need {
(in the same line) before a hf_... in hf_register_info struct
* Cleanup Unused entry in VSNP Dissector ( it's really strange, there is no
check when the code was added #4434 ;) )
* minor bug fix...
From me: put one of the check_col()'s (that also protects a val_to_str() call)
back in.
Note: the checkhf tool bug was fixed in rev 34623.
svn path=/trunk/; revision=34624
The current PRP dissector in packet-prp.c does not correctly identify VLAN
tags. It uses the hard coded value 0x8000 to check the ethertype.
The attached patch (against current SVN trunk) changes this to use the
ETHERTYPE_VLAN define from epan/etypes.h and also fixes two misspellings in the
respective comments.
svn path=/trunk/; revision=34622
Update to use add the time as a filterable field and other cosmetic changes.
From me: exp2() seems to be C99 so #if the use of it out.
svn path=/trunk/; revision=34611
- Reindent source; cleanup whitespace;
- Remove many unneeded 'if(tree)' & similar (Tnx to Jeff Morriss for the suggestion);
- remove unneeded initializers;
- Reformat some long lines;
- Fix up some comments showing message layout;
- Localize two static global variables.
svn path=/trunk/; revision=34610
Add dissector for Tektronix Teklink Protocol, used by their Logic Analyzers.
May be useful for reverse engineering their Protocol.
svn path=/trunk/; revision=34609
RFC 4447 describes new TLV called Generalised PWid FEC in LDP messages with the
id 0x81. This is related to PsuedoWire setup and maintenance.
Related to this, following are the TLVs which are defined in RFC 4447 and RFC 4446.
1. PW Status TLV
2. PW Interface parameters
3. PW Group TLV
From me: remove some unused variables; Mark fcn arg as unused.
svn path=/trunk/; revision=34606
CableLabs has added additional TLV's to DHCP Option 60 Modem capabilities
reporting for their Docsis 2.0 devices. Additionally, in Docsis 3.0, they have
moved the capabilities portion of Option 60 (sub-option 5) to now reside in the
vendor specific Option 125 using their Enterprise number (4491).
svn path=/trunk/; revision=34605
It is a rework of PAP PPP dissector
- Replace proto_tree_add_text by proto_tree_add_item
- add col_append_fstr to show information (Peer-ID, Password...)
svn path=/trunk/; revision=34604
Add dissector for PAPI (Aruba AP Control Protocol), used by Aruba WLAN
Controller).
There is no documentation on this protocol, the dissector is based on my
analysis ...
There is also an experimental "debug dissector" (not enable by default) for
dissecting the rest of data.
Changes by me:
- make it a new-style dissector
- change the name of the "debug" preference
- other minor changes
svn path=/trunk/; revision=34587
The attached patch begins to add support for RPL to the ICMPv6 file. All
locations that RPL code have been added are marked with a comment allowing this
patch to be reverted at a future time if it is decided to e.g. move all the RPL
code to it's own dissector.
A few values await IANA assignment and are also clearly marked (in
packet-ipv6.h).
Only the 'metric' option is left unsupported, as it is primarily defined in
another I-D.
svn path=/trunk/; revision=34579
See: https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5095
From me: Fix a bug in add_symbol which caused occasional Wireshark crashes;
Add additional checking during parse of symbol hash file;
Improve "directory not found" error message;
Do misc code cleanup and simplification.
svn path=/trunk/; revision=34558
radiotap: new parser
The current parser has a number of bugs, most
importantly not being able to parse radiotap
files with multiple presence bitmaps. It is
also rather hard extend. Use a generic library
for parsing radiotap that can be extended very
easily.
From me:
Dumb down some initializers and add some casts to make Visual C++ happy.
svn path=/trunk/; revision=34515
- Allow direct access when a range of values begins with a value other than 0;
- Provide value_string_ext_new() for creating extended value strings at runtime;
- Do access to value_string_ext members via a macro (all but value_string.c);
- Update documentation.
svn path=/trunk/; revision=34514
The attached patch adds the missing decoded fields
by moving the proto_tree_add_item() call so that it
is no longer within an error handler and will be
called under normal circumstances (as well as error conditions.
From me: Apply the change to the ASN.1 source. Also some white space
indentation cleanup.
svn path=/trunk/; revision=34505
Hi a patch to enchance the PPTP Dissector
It is a rework of PPTP dissector
- Replace proto_tree_add_text by proto_tree_add_item
- Replace not standard table and function by standard value_string
- ....
The code is checked and fuzzed (more 200 pass) ! with personnal PPTP Sample and
PPTP Sample from pcapr.net
svn path=/trunk/; revision=34504
radiotap: re-indent
The current file has very strange mix of various
indentation sometimes using spaces and sometimes
using tabs which is rather hard to keep intact,
so reindent it completely.
svn path=/trunk/; revision=34503
Extern the extended value strings struct (not the value_string arrays themselves) so
any external use of these arrays is via the extended value string functions.
svn path=/trunk/; revision=34499
- define some vars & fcns as static;
- remove an unused var;
- use tfs_set_notset in tfs.c;
- slightly simplify reg_handoff.
svn path=/trunk/; revision=34462
This is necessary in case a subdissector had changed it but was unable to
restore it (due to the exception).
Remove check_col().
svn path=/trunk/; revision=34436
epan/dissectors/packet-umts_fp.c
* Added mac subdissector (MAC) call to HSDSCH TYPE2 frames
epan/dissectors/packet-umts_mac.c
* Added support for HSDSCH TYPE2 frames by means of
not nibble-shifting (4 bits) the SDU if MAC-ehs is used
epan/dissectors/packet-rlc.c
* Added support for "Use special value of the HE field" (3gpp 25.332-7a0
9.2.2.7) commonly used for Release 7 HSDPA.
REMARK: although the specification mandates that the
special value is only allowed when activated by higher
layers (RRC), it is interpreted unconditionally. We assume
this is OK, because a different use in future specifications
is very unlikely.
epan/dissectors/packet-fp_hint.c
* Added decoding of MAC-ehs indicator for HSDSCH frames
* Bumped fpi->release from 6 to 7 to enable proper
HSDSCH TYPE2 frame decoding in the UTMS MAC parser.
In general, this appears not to affect decoding
of (conformant) FP frames of pevious releases.
svn path=/trunk/; revision=34433
subdissector the first fragment of a fragmented message so that an exception
in the first chunk doesn't abort dissection of subsquent chunks in the frame.
Restore pinfo->private_data after an exception was thrown by a subdissector.
This is necessary in case a subdissector had changed it but was unable to
restore it (due to the exception).
svn path=/trunk/; revision=34420
In some cases, the UMTS FP dissector currently calls upper-layer dissectors
(e.g. UMTS MAC) only when a proto-tree is present. Effectively, this causes the
RLC reassembly to fail in certain cases.
The attached patch solves the problem by slightly moving the calls to
'call_dissector()'.
svn path=/trunk/; revision=34399
From me: Two additional fixes for FIELD_PACKET dissection;
Revision of the original patch from Alexis to
properly dissect a SHOW_FIELDS response message.
svn path=/trunk/; revision=34395
Don't pass a NULL pointer to a string to ssl_debug_printf() (which eventually
calls vfprintf()): Solaris doesn't like it when you do that.
svn path=/trunk/; revision=34386
Rename two g_... functions so as to not be in GLib namespace;
Move proto_register... to just before proto_reg_handoff...
Reformat some lines;
More Whitespace cleanup.
svn path=/trunk/; revision=34354
- decode all attributes as specified in MS-NLMP;
- use common code for target-info and ntlmv2 attribute dissection;
Add filter for the "version" field;
Remove some obsolete #if 0'd code.
svn path=/trunk/; revision=34350
- packet-cfm.h not used elsewhere: incorporate into packet-cfm.c;
- Move proto_register and proto_reg_handoff to the end of the file;
- Localize some variables;
- Remove some unneeded initializers;
- Cleanu some whitesace.
svn path=/trunk/; revision=34334
don't add a source address field if it's zero-length (fixes bug
2519);
the source address length field is 8 octets long; if the
purported length is > 8, only include the first 8 octets.
svn path=/trunk/; revision=34303
- NEGOTIATE: dissect version field (if present) when empty Workstation domain & name fields;
- AUTHENTICATE: Use flags from message if no previous CHALLENGE seen to determine
character set encoding; Fixes Bug #5251https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5251
svn path=/trunk/; revision=34295
The 6LoWPAN dissector had as a TODO the 'stateful address compression' mode.
This patch fixes that TODO, up to HC-13.
This patch also updates to HC-08, where the PANID is no longer used in forming
the short address.
svn path=/trunk/; revision=34290
1. Negotiation/Challenge/Authoriation messages:
- dissect Version field (if present);
2. Authorization messages:
- Dissect fields following session-key (flags/... if present) even
when session key is empty;
- Dissect "MIC" field (if present);
3. Challenge message:
- Rename "Domain" field to "Target Name" as per Microsoft spec (MS-NLMP).
svn path=/trunk/; revision=34271
tracking the same data when the headers are different (NAT, TCP seq #
randomization, etc). Copied from packet-frame.c.
svn path=/trunk/; revision=34245
indicate that the last 4 bytes of both types are similar.
So the extra bytes in type III are inserted before those
last bytes.
svn path=/trunk/; revision=34238
- Add decoding of direction bit for version 2 (type III) erspan.
Me:
- Decode the original direction bit as unknown in case of version 2.
- The original unknown3 value seems to indicate whether the packet
was too long to fit into a single mtu (trunkated).
- "Timestamp(s)" -> "Timestamp"
svn path=/trunk/; revision=34221
- Fix incorrect uses of val_to_str which could cause inv mem refs;
- Use tvb_reported_length instead of tvb_length;
- (Trivial) Remove some unneeded '= NULL' initializations;
- (A few other trivial changes).
svn path=/trunk/; revision=34183
We parse host & request page from headers, so we easily can construct full http
uri.
I was thinking about making it as field, so we could filter, print in column
info, or do other fancy stuff, but for now this is imho enough.
From me: add it as a (filterable) item. Clean up spacing and indentation in a
few places.
svn path=/trunk/; revision=34162
- Don't list codecs which are deleted by using port 0.
- Use real concatenation i.s.o. reprint, which seems to fail in some circumstances.
svn path=/trunk/; revision=34154