WSDG: Miscellaneous updates and fixes.

Update the Windows CRT text to mention the Universal CRT.

Replace references to WinPcap with Npcap.

Update the Qt LTS text.

Add a WiX / .msi section

Use curly quotes.

Use the {cpp} attribute so that the "++" in "C++" doesn't trigger
monospace formatting.

Make the various "Unix" and "Windows" subsection title names uniform.
Give them the "discrete" attribute so that they don't clutter up the
TOC.

Title-case section titles.

Remove the reference to m4. As far as I can tell we don't require it.

Change-Id: I73f851adae640f77205781d6c4962002c2d53f49
Reviewed-on: https://code.wireshark.org/review/31343
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Gerald Combs <gerald@wireshark.org>
This commit is contained in:
Gerald Combs 2019-01-03 12:01:19 -08:00
parent 8dbca7320d
commit c39bc2a4f6
9 changed files with 170 additions and 125 deletions

View File

@ -2,7 +2,9 @@
:wireshark-version: 2.9.1
// We're migrating from AsciiDoc.
// We're migrating from AsciiDoc. This can be removed once we've migrated
// from legacy markup to modern:
// https://asciidoctor.org/docs/migration/#migration-cheatsheet
:compat-mode:
// Required for btn, kbd:, and menu: macros.
:experimental:
@ -44,6 +46,9 @@
:pcap-filter-man-page-url: {tcpdump-main-url}manpages/pcap-filter.7.html
:tcpdump-man-page-url: {tcpdump-main-url}manpages/tcpdump.1.html
:npcap-main-url: https://nmap.org/npcap/
:npcap-development-url: https://github.com/nmap/npcap
:npcap-license-url: https://raw.githubusercontent.com/nmap/npcap/master/LICENSE
:winpcap-main-url: https://www.winpcap.org/
:winpcap-download-url: {winpcap-main-url}install/

View File

@ -3,10 +3,11 @@
include::attributes.asciidoc[]
= Wireshark Developers Guide: Version {wireshark-version}
// Convenience attribute.
// Attributes
// XXX This should be surrounded by single quotes in the text. Its
// currently surrounded by plus signs for AsciiDoc compatibility.
:dlt-glob: DLT_*
:qt-lts-version: 5.12
[[Preface]]
["preface",id="Preface"]

View File

@ -10,11 +10,12 @@
Wireshark consists of the following major parts:
* Packet dissection - in the _/epan/dissector_ and _/plugin/\*_ directories
* Packet dissection - in the _/epan/dissectors_ and
_/plugins/epan/{asterisk}_ directories
* File I/O - using Wiresharks own wiretap library
* Capture - using the libpcap/winpcap library, in _/wiretap_
* Capture - using the libpcap and Npcap libraries, in _/wiretap_
* User interface - using Qt and associated libraries

View File

@ -1171,7 +1171,7 @@ was especially the case after seeing a lot of discussions about how particular
IDL types are represented inside an octet stream.
I have also had comments/feedback that this tool would be good for say a CORBA
class when teaching students what CORBA traffic looks like ``on the wire''.
class when teaching students what CORBA traffic looks like “on the wire”.
It is also COOL to work on a great Open Source project such as the case with
“Wireshark” ({wireshark-main-url})

View File

