Huge thanks to our Platinum Members Endace and LiveAction,
and our Silver Member Veeam, for supporting the Wireshark Foundation and project.

Wireshark-commits: [Wireshark-commits] master 20c57cb: Enable exporting objects with tshark

From: Wireshark code review <code-review-do-not-reply@xxxxxxxxxxxxx>
Date: Fri, 2 Dec 2016 16:08:08 +0000 (UTC)
URL: https://code.wireshark.org/review/gitweb?p=wireshark.git;a=commit;h=20c57cb298e4f3b7ac66a22fb7477e4cf424a11b
Submitter: Michael Mann (mmann78@xxxxxxxxxxxx)
Changed: branch: master
Repository: wireshark

Commits:

20c57cb by Moshe Kaplan (me@xxxxxxxxxxxxxxx):

    Enable exporting objects with tshark
    
    A new "--export-object <protocol>,<destdir>" option is added to tshark.
    
    This required refactoring Export Object behavior in all GUIs to give the
    export object handling to the dissector, rather than the ui layer.
    Included in the refactoring was fixing some serious memory leaks in Qt
    Export Object dialog, crash due to memory scope issues in GTK Export
    Object dialog, and addition sorting column feature in Qt dialog (set
    up by creating a widget to manage the items that were previously
    leaking memory)
    
    Bug: 9319
    Ping-Bug: 13174
    Change-Id: I515d7662fa1f150f672b1476716f347ec27deb9b
    Reviewed-on: https://code.wireshark.org/review/18927
    Tested-by: Petri Dish Buildbot <buildbot-no-reply@xxxxxxxxxxxxx>
    Reviewed-by: Peter Wu <peter@xxxxxxxxxxxxx>
    Tested-by: Michael Mann <mmann78@xxxxxxxxxxxx>
    Reviewed-by: Michael Mann <mmann78@xxxxxxxxxxxx>
    

Actions performed:

    from  9ca313c   BOOTP: Fix V-I Vendor-Specific Information Option
    adds  20c57cb   Enable exporting objects with tshark


Summary of changes:
 CMakeLists.txt                                     |    1 +
 debian/libwireshark0.symbols                       |   10 +
 doc/tshark.pod                                     |   13 +
 docbook/release-notes.asciidoc                     |    1 +
 epan/CMakeLists.txt                                |    1 +
 epan/Makefile.am                                   |    2 +
 epan/dissectors/packet-dcm.c                       |   35 +-
 epan/dissectors/packet-http.c                      |   31 +-
 epan/dissectors/packet-imf.c                       |   32 +-
 epan/dissectors/packet-smb.c                       |  423 +++++++++++++++++-
 epan/dissectors/packet-tftp.c                      |   91 +++-
 {ui => epan}/export_object.c                       |  165 +++----
 epan/export_object.h                               |  155 +++++++
 tshark.c                                           |   16 +
 ui/CMakeLists.txt                                  |    7 +-
 ui/Makefile.am                                     |    9 +-
 ui/cli/Makefile.am                                 |    2 +
 ui/cli/tap-exportobject.c                          |  279 ++++++++++++
 frame_tvbuff.h => ui/cli/tap-exportobject.h        |   20 +-
 ui/export_object.h                                 |   89 ----
 ui/export_object_dicom.c                           |   78 ----
 ui/export_object_http.c                            |   75 ----
 ui/export_object_imf.c                             |   75 ----
 ui/export_object_smb.c                             |  470 --------------------
 ui/export_object_tftp.c                            |  138 ------
 ui/{export_object.c => export_object_ui.c}         |   87 +---
 ui/{console.h => export_object_ui.h}               |   28 +-
 ui/gtk/export_object_dlg.c                         |  115 ++---
 ui/gtk/export_object_dlg.h                         |    8 +-
 ui/gtk/main_menubar.c                              |   86 +++-
 ui/qt/CMakeLists.txt                               |    2 +
 ui/qt/Makefile.am                                  |    2 +
 .../{simple_dialog.h => export_object_action.cpp}  |   47 +-
 ui/qt/{about_dialog.h => export_object_action.h}   |   36 +-
 ui/qt/export_object_dialog.cpp                     |  209 ++++++---
 ui/qt/export_object_dialog.h                       |   28 +-
 ui/qt/main_window.cpp                              |   24 +
 ui/qt/main_window.h                                |    8 +-
 ui/qt/main_window.ui                               |   30 --
 ui/qt/main_window_slots.cpp                        |   36 +-
 40 files changed, 1551 insertions(+), 1413 deletions(-)
 copy {ui => epan}/export_object.c (52%)
 create mode 100644 epan/export_object.h
 create mode 100644 ui/cli/tap-exportobject.c
 copy frame_tvbuff.h => ui/cli/tap-exportobject.h (72%)
 delete mode 100644 ui/export_object.h
 delete mode 100644 ui/export_object_dicom.c
 delete mode 100644 ui/export_object_http.c
 delete mode 100644 ui/export_object_imf.c
 delete mode 100644 ui/export_object_smb.c
 delete mode 100644 ui/export_object_tftp.c
 rename ui/{export_object.c => export_object_ui.c} (52%)
 copy ui/{console.h => export_object_ui.h} (72%)
 copy ui/qt/{simple_dialog.h => export_object_action.cpp} (62%)
 copy ui/qt/{about_dialog.h => export_object_action.h} (67%)