Frédéric Lécaille | 6d88950 | 2017-11-15 14:50:19 +0100 | [diff] [blame] | 1 | ------------------------------------------------------------------------ |
| 2 | How to build wireshark with HAProxy Peers Protocol dissection support. |
| 3 | ------------------------------------------------------------------------ |
| 4 | |
| 5 | Please note that at this time, HAProxy Peers Protocol dissection is not supported |
| 6 | on Windows systems (could not be tested). |
| 7 | |
| 8 | 1) File list |
| 9 | ------------- |
Joseph Herlant | bd0f83f | 2018-11-09 19:00:24 -0800 | [diff] [blame] | 10 | - packet-happp.c: source code for HAProxy Peers Protocol (HAPPP) dissection |
Frédéric Lécaille | 6d88950 | 2017-11-15 14:50:19 +0100 | [diff] [blame] | 11 | support. |
| 12 | - wireshark.happp.dissector.patch: a patch file for wireshark sources to enable HAPPP |
| 13 | dissection support. Note that this patch file modifies only two files: |
| 14 | (epan/dissectors/CMakeLists.txt and epan/dissectors/Makefile.am) to add |
| 15 | packet-happp.c file DISSECTOR_SRC variable which list all wireshark |
| 16 | - README: this file. |
| 17 | |
William Lallemand | 2be58f7 | 2020-04-25 22:03:29 +0200 | [diff] [blame] | 18 | 2a) To build wireshark with HAPPP dissection support |
Frédéric Lécaille | 6d88950 | 2017-11-15 14:50:19 +0100 | [diff] [blame] | 19 | --------------------------------------------------- |
| 20 | - Download wireshark sources: |
| 21 | $ git clone https://code.wireshark.org/review/wireshark |
| 22 | - copy packet-happp.c file to epan/dissectors/ directory. |
| 23 | - apply wireshark.happp.dissector.patch file to wireshark source directory. |
| 24 | - build wireshark (see https://www.wireshark.org/docs/wsdg_html_chunked/): |
| 25 | $ ./autogen.sh |
| 26 | $ ./configure |
| 27 | $ make |
William Lallemand | 2be58f7 | 2020-04-25 22:03:29 +0200 | [diff] [blame] | 28 | |
| 29 | 2b) Alternative: build the HAPPP dissector as a wireshark plugin |
| 30 | ----------------------------------------------------------------- |
| 31 | If you don't want to build completely wireshark, you can build the dissector as |
| 32 | a plugin. |
| 33 | |
| 34 | You will need the development package of your distribution, which is |
| 35 | "libwireshark-dev" for debian based distribution and "wireshark-dev" for |
| 36 | redhat-based ones. |
| 37 | |
| 38 | $ make |
| 39 | |
Frédéric Lécaille | aab6f7c | 2021-01-19 14:33:24 +0100 | [diff] [blame] | 40 | It is possible that depending on your distribution the compilation may fail |
| 41 | with such an error: |
| 42 | |
| 43 | packet-happp.c:40:10: fatal error: ws_version.h: No such file or directory |
| 44 | #include <ws_version.h> |
| 45 | |
| 46 | In this case try to build this plugins with this OPTS variable: |
| 47 | |
| 48 | $ OPTS=-DWITHOUT_WS_VERSION make |
| 49 | |
William Lallemand | 2be58f7 | 2020-04-25 22:03:29 +0200 | [diff] [blame] | 50 | To install it in your home directory: |
| 51 | |
| 52 | $ make install |
| 53 | |
| 54 | The plugin will be installed in ~/.wireshark/plugins/ by default, but you can |
| 55 | change this path by setting the "plugins" variable. If it didn't work, check |
| 56 | the paths in "Help > About Wireshark > Folders > Personal Plugins" which should |
| 57 | give you the right path to use. |
| 58 | |
| 59 | In some distribution it will be in ~/.local/lib/wireshark/ so you will need to |
| 60 | install it this way: |
| 61 | |
| 62 | $ make install plugins=~/.local/lib/wireshark/plugins/3.2/epan/ |
| 63 | |
| 64 | If you want to install it in the system directory you can do it this way, the |
Ilya Shipitsin | 4a689da | 2022-10-29 09:34:32 +0500 | [diff] [blame] | 65 | right path is also in the Folder window. Change the plugins variable this way: |
William Lallemand | 2be58f7 | 2020-04-25 22:03:29 +0200 | [diff] [blame] | 66 | |
| 67 | $ sudo make install plugins=/usr/lib64/wireshark/plugins/3.2/epan/ |
| 68 | |
| 69 | Be careful to use the right version number in the path. |
| 70 | |
| 71 | 3) Check if you have the dissector in wireshark |
| 72 | ----------------------------------------------- |
| 73 | To verify if the protocol was well loaded by your wireshark, open the Supported |
| 74 | Protocols window in "View > Internals > Supported Protocols" and look for |
| 75 | "HAPPP". |
| 76 | |
| 77 | In the case of a plugin, you should see your plugin loaded in "Help > About |
| 78 | Wireshark > Plugins". |