@ -11,12 +11,14 @@
Several libraries are needed to build and run Wireshark. Most of them
are split into three packages:
. _Runtime_. System and third party libraries such as _MSVCR110.dll_ and _libglib-2.0-0.dll_.
. _Runtime_. System and third party libraries such as _vcruntime140.dll_
and _libglib-2.0-0.dll_.
. _Developer_. Documentation, header files, import libraries, and other files needed for compilation.
. _Developer_. Documentation, header files, import libraries, and other
files needed for compilation.
. _Source_. Library sources, which are usually not required to
build Wireshark.
. _Source_. Library sources, which are usually not required to build
Wireshark.
[TIP]
.Our libraries are freely available
@ -29,7 +31,7 @@ See <<ChLibsSetup>> for an easier way to install them.
[[ChLibsFormat]]
=== Binary library formats
=== Binary Library Formats
Binary libraries are available in different formats, depending on the C
compiler used to build it and of course the platform they were built for.
@ -37,7 +39,7 @@ compiler used to build it and of course the platform they were built for.
[[ChLibsFormatUnix]]
[discrete]
==== Unix
If you have installed unix binary libraries on your system, they will
@ -48,8 +50,8 @@ and compile the source and then install the binaries.
[[ChLibsFormatWin32]]
==== Win32: MSVC
[discrete]
==== Windows
Most of the Win32 binary libraries you will find on the web are in this
format. You will recognize MSVC libraries by the .lib/.dll file extension.
@ -57,8 +59,7 @@ format. You will recognize MSVC libraries by the .lib/.dll file extension.
[[ChLibsSetup]]
=== Win32: Automated Library Download
=== Windows Automated Library Download
The required libraries (apart from Qt) are automatically downloaded as part of
the CMake generation step, and subsequently as required when libraries are updated.
@ -83,6 +84,7 @@ For more information on the Qt libraries, see <<ChUIQt>>.
[[ChLibsUnixQt]]
[discrete]
==== Unix
Most Linux distributions provide Qt and its development libraries as standard packages.
@ -95,7 +97,8 @@ It is available at https://www.qt.io/download-open-source/#section-2[].
[[ChLibsWin32Qt]]
==== Win32 MSVC
[discrete]
==== Windows
Qt5 must be installed manually from the Qt installers page
https://www.qt.io/download-open-source/#section-2[] using the version of Qt
@ -119,6 +122,7 @@ and its dependencies.
[[ChLibsUnixGLib]]
[discrete]
==== Unix
The GLib library is available for most Linux distributions and UNIX
@ -127,18 +131,20 @@ for your platform, you can get it at http://www.gtk.org[].
[[ChLibsWin32GLib]]
==== Win32 MSVC
[discrete]
==== Windows
You can get the latest version at http://www.gtk.org[].
[[ChLibsSMI]]
=== SMI (optional)
=== SMI (Optional)
LibSMI is used for MIB and PIB parsing and for OID resolution.
[[ChLibsUnixSMI]]
[discrete]
==== Unix
If this library isn't already installed or available as a
@ -147,7 +153,8 @@ http://www.ibr.cs.tu-bs.de/projects/libsmi/[].
[[ChLibsWin32SMI]]
==== Win32 MSVC
[discrete]
==== Windows
Wireshark uses the source libSMI distribution at
http://www.ibr.cs.tu-bs.de/projects/libsmi/[].
@ -156,13 +163,14 @@ https://anonsvn.wireshark.org/wireshark-win32-libs/trunk/packages/[].
[[ChLibsCares]]
=== c-ares (optional)
=== c-ares (Optional)
C-Ares is used for asynchronous DNS resolution. This is the primary name
resolution library in Wireshark.
[[ChLibsUnixCares]]
[discrete]
==== Unix
If this library isn't already installed or available as a package for your
@ -170,14 +178,15 @@ platform, you can get it at http://c-ares.haxx.se/[].
[[ChLibsWin32Cares]]
==== Win32 MSVC
[discrete]
==== Windows
C-Ares is cross-compiled using MinGW32 and is available at
https://anonsvn.wireshark.org/wireshark-win32-libs/trunk/packages/[].
[[ChLibsZlib]]
=== zlib (optional)
=== zlib (Optional)
[quote, The zlib web site, http://www.zlib.net/]
____
@ -190,6 +199,7 @@ ____
[[ChLibsUnixZlib]]
[discrete]
==== Unix
This library is almost certain to be installed on your system. If it isn't or
@ -198,7 +208,8 @@ http://www.zlib.net/[].
[[ChLibsWin32Zlib]]
==== Win32 MSVC
[discrete]
==== Windows
The zlib sources are downloaded from
https://anonsvn.wireshark.org/wireshark-win32-libs/trunk/packages/[] and compiled
@ -206,13 +217,14 @@ locally.
[[ChLibsPcap]]
=== libpcap/WinPcap (optional)
=== libpcap or Npcap (Optional, But Strongly Recommended)
Libpcap and WinPcap provide that packet capture capabilities that are central
Libpcap and Npcap provide that packet capture capabilities that are central
to Wiresharks core functionality.
[[ChLibsLibpcap]]
[discrete]
==== Unix: libpcap
If this library isn't already installed or available as a package for your
@ -220,20 +232,21 @@ platform, you can get it at {tcpdump-main-url}.
[[ChLibsWinpPcap]]
==== Win32 MSVC: WinPcap
[discrete]
==== Windows: Npcap
You can get the ``Windows packet capture library'' at:
https://www.winpcap.org/install/[]
You can get the Npcap Windows packet capture library at {npcap-main-url}.
[[ChLibsGNUTLS]]
=== GnuTLS (optional)
=== GnuTLS (Optional)
The GNU Transport Layer Security Library is used to enable TLS decryption
using a RSA private key.
[[ChLibsUnixGNUTLS]]
[discrete]
==== Unix
If this library isn't already installed or available as a
@ -242,7 +255,8 @@ https://gnutls.org/[].
[[ChLibsWin32GNUTLS]]
==== Win32 MSVC
[discrete]
==== Windows
We provide a package cross-compiled using MinGW32 at
https://anonsvn.wireshark.org/wireshark-win32-libs/trunk/packages/[].
@ -257,6 +271,7 @@ AES, Blowfish, SHA-1, SHA-256, and others.
[[ChLibsUnixGcrypt]]
[discrete]
==== Unix
If this library isn't already installed or available as a
@ -265,19 +280,21 @@ https://directory.fsf.org/wiki/Libgcrypt[].
[[ChLibsWin32Gcrypt]]
==== Win32 MSVC
[discrete]
==== Windows
Part of our GnuTLS package.
[[ChLibsKerberos]]
=== Kerberos (optional)
=== Kerberos (Optional)
The Kerberos library is used to dissect Kerberos, sealed DCERPC and
secureLDAP protocols.
[[ChLibsUnixKerberos]]
[discrete]
==== Unix
If this library isn't already installed or available as a
@ -286,19 +303,21 @@ http://web.mit.edu/Kerberos/dist/[].
[[ChLibsWin32Kerberos]]
==== Win32 MSVC
[discrete]
==== Windows
We provide a package at
https://anonsvn.wireshark.org/wireshark-win32-libs/trunk/packages/[].
[[ChLibsLua]]
=== LUA (optional)
=== LUA (Optional)
The LUA library is used to add scripting support to Wireshark.
[[ChLibsUnixLua]]
[discrete]
==== Unix
If this library isn't already installed or available as a
@ -307,14 +326,15 @@ http://www.lua.org/download.html[].
[[ChLibsWin32Lua]]
==== Win32 MSVC
[discrete]
==== Windows
We provide a copy of the official package at
https://anonsvn.wireshark.org/wireshark-win32-libs/trunk/packages/[].
[[ChLibsMaxMindDB]]
=== MaxMindDB (optional)
=== MaxMindDB (Optional)
MaxMind Inc. publishes a set of IP geolocation databases and related
open source libraries. They can be used to map IP addresses to
@ -327,15 +347,16 @@ https://github.com/maxmind/libmaxminddb[].
We provide a package for Windows at
https://anonsvn.wireshark.org/wireshark-win32-libs/trunk/packages/[].
[[ChLibsWinSparkle]]
[[ChLibsSparkle]]
=== WinSparkle (optional)
=== WinSparkle (Optional)
WinSparkle is an easy-to-use software update library for Windows developers.
[[ChLibsWin32WinSparkle]]
[[ChLibsWinSparkle]]
==== Win32 MSVC
[discrete]
==== Windows
We provide a copy of the WinSparkle package at
https://anonsvn.wireshark.org/wireshark-win32-libs/trunk/packages/[].

View File

@ -48,13 +48,13 @@ You need to install, in exactly this order:
. C compiler:
https://visualstudio.microsoft.com/thank-you-downloading-visual-studio/?sku=Community&rel=15[Download]
and install ``Microsoft Visual Studio 2017 Community Edition.'' This is a small
and install “Microsoft Visual Studio 2017 Community Edition.” This is a small
download that then downloads all the other required parts (which are quite large).
Check the checkbox for "Desktop development with C++" and then uncheck
all the optional components other than the "VC++ 2017" item with the
"latest ... tools", the "Windows 10 SDK", and the "Visual C++ tools for
CMake" (unless you want to use them for purposes other than Wireshark).
Check the checkbox for “Desktop development with {cpp}” and then uncheck
all the optional components other than the “V{cpp} 2017” item with the
“latest ... tools”, the “Windows 10 SDK”, and the “Visual {cpp} tools for
CMake (unless you want to use them for purposes other than Wireshark).
You can use Chocolatey to install Visual Studio, to correctly configure the
installation, copy the deployment XML file https://code.wireshark.org/review/gitweb?p=wireshark.git;a=blob_plain;f=tools/msvc2015AdminDeployment.xml;hb=HEAD[msvc2015AdminDeployment.xml] from the source code tools directory
@ -93,19 +93,19 @@ problems.
==== Install Qt
The main Wireshark application uses the Qt windowing toolkit. To
install Qt, go to the https://www.qt.io/download["Download Qt" page],
select "Go open source", download the *Qt Online Installer for Windows*
install Qt, go to the https://www.qt.io/download[“Download Qt” page],
select “Go open source”, download the *Qt Online Installer for Windows*
from the Qt Project and select, for the desired Qt version, a component
that matches your target system and compiler. For example, the Qt 5.9.5
``msvc2017 64-bit'' component is used to build the official 64-bit
that matches your target system and compiler. For example, the Qt {qt-lts-version}.5
“msvc2017 64-bit” component is used to build the official 64-bit
packages. You can deselect all the Qt xxxx (e.g. Qt Charts) components
as they aren't required.
as they arent required.
Note that installation of separate Qt components are required for 32 bit
and 64 bit builds, e.g. ``msvc2017 32-bit'' and ``msvc2017 64-bit''. The
and 64 bit builds, e.g. “msvc2017 32-bit” and “msvc2017 64-bit”. The
environment variable `QT5_BASE_DIR` should be set as appropriate for your
environment and should point to the Qt directory that contains the bin
directory, e.g. _C:\Qt\5.9.5\msvc2017_64_
directory, e.g. _C:\Qt{backslash}{qt-lts-version}.5\msvc2017_64_
The Qt maintenance tool (_C:\Qt\MaintenanceTool.exe_) can be used to
upgrade Qt to newer versions.
@ -176,15 +176,6 @@ so it shows a version number for:
* Text/docbook-xml45 (only needed if you're building the documenation)
// Also need: bash/sh, sed
You might also have to install
* Interpreters/m4
if installing Devel/bison doesn't provide a working version of Bison. If
m4 is missing bison will fail.
After clicking the btn:[Next] button several times, the setup
will then download and install the selected packages (this
may take a while).
@ -358,14 +349,14 @@ Make sure your repository path doesn't contain spaces.
==== Open a Visual Studio Command Prompt
From the Start Menu (or Start Screen), navigate to the `Visual Studio
2017' folder and choose the Command Prompt appropriate for the build you
wish to make, e.g. `x64 Native Tools Command Prompt for VS 2017' for a
64-bit version or `x86 Native Tools Command Prompt for VS 2017' for a
From the Start Menu (or Start Screen), navigate to the Visual Studio
2017 folder and choose the Command Prompt appropriate for the build you
wish to make, e.g. “x64 Native Tools Command Prompt for VS 2017” for a
64-bit version or “x86 Native Tools Command Prompt for VS 2017” for a
32-bit version. Depending on your version of Windows the Command Prompt
list might be directly under `Visual Studio 2017' or you might have to
dig for it under multiple folders, e.g. `Visual Studio 2017 -> Visual
Studio Tools -> Windows Desktop Command Prompts'.
list might be directly under “Visual Studio 2017” or you might have to
dig for it under multiple folders, e.g. menu:Visual Studio 2017[Visual
Studio Tools,Windows Desktop Command Prompts].
[TIP]
.Pin the items to the Task Bar
@ -380,6 +371,7 @@ All subsequent operations take place in this Command Prompt window.
--
Set the following environment variables, using paths and values suitable for your installation:
[subs="attributes+"]
----
> rem Let CMake determine the library download directory name under
> rem WIRESHARK_BASE_DIR or set it explicitly by using WIRESHARK_LIB_DIR.
@ -387,7 +379,7 @@ Set the following environment variables, using paths and values suitable for you
> set WIRESHARK_BASE_DIR=C:\Development
> rem set WIRESHARK_LIB_DIR=c:\wireshark-win64-libs
> rem Set the Qt installation directory
> set QT5_BASE_DIR=C:\Qt\5.9.5\msvc2017_64
> set QT5_BASE_DIR=C:\Qt{backslash}{qt-lts-version}.5\msvc2017_64
> rem Append a custom string to the package version. Optional.
> set WIRESHARK_VERSION_EXTRA=-YourExtraVersionInfo
----
@ -410,9 +402,11 @@ Setting these variables could be added to a batch file to be run after you open
the Visual Studio Tools Command Prompt.
[TIP]
.Use Qts LTS branch
====
Qt 5.9 is a "long term support" branch of Qt5. We recommend using it to
compile Wireshark on Windows.
We recommend using the most recent “long term support” branch of Qt5 to
compile Wireshark on Windows. At the time of writing this is Qt
{qt-lts-version}.
====
--

View File

@ -447,26 +447,21 @@ https://docs.microsoft.com/en-us/cpp/build/reference/linking?view=vs-2017[Micros
[[msvc-runtime-redistributable]]
==== C-Runtime "Redistributable" Files
==== Visual {cpp} Runtime “Redistributable” Files
Please note: The following is not legal advice - ask your preferred lawyer
instead. Its the authors view and this view might be wrong.
Please note: The following is not legal advice. Ask your preferred
lawyer instead. Its the authors view and this view might be wrong.
Depending on the Microsoft compiler version you use, some binary files coming
from Microsoft might be required to be installed on Windows machine to run
Wireshark. On a developer machine, the compiler setup installs these files so
they are available - but they might not be available on a user machine!
This is especially true for the C runtime DLL (msvcr*.dll), which contains the
implementation of ANSI and alike functions, e.g.: fopen(), malloc(). The DLL is
named like: _msvcr**version**.dll_, an abbreviation for "Microsoft Visual C
Runtime". For Wireshark to work, this DLL must be available on the users
machine.
Starting with MSVC7, it is necessary to ship the C runtime DLL
(_msvcr**version**.dll_) together with the application installer somehow, as that
DLL is possibly not available on the target system.
Wireshark and its libraries depend on POSIX functions such as fopen()
and malloc(). On Windows, these functions are provided by the Microsoft
Visual {cpp} Runtime. There are many different versions of the CRT and
Visual {cpp} 2015 and later use the _Universal CRT_.
The Universal CRT comes standard with Windows 10 and is installed as part
of Windows Update on earlier versions of Windows. The Wireshark .exe
installers include redistributables (_vcredist_x86.exe_ or
_vcredist_x64.exe_) which ensure that the Universal CRT is installed and
up to date.
[NOTE]
.Make sure you're allowed to distribute this file
@ -480,20 +475,21 @@ us.
The following Microsoft Docs link is recommended for the
interested reader:
* https://docs.microsoft.com/en-us/cpp/ide/redistributing-visual-cpp-files?view=vs-2017[Redistributing Visual C++ Files]
https://docs.microsoft.com/en-us/cpp/ide/redistributing-visual-cpp-files?view=vs-2017[Redistributing Visual {cpp} Files]
In all cases where _vcredist_x86.exe_ or _vcredist_x64.exe_ is
downloaded it should be downloaded to the directory into which the support
libraries for Wireshark have been downloaded and installed. This directory is
specified by the WIRESHARK_BASE_DIR or WIRESHARK_LIB_DIR environment variables.
It need not, and should not, be run after being downloaded.
downloaded it should be downloaded to the directory into which the
support libraries for Wireshark have been downloaded and installed. This
directory is specified by the `WIRESHARK_BASE_DIR` or
`WIRESHARK_LIB_DIR` environment variables. It need not, and should not,
be run after being downloaded.
==== Windows (Platform) SDK
==== Windows Platform SDK
The Windows Platform SDK (PSDK) or Windows SDK is a free
(as in beer) download and contains platform specific headers and
libraries (e.g. `windows.h`, `WSock32.lib`, etc.). As new Windows
features evolve in time, updated SDKs become available that
libraries (e.g. _windows.h_, _WSock32.lib_, etc.). As new Windows
features evolve in time, updated SDKs become available that
include new and updated APIs.
When you purchase a commercial Visual Studio or use the Community
@ -571,7 +567,7 @@ otherwise the debugger will simply fail or you will only see a lot of garbage.
[[ChToolsMSVCDebugger]]
===== Visual Studio integrated debugger
===== Visual Studio Integrated Debugger
You can use the integrated debugger of Visual Studio if your toolchain includes
it. Open the solution in your build directory and build and debug as normal
@ -614,7 +610,7 @@ If you require a non-optimised version, then build using a debug configuration.
[[ChToolsMSDebuggingTools]]
===== Debugging Tools for Windows
===== Debugging Tools For Windows
You can also use the Microsoft Debugging Tools for Windows toolkit, which is a
standalone GUI debugger. Although its not that comfortable compared to
@ -650,7 +646,8 @@ The bash shell is needed to run several shell scripts.
[[ChToolsGNUBash]]
==== UNIX and UNIX-like platforms: GNU Bash
[discrete]
==== Unix
Bash (the GNU Bourne-Again SHell) is available for most UNIX and
UNIX-like platforms. If it isn't already installed or available as a
@ -734,7 +731,8 @@ and above should work fine.
[[ChToolsUnixPerl]]
==== UNIX and UNIX-like platforms: Perl
[discrete]
==== Unix
Perl is available for most UNIX and UNIX-like platforms. If perl isn't
already installed or available as a package for your platform, you can
@ -768,7 +766,8 @@ However, the version string may vary.
[[ChToolsWindowsPerl]]
==== Windows native: Perl
[discrete]
==== Windows
A native Windows Perl package can be obtained from
http://www.ActiveState.com[Active State] or http://strawberryperl.com/[Strawberry Perl]. The installation
@ -819,7 +818,8 @@ Bison is a parser generator used for some of Wiresharks file format support.
[[ChToolsUnixBison]]
==== UNIX and UNIX-like platforms: Bison
[discrete]
==== Unix
Bison is available for most UNIX and UNIX-like platforms. See the next
section for native Windows options.
@ -849,7 +849,8 @@ Your version string may vary.
[[ChToolsWindowsBison]]
==== Windows native: Win flex-bison and bison
[discrete]
==== Windows
A native Windows version of bison is available in the _winflexbison_
https://chocolatey.org/[Chocolatey] package. Note that the executable is named
@ -868,7 +869,8 @@ file formats, and other features.
[[ChToolsUnixFlex]]
==== UNIX and UNIX-like platforms: flex
[discrete]
==== Unix
Flex is available for most UNIX and UNIX-like platforms. See the next
section for native Windows options.
@ -893,7 +895,8 @@ Your version string may vary.
[[ChToolsWindowsFlex]]
==== Windows native: Win flex-bison and flex
[discrete]
==== Windows
A native Windows version of flex is available in the _winflexbison_
https://chocolatey.org/[Chocolatey] package. Note that the executable is named
@ -926,7 +929,8 @@ client.
[[ChToolsUnixGit]]
==== UNIX and UNIX-like platforms: git
[discrete]
==== Unix
Git is available for most UNIX and UNIX-like platforms. If Git isn't
already installed or available as a package for your platform, you can
@ -949,7 +953,8 @@ Your version will likely be different.
[[ChToolsWindowsGit]]
==== Windows native: git
[discrete]
==== Windows
The Git command line tools for Windows can be found at
http://git-scm.com/download/win[] and can also be installed using Chocolatey:
@ -977,7 +982,7 @@ However, the version string may vary.
[[ChToolsGitPowerShellExtensions]]
=== Git Powershell Extensions (optional)
=== Git Powershell Extensions (Optional)
A useful tool for command line git on Windows is https://github.com/dahlbyk/posh-git[PoshGit].
Poshgit provides git command completion and alters the prompt to indicate the local working
@ -990,7 +995,7 @@ PS:\>choco install poshgit
[[ChToolsGitGUI]]
=== Git GUI client (optional)
=== Git GUI Client (Optional)
Along with the traditional command-line client, several
GUI clients are available for a number of platforms. See
@ -1001,7 +1006,7 @@ http://git-scm.com/downloads/guis[] for details.
[[ChToolsPatch]]
=== patch (optional)
=== patch (Optional)
The patch utility is used to merge a diff file into your own source tree. This
tool is only needed, if you want to apply a patch (diff file) from someone else
@ -1016,7 +1021,8 @@ tool.
[[ChToolsUnixPatch]]
==== UNIX and UNIX-like platforms: patch
[discrete]
==== Unix
Patch is available for most UNIX and UNIX-like platforms. If GNU patch
isn't already installed or available as a package for your platform, you
@ -1049,7 +1055,8 @@ However, the version string may vary.
[[ChToolsWindowsPatch]]
==== Windows native: patch
[discrete]
==== Windows
The Windows native Git tools provide patch. A native Windows patch package can be obtained from
http://gnuwin32.sourceforge.net/[]. The
@ -1057,7 +1064,7 @@ installation should be straightforward.
[[ChToolsNSIS]]
=== Windows: NSIS (optional)
=== Windows: NSIS (Optional)
The NSIS (Nullsoft Scriptable Install System) is used to generate
_Wireshark-win32-{wireshark-version}.exe_ from all the files
@ -1065,7 +1072,7 @@ needed to be installed, including all required DLLs, plugins, and supporting
files.
To install it, download the latest released version from
http://nsis.sourceforge.net[]. NSIS v3 is required. You can also install
https://nsis.sourceforge.net[]. NSIS v3 is required. You can also install
it using Chocolatey:
[source,cmd]
@ -1075,7 +1082,23 @@ PS$> choco install nsis
You can find more instructions on using NSIS in <<ChSrcNSIS>>.
=== Windows: PortableApps (optional)
[[ChToolsWiX]]
=== Windows: WiX Toolset (Optional)
The Wix Toolset can be used to generate Windows Installer (_.msi_)
packages. You can download it from the link:http://wixtoolset.org/[WiX
web site] or install it using Chocolatey:
[source,cmd]
----
PS$> choco install wixtoolset
----
Wiresharks .msi packaging is currently experimental and the generated
packages may be incomplete.
=== Windows: PortableApps (Optional)
The PortableApps.com Installer is used to generate
_WiresharkPortable-{wireshark-version}.paf.exe_ from all the files

View File

@ -52,7 +52,7 @@ documentation and instead prefer to learn an application as they use it.
Providing feedback increases your sense of control and awareness, and
makes the application more enjoyable to use. Most of the Qt dialogs
provide a “hint” area near the bottom which shows useful information.
For example, the ``Follow Stream'' dialog shows the packet corresponding
For example, the “Follow Stream” dialog shows the packet corresponding
to the text under the mouse. The profile management dialog shows a
clickable path to the current profile. The main welcome screen shows
live interface traffic. Most dialogs have a context menu that shows
@ -64,17 +64,17 @@ Qt Creator is a full-featured IDE and user interface editor. It makes
adding new UI features much easier. It doesn't work well on Windows at
the present time, so its recommended that you use it on macOS or Linux.
To edit and build Wireshark using Qt Cretor, open the top-level
To edit and build Wireshark using Qt Creator, open the top-level
_CMakeLists.txt_ within Qt Creator. It should ask you to choose a build
location. Do so. It should then ask you to run CMake. Fill in any
desired build arguments (e.g. "-D CMAKE_BUILD_TYPE=Debug" or "-D
ENABLE_CCACHE=ON") and click the ``Run CMake'' button. When that
completes select ``Build → Open Build and Run Kit Selector...'' and make
desired build arguments (e.g. `-D CMAKE_BUILD_TYPE=Debug` or `-D
ENABLE_CCACHE=ON`) and click the btn:[Run CMake] button. When that
completes select menu:Build[Open Build and Run Kit Selector...] and make
sure _wireshark_ is selected.
Note that Qt Creator uses output created by CMakes *CodeBlocks*
Note that Qt Creator uses output created by CMakes “CodeBlocks”
generator. If you run CMake outside of Qt Creator you should use the
``CodeBlocks - Unix Makefiles'' generator, otherwise Qt Creator will
“CodeBlocks - Unix Makefiles” generator, otherwise Qt Creator will
prompt you to re-run CMake.
==== Source Code Overview

View File

@ -54,8 +54,8 @@ root directory.
Dumpcap:: The capture engine itself. This is the only part that is to execute
with elevated privileges. Source code is in the root directory.
WinPcap and libpcap:: These are separate libraries that provide packet capture
and filtering support on different platforms. The filtering WinPcap and libpcap
Npcap and libpcap:: These are separate libraries that provide packet capture
and filtering support on different platforms. The filtering in Npcap and libpcap
works at a much lower level than Wiresharks display filters and uses a
significantly different mechanism. Thats why we have different display and
capture filter syntaxes.
@ -74,7 +74,7 @@ privileges, allowing the main part of the code (dissectors, user interface,
etc) to run with normal user privileges.
To hide all the low-level machine dependent details from Wireshark, the libpcap
and WinPcap (see <<ChLibsPcap>>) libraries are used. These libraries provide a
and Npcap (see <<ChLibsPcap>>) libraries are used. These libraries provide a
general purpose interface to capture packets and are used by a wide variety of
applications.