2018-02-05 16:59:45 +00:00
|
|
|
|
// WSDG Chapter Build Introduction
|
2014-09-13 05:31:14 +00:00
|
|
|
|
|
2022-01-16 18:55:52 +00:00
|
|
|
|
[#ChapterBuildIntro]
|
2014-02-02 19:00:30 +00:00
|
|
|
|
|
|
|
|
|
== Introduction
|
|
|
|
|
|
2022-01-16 18:55:52 +00:00
|
|
|
|
[#ChCodeOverview]
|
2014-02-02 19:00:30 +00:00
|
|
|
|
|
|
|
|
|
=== Source overview
|
|
|
|
|
|
|
|
|
|
Wireshark consists of the following major parts:
|
|
|
|
|
|
2019-01-03 20:01:19 +00:00
|
|
|
|
* Packet dissection - in the _/epan/dissectors_ and
|
|
|
|
|
_/plugins/epan/{asterisk}_ directories
|
2014-02-02 19:00:30 +00:00
|
|
|
|
|
2019-01-03 21:56:15 +00:00
|
|
|
|
* Capture file I/O - using Wireshark’s own wiretap library
|
2014-02-02 19:00:30 +00:00
|
|
|
|
|
2019-01-03 21:56:15 +00:00
|
|
|
|
* Capture - using the libpcap and Npcap libraries, in _dumpcap.c_ and
|
2021-03-24 22:09:19 +00:00
|
|
|
|
the _/capture_ directory
|
2014-02-02 19:00:30 +00:00
|
|
|
|
|
2018-04-09 04:11:26 +00:00
|
|
|
|
* User interface - using Qt and associated libraries
|
2014-02-02 19:00:30 +00:00
|
|
|
|
|
|
|
|
|
* Utilities - miscellaneous helper code
|
|
|
|
|
|
2018-04-09 04:11:26 +00:00
|
|
|
|
* Help - using an external web browser and text output
|
2014-02-02 19:00:30 +00:00
|
|
|
|
|
2022-01-16 18:55:52 +00:00
|
|
|
|
[#ChCodeStyle]
|
2014-02-02 19:00:30 +00:00
|
|
|
|
|
|
|
|
|
=== Coding Style
|
|
|
|
|
|
2020-09-04 01:40:36 +00:00
|
|
|
|
The coding style guides for Wireshark can be found in the “Portability”
|
2018-02-04 19:39:56 +00:00
|
|
|
|
section of the file _doc/README.developer_.
|
2014-02-02 19:00:30 +00:00
|
|
|
|
|
2022-01-16 18:55:52 +00:00
|
|
|
|
[#ChCodeGLib]
|
2014-02-02 19:00:30 +00:00
|
|
|
|
|
|
|
|
|
=== The GLib library
|
|
|
|
|
|
2018-04-09 04:11:26 +00:00
|
|
|
|
GLib is used as a basic platform abstraction library. It doesn't provide
|
2014-02-02 19:00:30 +00:00
|
|
|
|
any direct GUI functionality.
|
|
|
|
|
|
2018-04-09 04:11:26 +00:00
|
|
|
|
To quote the GLib Reference Manual:
|
2014-02-02 19:00:30 +00:00
|
|
|
|
____
|
|
|
|
|
GLib provides the core application building blocks for libraries and
|
|
|
|
|
applications written in C. It provides the core object system used in GNOME, the
|
|
|
|
|
main loop implementation, and a large set of utility functions for strings and
|
|
|
|
|
common data structures.
|
|
|
|
|
____
|
|
|
|
|
|
|
|
|
|
GLib contains lots of useful things for platform independent development.
|
2021-11-20 16:46:50 +00:00
|
|
|
|
See https://developer.gnome.org/glib/ and https://docs.gtk.org/glib/ for details about GLib.
|
2014-02-02 19:00:30 +00:00
|
|
|
|
|
2018-02-05 16:59:45 +00:00
|
|
|
|
// End of WSDG Chapter Build Introduction
|