1. 15 Jan, 2021 1 commit
    • Adam Parker's avatar
      OBD2 on CAN rides on ISO15765, made it a subdissector. · 1c3186ef
      Adam Parker authored
      - While I recognize that the spec says a request must be 8-bytes long, that's between you and your Tier-1.  I removed this requirement for decode.
      - Adjusted byte positions.
      
      Note:
      Still needs a 15765 reassembler and when that happens response parsing will need touching up.
      1c3186ef
  2. 15 Apr, 2020 1 commit
  3. 28 Feb, 2020 1 commit
  4. 29 Nov, 2019 1 commit
  5. 28 Nov, 2019 1 commit
    • Stefan Tatschner's avatar
      Change struct can_identifier to can_info · 40eece98
      Stefan Tatschner authored
      The can specific data structure `struct can_identifier` is used as
      supplementary data for higher level dissectors. This patch adds more
      data to this struct and renames it accordingly to `struct can_info`.
      
      More supplementary data is needed in order to dissect iso15765
      correctly, since the header format depends on details on the underlying
      CAN protocol (CAN 2.0B vs CAN-FD).
      
      Change-Id: Id068cf38453f98b67a5ec470a22e7013548c5a14
      Reviewed-on: https://code.wireshark.org/review/35246
      
      
      Petri-Dish: Guy Harris <guy@alum.mit.edu>
      Tested-by: Petri Dish Buildbot
      Reviewed-by: default avatarGuy Harris <guy@alum.mit.edu>
      40eece98
  6. 26 Jul, 2019 1 commit
  7. 13 Jun, 2019 1 commit
  8. 13 Jan, 2019 1 commit
    • Maksim Salau's avatar
      dissectors: can: Handle CAN id flags · eaee7079
      Maksim Salau authored
      The change adds support of CAN flags stored in ids.
      The flags allow dissectors to distinguish error frames,
      remote transmission request frames and identify id type used (either
      standard 11-bit or extended 29-bit).
      
      Addition of bit flags allowed to add more checks whether a CAN frame may
      be decoded by a particular dissector. I.e. some dissectors work only
      with 11-bit ids (CANopen, DeviceNet) some only with 29-bit (J1939,
      ISObus), others should be fine with bot types (OBD-II, ISO 15765).
      
      The change also fixes 2 bugs in the DeviceNet dissector:
      * removed byte swapping of CAN id (the pcap file seems to be broken;
        verified dissector operation with random traffic generated by cangen)
      * fixed "Warn Dissector bug, protocol DeviceNet, in packet N":
        added a default value for fragmented message type string value lookup.
      
      Bug: 15418
      Change-Id: I70e91130789bb3367fe19e51489cd34e97d678a6
      Reviewed-on: https://code.wireshark.org/review/31471
      
      
      Petri-Dish: Anders Broman <a.broman58@gmail.com>
      Tested-by: Petri Dish Buildbot
      Reviewed-by: AndersBroman's avatarAnders Broman <a.broman58@gmail.com>
      eaee7079
  9. 27 Dec, 2018 1 commit
    • Guy Harris's avatar
      Try to squeeze some bytes out of the frame_data structure. · 7eb3e47f
      Guy Harris authored
      Make the time stamp precision a 4-bit bitfield, so, when combined with
      the other bitfields, we have 32 bits.  That means we put the flags at
      the same structure level as the time stamp precision, so they can be
      combined; that gets rid of an extra "flags." for references to the flags.
      
      Put the two pointers next to each other, and after a multiple of 8 bytes
      worth of other fields, so that there's no padding before or between them.
      
      It's still not down to 64 bytes, which is the next lower power of 2, so
      there's more work to do.
      
      Change-Id: I6f3e9d9f6f48137bbee8f100c152d2c42adb8fbe
      Reviewed-on: https://code.wireshark.org/review/31213
      
      
      Petri-Dish: Guy Harris <guy@alum.mit.edu>
      Tested-by: Petri Dish Buildbot
      Reviewed-by: default avatarGuy Harris <guy@alum.mit.edu>
      7eb3e47f
  10. 05 Dec, 2018 1 commit
  11. 15 Mar, 2018 1 commit
    • Gerald Combs's avatar
      Epan+Qt: Invalidate cached column strings. · bbe5fc10
      Gerald Combs authored
      Add col_data_changed, which checks to see if we have updated column
      info. Add col_append_frame_number, which adds a frame number and sets
      col_data_changed. Call col_append_frame_number instead of
      col_append_fstr from some dissectors.
      
      Add PacketListRecord::invalidateAllRecords, which invalidates any cached
      record data. Add PacketListModel::invalidateAllColumnStrings which calls
      invalidateAllRecords and signals that our data has changed. Call
      invalidateAllColumnStrings when we have new name resolution or column
      information.
      
      Bug: 11414
      Bug: 11468
      Change-Id: I2671594a722f4f9436fe1df84d43489a148e0cee
      Reviewed-on: https://code.wireshark.org/review/26373
      
      Reviewed-by: Gerald Combs's avatarGerald Combs <gerald@wireshark.org>
      Petri-Dish: Gerald Combs <gerald@wireshark.org>
      Tested-by: Petri Dish Buildbot
      Reviewed-by: Roland Knall's avatarRoland Knall <rknall@gmail.com>
      bbe5fc10
  12. 12 Feb, 2018 1 commit
  13. 16 Sep, 2017 1 commit
  14. 11 Jul, 2017 1 commit
  15. 06 May, 2017 1 commit
  16. 02 Feb, 2017 1 commit
  17. 29 Jan, 2017 1 commit
  18. 10 Jan, 2017 1 commit
    • Guy Harris's avatar
      Rename tvb_new_subset() to tvb_new_subset_length_caplen(). · 7cd69060
      Guy Harris authored
      This emphasizes that there is no such thing as *the* routine to
      construct a subset tvbuff; you need to choose one of
      tvb_new_subset_remaining() (if you want a new tvbuff that contains
      everything past a certain point in an existing tvbuff),
      tvb_new_subset_length() (if you want a subset that contains everything
      past a certain point, for some number of bytes, in an existing tvbuff),
      and tvb_new_subset_length_caplen() (for all other cases).
      
      Many of the calls to tvb_new_subset_length_caplen() should really be
      calling one of the other routines; that's the next step.  (This also
      makes it easier to find the calls that need fixing.)
      
      Change-Id: Ieb3d676d8cda535451c119487d7cd3b559221f2b
      Reviewed-on: https://code.wireshark.org/review/19597
      
      Reviewed-by: default avatarGuy Harris <guy@alum.mit.edu>
      7cd69060
  19. 31 Aug, 2016 1 commit
    • Guy Harris's avatar
      Don't do any Decode As stuff for dissector tables not used with Decode As. · a4c8ebc1
      Guy Harris authored
      Have all dissector tables have a "supports Decode As" flag, which
      defaults to FALSE, and which is set to TRUE if a register_decode_as()
      refers to it.
      
      When adding a dissector to a dissector table with a given key, only add
      it for Decode As if the dissector table supports it.
      
      For non-FT_STRING dissector tables, always check for multiple entries
      for the same protocol with different dissectors, and report an error if
      we found them.
      
      This means there's no need for the creator of a dissector table to
      specify whether duplicates of that sort should be allowed - we always do
      the check when registering something for "Decode As" (in a non-FT_STRING
      dissector table), and just don't bother registering anything for "Decode
      As" if the dissector table doesn't support "Decode As", so there's no
      check done for those dissector tables.
      
      Change-Id: I4a1fdea3bddc2af27a65cfbca23edc99b26c0eed
      Reviewed-on: https://code.wireshark.org/review/17402
      
      
      Petri-Dish: Guy Harris <guy@alum.mit.edu>
      Reviewed-by: default avatarGuy Harris <guy@alum.mit.edu>
      a4c8ebc1
  20. 18 Aug, 2016 1 commit
  21. 06 Aug, 2016 1 commit
  22. 04 Aug, 2016 1 commit