Commit Graph

78 Commits

Author SHA1 Message Date
Bill Meier 4248fa670a Explicit value_string array size specifier not required.
svn path=/trunk/; revision=43669
2012-07-11 20:26:24 +00:00
Jakub Zawadzki b18e880040 Update FSF address - part II.
svn path=/trunk/; revision=43538
2012-06-28 23:18:38 +00:00
Bill Meier 1b17369504 Fix: code under 'if(tree)' (in)directly calls sub-dissector/col_...()/expert...() fcns
svn path=/trunk/; revision=43226
2012-06-12 21:22:46 +00:00
Jeff Morriss 2e11463277 Fix some more hf encodings.
svn path=/trunk/; revision=42434
2012-05-05 00:19:49 +00:00
Jakub Zawadzki 77dc38ec5a value_string_ext: Reorder entries in value_string arrays to get Binary Search instead of Linear Search.
svn path=/trunk/; revision=42418
2012-05-04 07:34:06 +00:00
Jakub Zawadzki 5728240af1 Fix conflicting entries in CIP vendor list.
344 is registered to KEBA.
(Ref: http://www.odva.org/Home/CIPSUPPLIERDIRECTORY/LicensedVendorList/tabid/86/lng/en-US/Default.aspx)


svn path=/trunk/; revision=42417
2012-05-04 07:27:41 +00:00
Jakub Zawadzki ac5c40e6c5 Mark some function static.
svn path=/trunk/; revision=41999
2012-04-09 19:43:19 +00:00
Bill Meier a768f90aa7 Whitespace cleanup.
svn path=/trunk/; revision=41386
2012-03-06 22:29:42 +00:00
Bill Meier be89c3824b Fix incorrect packet-details display of a 1 bit FT_BOOLEAN field.
svn path=/trunk/; revision=41378
2012-03-06 20:11:43 +00:00
Jeff Morriss bb9b8880af From Michael Mann via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6893 :
The attached patches fix the following issues:

1. CIP-Motion shouldn't be a heuristic dissector.  CIP-Motion packets are
determined by specific fields in a CIP ForwardOpen.  I ran into situations
where CIP-Motion's "vague" heuristics incorrectly dissected packets meant for
CIP-Safety.  Of course this requires the ForwardOpen to be in the trace, but it
is the most deterministic way to have CIP-Motion packets.

2. Minor bugfix to the CIP-Safety dissector.  A couple of fields were
"missing", causing errant malformed packets.

svn path=/trunk/; revision=41283
2012-03-02 03:39:16 +00:00
Anders Broman 6b2b82d213 From Michael Mann:
a dissector for the ODVA protocol: CIP Safety. More information
about the protocol can be found here: 

http://www.odva.org/Home/ODVATECHNOLOGIES/CIP/CIPTechnologyOverview/CIPSafety/CIPSafetyOverview/tabid/131/lng/en-US/Default.aspx

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6862

svn path=/trunk/; revision=41201
2012-02-27 09:30:26 +00:00
Alexis La Goutte 360f156220 Fix some Dead Store (Dead assignement/Dead increment) Warning found by Clang
svn path=/trunk/; revision=40372
2012-01-04 17:34:36 +00:00
Alexis La Goutte 00dd4b455e From Michael Mann via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6697
Modbus object support for CIP dissector

Support for the Modbus object within the CIP dissector.  Essentially wraps the Modbus protocol within a CIP object.

Also included update to Modbus error code per 
http://www.wireshark.org/lists/wireshark-dev/201111/msg00187.html

svn path=/trunk/; revision=40371
2012-01-04 13:29:48 +00:00
Anders Broman e8111a59aa From Michael Mann:
ENIP dissector - improved I/O connection dissection through "better conversation"

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6617

svn path=/trunk/; revision=40059
2011-12-01 06:05:39 +00:00
Anders Broman 47bc2af5fd From Michael Mann:
Bugfixes for both Buildbot issues:
1. seg-fault with multiple_service_packet
2. infinite loop

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6519

svn path=/trunk/; revision=39843
2011-11-15 07:18:39 +00:00
Anders Broman b0ceb1cc77 From Roland Knall:
Avoiding the fuzz-test crash, but still allowing for large parts of CIP to be dissected.

ref https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6519

svn path=/trunk/; revision=39718
2011-11-02 19:36:33 +00:00
Jeff Morriss cea1d2c231 Disable the CIP dissector until we can solve the fuzz failures.
svn path=/trunk/; revision=39698
2011-11-01 00:58:21 +00:00
Guy Harris f15386dd93 Don't set mr_mult_req_info->num_services *unless we're sure
mr_mult_req_info is non-null*!  This should fix bug 6514, and possibly a
bunch of other buildbot crashes.

svn path=/trunk/; revision=39667
2011-10-29 20:41:30 +00:00
Jeff Morriss 7b6f829483 Correct an off-by-one error introduced in r39626.
svn path=/trunk/; revision=39631
2011-10-27 14:39:12 +00:00
Jeff Morriss 01de3aea36 Fix https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6498 :
Initialize cip_req_info_t.ciaData, too.

svn path=/trunk/; revision=39630
2011-10-27 14:30:57 +00:00
Jeff Morriss 8d25051a28 Followup to r39626: It is also necessary to initialize the number of services
to 0 (in case we throw an exception decoding the first service).

svn path=/trunk/; revision=39629
2011-10-27 13:30:32 +00:00
Jeff Morriss 3c622f7b80 Fix https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6491 :
Don't set mr_mult_req_info->num_services until we're sure we've
initialized the full structure for that service.  Otherwise if we
happen to throw an exception before initializing the whole
structure, we'll core someplace (like dissect_cip_generic_service_rsp())
which expects all num_services entries to be fully initialized.


svn path=/trunk/; revision=39626
2011-10-27 01:48:39 +00:00
Bill Meier 269cc1920f Fix a [-Wunused-but-set-variable] compiler warning;
Also: Remove trailing whitespace from lines.

svn path=/trunk/; revision=39623
2011-10-26 23:16:04 +00:00
Michael Tüxen 406678d63b Declare unused parameters as such. Don't assign them to themselves.
svn path=/trunk/; revision=39620
2011-10-26 20:58:05 +00:00
Anders Broman 2d9d7449b2 Try to fix
cc1: warnings being treated as errors
packet-cip.c: In function 'dissect_cip_generic_service_req':
packet-cip.c:3281: warning: format not a string literal and no format arguments
packet-cip.c: In function 'dissect_cip_generic_service_rsp':
packet-cip.c:3631: warning: format not a string literal and no format arguments
packet-cip.c: In function 'dissect_cip_data':
packet-cip.c:4881: warning: comparison between signed and unsigned

svn path=/trunk/; revision=39599
2011-10-26 06:14:53 +00:00
Anders Broman 4cfaa22784 From Michael Mann:
Improved CIP and ENIP dissectors

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6416

svn path=/trunk/; revision=39595
2011-10-26 04:55:21 +00:00
Bill Meier d7a1840204 Replace use of tvb_get_ephemeral_faked_unicode() by use of tvb_get_ephemeral_unicode_string();
Fix encoding arg as needed.

svn path=/trunk/; revision=39530
2011-10-23 22:58:45 +00:00
Bill Meier 794757ae8f For proto_tree_add_item(..., proto_xxx, ...)use ENC_NA as the encoding arg.
Also: remove trailing whitespace for a number of files.

svn path=/trunk/; revision=39503
2011-10-21 02:10:19 +00:00
Bill Meier 293049dfba Do some conversions of proto_tree_add_item() 'encoding' arg.
(previously missed).

    57   FT_BOOLEAN:       FALSE-->ENC_BIG_ENDIAN
    31   FT_BOOLEAN:       TRUE-->ENC_LITTLE_ENDIAN

    10   FT_BYTES:         ENC_BIG_ENDIAN-->ENC_NA
     1   FT_BYTES:         ENC_LITTLE_ENDIAN-->ENC_NA
    21   FT_BYTES:         FALSE-->ENC_NA
     2   FT_BYTES:         TRUE-->ENC_NA

     2   FT_IPXNET:        ENC_BIG_ENDIAN-->ENC_NA

     6   FT_IPv6:          ENC_BIG_ENDIAN-->ENC_NA
     1   FT_IPv6:          FALSE-->ENC_NA

     6   FT_NONE:          ENC_BIG_ENDIAN-->ENC_NA
    19   FT_NONE:          FALSE-->ENC_NA
     3   FT_NONE:          TRUE-->ENC_NA

     1   FT_STRING:        ENC_BIG_ENDIAN-->ENC_ASCII|ENC_NA
     1   FT_STRING:        ENC_LITTLE_ENDIAN-->ENC_ASCII|ENC_NA
     5   FT_STRING:        FALSE-->ENC_ASCII|ENC_NA
     1   FT_STRING:        TRUE-->ENC_ASCII|ENC_NA

     4   FT_STRINGZ:       ENC_NA-->ENC_ASCII|ENC_NA
     8   FT_STRINGZ:       FALSE-->ENC_ASCII|ENC_NA

     1   FT_INT32:         FALSE-->ENC_BIG_ENDIAN
     1   FT_INT32:         TRUE-->ENC_LITTLE_ENDIAN

    11   FT_UINT8:         0-->ENC_BIG_ENDIAN
   111   FT_UINT8:         FALSE-->ENC_BIG_ENDIAN
    17   FT_UINT8:         TRUE-->ENC_LITTLE_ENDIAN
     1   FT_UINT16:        0-->ENC_BIG_ENDIAN
    68   FT_UINT16:        FALSE-->ENC_BIG_ENDIAN
    18   FT_UINT16:        TRUE-->ENC_LITTLE_ENDIAN
     4   FT_UINT24:        FALSE-->ENC_BIG_ENDIAN
    70   FT_UINT32:        FALSE-->ENC_BIG_ENDIAN
     1   FT_UINT32:        TRUE-->ENC_LITTLE_ENDIAN
     4   FT_UINT64:        FALSE-->ENC_BIG_ENDIAN
     1   FT_UINT64:        TRUE-->ENC_LITTLE_ENDIAN

     1   FT_UINT_STRING:   FALSE-->ENC_ASCII|ENC_BIG_ENDIAN


svn path=/trunk/; revision=39442
2011-10-16 23:38:49 +00:00
Bill Meier 126aa85393 Convert proto_tree_add_item() 'encoding' arg for field types FT_STRING, FT_STRINGZ, FT_UINT_STRING as follows:
1. If there's no character encoding (ENC_ASCII, ...) specified
    then use ENC_ASCII.
 2. For all but FT_UINT_STRING, always use ENC_NA
    (replacing any existing True/1/FALSE/0
    /ENC_BIG_ENDIAN/ENC_LITTLE_ENDIAN).



svn path=/trunk/; revision=39426
2011-10-15 18:46:26 +00:00
Bill Meier a2e8e1cdcd From Benjamin Stocks (with some work by Michael Mann): "CIP Motion" dissector;
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5929

From me:
packet-cipmotion.c:
  FT_BOOLEAN fields with bitmasks need a bit-fieldwidth in the hf[] entry 'display' field;
  Define attribute_size as guint32 since it has to store guint8*guint16;
  Use ENC_NA as encoding arg in proto_tree_add_item() for FT_BYTES field types;
  Remove trailing whitespace from lines;
  Other minor cleanup and reformatting.

packet-enip.c:
  Use ENC_NA as encoding arg in proto_tree_add_item() for FT_BYTES field types;

svn path=/trunk/; revision=39396
2011-10-13 00:00:52 +00:00
Bill Meier 4e57694d4a Convert 'encoding' parameter of certain proto_tree_add_item() calls in non-autogenerated epan/dissectors:
Specifically:  Replace FALSE|0 and TRUE|1 by ENC_BIG_ENDIAN|ENC_LITTLE_ENDIAN as
 the encoding parameter for proto_tree_add_item() calls which directly reference
 an item in hf[] which has a type of:
    FT_UINT8
    FT_UINT16
    FT_UINT24
    FT_UINT32
    FT_UINT64
    FT_INT8
    FT_INT16
    FT_INT24
    FT_INT32
    FT_INT64
    FT_FLOAT
    FT_DOUBLE


svn path=/trunk/; revision=39288
2011-10-06 03:35:44 +00:00
Bill Meier 94f36ca4ff Use ENC_NA as encoding for proto_tree_add_item() calls which directly reference an hf item (in hf[] with types:
FT_NONE
   FT_BYTES
   FT_IPV6
   FT_IPXNET
   FT_OID

Note: Encoding field set to ENC_NA only if the field was previously TRUE|FALSE|ENC_LITTLE_ENDIAN|ENC_BIG_ENDIAN

svn path=/trunk/; revision=39260
2011-10-04 22:44:31 +00:00
Guy Harris 1a267e4d0e Back out improvements - it's still getting a lot of "used uninitialized"
errors, so I'll reopen the bug and log all the warnings that have been
produced, and mark the patch as "rejected".

svn path=/trunk/; revision=39230
2011-10-02 18:47:00 +00:00
Guy Harris a1b6a2e95f "seg_size" isn't set here, and the items don't appear to have a variable
segment size, they just appear to be 2 bytes long.

svn path=/trunk/; revision=39229
2011-10-02 18:31:33 +00:00
Anders Broman 362d86a22f Add comments.
svn path=/trunk/; revision=39227
2011-10-02 17:27:05 +00:00
Michael Tüxen eb4f10eedb Fix warnings.
svn path=/trunk/; revision=39226
2011-10-02 17:18:23 +00:00
Anders Broman 8bb88d9efc From Michael Mann :
General improvements to CIP and ENIP dissectors. 
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6416

svn path=/trunk/; revision=39222
2011-10-02 16:35:10 +00:00
Anders Broman fc447d3377 Get rid of check_col, while at it set ENC.
svn path=/trunk/; revision=39147
2011-09-26 09:01:17 +00:00
Bill Meier 781129806f Fix ex "modeline" so it works;
See https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5748

svn path=/trunk/; revision=39081
2011-09-21 17:49:11 +00:00
Chris Maynard a4d1ae6547 Don't assign return value of proto_tree_add_text() to rrsc_item if it's not going to be used. Fixes Coverity CID 863.
svn path=/trunk/; revision=39054
2011-09-19 20:28:10 +00:00
Jeff Morriss b2120849b1 From Michael Mann via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5749 :
Added support for the following services of the Connection Manager object:
LargeForwardOpen
GetConnectionOwner

Added support for the following services of the Connection Configuration
Object:
GetAttributeAll
SetAttributeAll

From me:
Replace tabs with spaces; adjust modelines for 8-space tabs instead of 3.

svn path=/trunk/; revision=37404
2011-05-26 02:20:23 +00:00
Bill Meier f396f68124 Remove unneeded #include <stdlib.h>;
Use consistent indentation;
Add editor modelines;
Use #if 0/#endif to comment out code instead of /* */.

svn path=/trunk/; revision=36913
2011-04-27 19:24:32 +00:00
Bill Meier c588ff282a From Yaniv Kaul:
Some fixes for 'set but not used' errors that GCC 4.6 emits.

svn path=/trunk/; revision=36911
2011-04-27 18:09:39 +00:00
Gerald Combs dae5200002 Fix some Visual C++ analysis warnings.
svn path=/trunk/; revision=35988
2011-02-17 23:00:34 +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
Stig Bjørlykke 54671a1ebe Removed unused entries.
svn path=/trunk/; revision=34546
2010-10-17 18:16:44 +00:00
Bill Meier e7568712ef Define some fcns & vars as static;
Minor whitespace and comments cleanup.

svn path=/trunk/; revision=34477
2010-10-11 19:00:55 +00:00
Bill Meier 69df32fb11 #include <string.h> not needed.
svn path=/trunk/; revision=32411
2010-04-06 22:09:47 +00:00
Bill Meier 09764dd969 Remove unneeded #include <stdio.h>
svn path=/trunk/; revision=32367
2010-04-03 21:55:23 +00:00