Presentation is loading. Please wait.

Presentation is loading. Please wait.

Adding Additional Functionality to the Wireshark GUI with GTK+

Similar presentations


Presentation on theme: "Adding Additional Functionality to the Wireshark GUI with GTK+"— Presentation transcript:

1 Adding Additional Functionality to the Wireshark GUI with GTK+
June 18, 2009 Stephen Fisher Wireshark Core Developer Network Engineer SHARKFEST '09 Stanford University June 15-18, 2009

2 What is GTK+ GTK+ is short for the GIMP Toolkit. It was originally created for use by the GNU Image Manipulation Program(GIMP). GTK+ is available for Unix (X), Microsoft Windows and MacOS X . GTK+ is written in C and comes with a C based API. APIs for other languages are available.

3 How Wireshark uses GTK+
Almost all GUI presentations in Wireshark are done through GTK+. A notable exception is the native Microsoft Windows File Save dialogs. 3

4 The Export Objects feature
In the GUI, go to: Find Export Objects We will be studying how the the HTTP Export Object’s GUI was created. 4

5 Main Menu To Export Object
gtk/main_menu.c The underline in front of a letter means that letter is the shortcut key in the menu. gtk/export_object_http.c We use _U_ to tell gcc that the parameter is unused in the function. gtk/export_object.c 5

6 Creating the Window gtk/export_object.c: export_object_window() continued gtk/export_object.h: epan/prefs.h: (pixels) 6

7 Creating the Window(cont.)
gtk/export_object.c: export_object_window() continued 7

8 Creating the Window(cont.)
gtk/export_object.c: export_object_window() continued 8

9 Creating the Window(cont.)
gtk/export_object.c: export_object_window() continued 9

10 Creating the Window(cont.)
gtk/export_object.c: export_object_window() continued (Repeated for each column…) 10

11 Creating the Window(cont.)
gtk/export_object.c: export_object_window() continued 11

12 Creating the Window(cont.)
gtk/export_object.c: export_object_window() continued (repeated for each button …) 12

13 Creating the Window(cont.)
gtk/export_object.c: export_object_window() continued 13

14 The Finished Window 14

15 Window Filled With Tap Data
15

16 Further reading GTK+ Reference Manual:
GTK+ Index of All Symbols (functions and such): GTK+ 2.0 Tree View Tutorial: Wireshark Developer’s Guide: Wireshark Developer README: or doc/README.developer in source code tree 16

17 Questions ? I’m happy to answer any of your questions now, after this session or any time you see me during the conference. Ask other core and non-core developers; a number of which are proficient at GTK programming. Ask them on the mailing list (subscription required to get the responses to your question). I am subscribed to this mailing list. Review existing code in the gtk/ directory in the source code tree 17


Download ppt "Adding Additional Functionality to the Wireshark GUI with GTK+"

Similar presentations


Ads by Google