aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-epl.h
AgeCommit message (Collapse)AuthorFilesLines
2017-06-02Add SUBOBJECT_INITIALIZER and use it.Guy Harris1-0/+1
Just as we have OD_ENTRY_INITIALIZER, add SUBOBJECT_INITIALIZER, and use it rather than memset(). Whether removing initializer warnings is a Good Thing is subject to debate; remove a comment that implies it's been deemed a Good Thing. Change-Id: Ife658d8bb1d4868789ca3b929aff6e4fccecb430 Reviewed-on: https://code.wireshark.org/review/21892 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2017-06-02packet-epl.c: Fixup missing initializer warningsAhmad Fatoum1-6/+2
macOS Buildbot doesn't like {0} (probably because GNU C already provides {} exactly for the purpose of initializing all members to zero/NULL/0.0.. etc) Affected local type definitions now have a static intializer macro that uses the correct amount of zeroes and braces (similar to PTHREAD_MUTEX_INITIALIZER) Global type definitions have a memset to zero (Which isn't strictly correct, but as the platforms we support all have all-bits-zero-nulls and IEEE 754 floats, it should be good enough. A separate change will attempt to disable -Wmissing-field-initializers -Wmissing-braces globally and hopefully make these workarounds unnecessary. Change-Id: I30b0f679bbb8adb2dd7269c9f3bc19732e48212b Reviewed-on: https://code.wireshark.org/review/21887 Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Guy Harris <guy@alum.mit.edu>
2017-06-01packet-epl.c: Enhance dissection by ObjectMappings and device profilesAhmad Fatoum1-0/+96
Cyclic PDOs are setup either by ObjectMappings in the asynchronous SDOs, or by serialized ObjectMappings in device profile files. We now keep track of ObjectMappings transmitted via SDOs or read from XDC files and use those to correctly partition the PDO's payloads. Additionally types and descriptions for Object Directory entries extracted from the EDS and XDD profiles are used to select the correct Wireshark type and a string representation for those partitoned PDOs. Other places where indices and subindices are also enriched by this information. EDS support leverages GKeyFile and is available unconditionally, XDD/XDC parsing support depends on the availabilty of libxml2. A patch for inclusion of the latter as optional dependency was submitted as Change-Id: I13c0a2f408fb5c21bad7ab3d7971e0fa8ed7d783 Electronic Data Sheet (EDS) is the CANopen standard for device profiles, POWERLINK being based on CANopen, is occasionly used with EDS profiles. XML Device Description (XDD) is the Ethernet POWERLINK standard for device profiles. XDC have the same structure but contain actualValues fields which can contain default ObjectMappings. XML Device Descriptions can be 25k+ lines with much duplication, so wmem_iarray_t is leveraged for saving space as well as faster lookups. A side-effect of now organizing the capture in conversations is that POWERLINK over UDP packets are now assigned proper destination and source node IDs, which are displayed in the column view. The Referenced bug where packets where erronously flagged as duplicates because the address wasn't considered is also fixed as a result. Bug: 13604 Bug: 13749 Change-Id: Ic33ff0be8f2eae7c24fe5877ad9258d1e550c227 Reviewed-on: https://code.wireshark.org/review/21112 Petri-Dish: Peter Wu <peter@lekensteyn.nl> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2017-06-01Add interval array data structure, with growable intervalsAhmad Fatoum1-0/+35
A sorted array keyed by intervals You keep inserting items, then sort the array. sorting also compacts items that compare equal into one and adjusts the interval accordingly. find uses binary search to find the item This is particularly useful, if you got many similar items, e.g. ObjectMapping subindices in the XDD. XDDs can be upward of 25k lines long with much duplication (253 subindices having the same content). Interval Trees wouldn't work, because they didn't allow expanding existing intervals. Using an array instead of a tree, additionally offers a possible performance advantage, but it's not that critical here, as finding should only happen in the async frames There's room for optimization in the creation process of the array, but it doesn't matter much, as they aren't created frequently. Finding speed is what matters for the use case of parsing EDS and XDD files Change-Id: Iaaddc90059f0e49b456774a111d8d42452b90cf9 Reviewed-on: https://code.wireshark.org/review/21111 Petri-Dish: Peter Wu <peter@lekensteyn.nl> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2011-03-17As per bug 5751, these header files are no longer needed/used.Jeff Morriss1-469/+0
svn path=/trunk/; revision=36206
2008-12-18Fix various typos and spelling errors (mostly in text strings)Bill Meier1-5/+5
svn path=/trunk/; revision=27050
2007-11-26Get rid of C++/C99 style comments--not all compilers support themJeff Morriss1-1/+1
svn path=/trunk/; revision=23608
2007-06-06Fwom David Buechi: Powerlink dissector enhancement:Bill Meier1-0/+24
The attached patch adds a small enhancement for the ETHERNET Powerlink dissector (some well-known CANopen device profiles are decoded in human readable plaintext in the IdentResponse frame). svn path=/trunk/; revision=22061
2007-04-14fix MacOSX gcc-3.3 warnings about unused tfs/value_string variablesSebastien Tandel1-1/+1
most have been tagged unused (few have been deleted if dissector has not been modified since a long time) move packet-ssl-utils.c to DISSECTOR_SRC svn path=/trunk/; revision=21431
2007-03-10From David Buechi:Jeff Morriss1-0/+3
- don't show EPL src- and dst-address of SoC frame (same as SoA) - show SoA requested service only if it's not "NO_SERVICE" - NMT state in StatusResponse in words, not numbers - don't show MC and PS flags in SoC (it's now configurable via "Preferences") Furthermore I extended the value_string struct for the NMT-Command-IDs (asnd_cid_vals). This change is used to fully decode the NMTRequest frames. svn path=/trunk/; revision=21017
2007-02-27From Daniel Krüger:Anders Broman1-35/+49
I attached a patch to this dissector, which includes some corrections, updates and SDO by UDP support. I will upload a sample capture of SDO by UDP to the wiki. The patch is fuzzy tested against the current SVN rev under Linux and it builds also under MSVC2005. svn path=/trunk/; revision=20937
2006-08-22From David Buechi:Anders Broman1-0/+428
Add support for the ETHERNET Powerlink protocol svn path=/trunk/; revision=18998