Convert the FAQ to Asciidoctor and remove old help files.

Convert our self-generating FAQ to Asciidoctor via the following steps:

- `help/faq.py > /tmp/faq.html`.
- `pandoc -t asciidoc -o docbook/faq.adoc /tmp/faq.html`.
- Manually clean up the markup using a text editor.

Question and answer content was left intact. Removing or updating
obsolete content will have to be done in a separate change.

The Asciidoctor project uses the .adoc extension, so start using it here
as well.

The contents of the "help" directory appear to have been used for
offline support in help_url.c, but that functionality was removed in
2008 in 242e3b78bc. Its content is covered in the User's Guide and man
pages so remove it.

Change-Id: I9060eefe97cfc137f8b414077c30f814379b576a
Reviewed-on: https://code.wireshark.org/review/32014
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-02-11 14:24:18 -08:00
parent ef0ef16c30
commit 23c9a1e036
17 changed files with 1151 additions and 2265 deletions

View File

@ -1638,15 +1638,6 @@ set(INSTALL_DIRS
wimaxasncp
)
# FIXME: The help files are textfified on Windows into the staging dir.
# The DATAFILE_DIR depends on CMAKE_CFG_INTDIR therefore it cannot be
# added to an install() command with build systems supporting multiple
# configurations in the build tree (e.g.: Visual Studio).
if(NOT WIN32)
list(APPEND INSTALL_DIRS help)
endif()
set(INSTALL_FILES
cfilters
colorfilters
@ -1883,12 +1874,6 @@ endif(WIN32)
# List of extra dependencies for the "copy_data_files" target
set(copy_data_files_depends)
# glob patterns relative to the source directory that should be copied to
# ${DATAFILE_DIR} (including directory prefixes)
set(DATA_FILES_SRC
"help/toc"
)
if(WIN32)
foreach(_text_file ${TEXTIFY_FILES})
add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/${_text_file}.txt
@ -1929,45 +1914,6 @@ foreach(_install_file ${INSTALL_FILES})
list(APPEND copy_data_files_depends "${_output_file}")
endforeach()
# faq.txt is handled separately below.
set(_help_source_files
help/capture_filters.txt
help/capturing.txt
help/display_filters.txt
help/getting_started.txt
help/overview.txt
)
if(WIN32)
file(TO_NATIVE_PATH "${DATAFILE_DIR}/help" _help_dest_dir)
foreach(_help_file IN LISTS _help_source_files)
add_custom_command(OUTPUT "${DATAFILE_DIR}/${_help_file}"
COMMAND ${CMAKE_COMMAND} -E make_directory "${DATAFILE_DIR}/help"
COMMAND ${POWERSHELL_COMMAND} "${CMAKE_SOURCE_DIR}/tools/textify.ps1"
-Destination "${_help_dest_dir}"
"${CMAKE_SOURCE_DIR}/${_help_file}"
DEPENDS
"${CMAKE_SOURCE_DIR}/${_help_file}"
)
list(APPEND copy_data_files_depends "${DATAFILE_DIR}/${_help_file}")
endforeach()
else()
list(APPEND DATA_FILES_SRC ${_help_source_files})
endif(WIN32)
# Create help/faq.txt when missing
add_custom_command(OUTPUT "${DATAFILE_DIR}/help/faq.txt"
COMMAND ${CMAKE_COMMAND} -E make_directory "${DATAFILE_DIR}/help"
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/help/faq.py -b > faq.tmp.html
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/tools/html2text.py
faq.tmp.html > "${DATAFILE_DIR}/help/faq.txt"
COMMAND ${CMAKE_COMMAND} -E remove faq.tmp.html
DEPENDS
"${CMAKE_SOURCE_DIR}/help/faq.py"
"${CMAKE_SOURCE_DIR}/tools/html2text.py"
)
list(APPEND copy_data_files_depends "${DATAFILE_DIR}/help/faq.txt")
# Install LUA files in staging directory such that LUA can used when Wireshark
# is ran from the build directory. For install targets, see
# epan/wslua/CMakeLists.txt
@ -1993,8 +1939,10 @@ if(LUA_FOUND AND ENABLE_LUA)
endif(LUA_FOUND AND ENABLE_LUA)
# doc/*.html handled elsewhere.
# Glob patterns relative to the source directory that should be copied to
# ${DATAFILE_DIR} (including directory prefixes)
# TODO shouldn't this use full (relative) paths instead of glob patterns?
list(APPEND DATA_FILES_SRC
set(DATA_FILES_SRC
"tpncp/tpncp.dat"
"wimaxasncp/*.dtd"
"wimaxasncp/*.xml"

View File

@ -535,6 +535,19 @@ if( ASCIIDOCTOR_FOUND )
ASCIIDOCTOR2TXT( release-notes.asciidoc )
endif()
# FAQ
add_custom_target( faq_html DEPENDS faq.html )
set_docbook_target_properties(faq_html)
add_custom_target( faq )
set_docbook_target_properties(faq)
add_dependencies ( faq faq_html )
if( ASCIIDOCTOR_FOUND )
ASCIIDOCTOR2HTML( faq.adoc copy_ws.css )
endif()
#
# Editor modelines - http://www.wireshark.org/tools/modelines.html
#

1108
docbook/faq.adoc Executable file

File diff suppressed because it is too large Load Diff

View File

@ -1,78 +0,0 @@
Filtering packets while capturing
---------------------------------
Capture Filters are used to filter out uninteresting packets already at capture time. This is done to reduce the size of the resulting capture (file) and is especially useful on high traffic networks or for long term capturing.
Wireshark uses the pcap (libpcap/WinPcap) filter language for capture filters. This language is explained in the tcpdump man page under "expression" (http://www.tcpdump.org and search for "selects which").
Note: This capture filter language is different from the one used for the Wireshark display filters!
-------------------------------------------------
Some common examples
--------------------
Example Ethernet: capture all traffic to and from the Ethernet address 08:00:08:15:ca:fe
ether host 08:00:08:15:ca:fe
Example IP: capture all traffic to and from the IP address 192.168.0.10
host 192.168.0.10
Example TCP: capture all traffic to and from the TCP port 80 (http) of all machines
tcp port 80
Examples combined: capture all traffic to and from 192.168.0.10 except http
host 192.168.0.10 and not tcp port 80
Beware: if you capture TCP/IP traffic with the primitives "host" or "port", you will not see the ARP traffic belonging to it!
-------------------------------------------------
Capture Filter Syntax
---------------------
The following is a short description of the capture filter language syntax. For a further reference, have a look at: http://www.tcpdump.org/tcpdump_man.html
A capture filter takes the form of a series of primitive expressions, connected by conjunctions (and/or) and optionally preceded by not:
[not] primitive [and|or [not] primitive ...]
A primitive is simply one of the following:
[src|dst] host <host>
This primitive allows you to filter on a host IP address or name. You can optionally precede the primitive with the keyword src|dst to specify that you are only interested in source or destination addresses. If these are not present, packets where the specified address appears as either the source or the destination address will be selected.
ether [src|dst] host <ehost>
This primitive allows you to filter on Ethernet host addresses. You can optionally include the keyword src|dst between the keywords ether and host to specify that you are only interested in source or destination addresses. If these are not present, packets where the specified address appears in either the source or destination address will be selected.
gateway host <host>
This primitive allows you to filter on packets that used host as a gateway. That is, where the Ethernet source or destination was host but neither the source nor destination IP address was host.
[src|dst] net <net> [{mask <mask>}|{len <len>}]
This primitive allows you to filter on network numbers. You can optionally precede this primitive with the keyword src|dst to specify that you are only interested in a source or destination network. If neither of these are present, packets will be selected that have the specified network in either the source or destination address. In addition, you can specify either the netmask or the CIDR (Classless Inter-Domain Routing) prefix for the network if they are different from your own.
[tcp|udp] [src|dst] port <port>
This primitive allows you to filter on TCP and UDP port numbers. You can optionally precede this primitive with the keywords src|dst and tcp|udp which allow you to specify that you are only interested in source or destination ports and TCP or UDP packets respectively. The keywords tcp|udp must appear before src|dst.
If these are not specified, packets will be selected for both the TCP and UDP protocols and when the specified address appears in either the source or destination port field.
less|greater <length>
This primitive allows you to filter on packets whose length was less than or equal to the specified length, or greater than or equal to the specified length, respectively.
ip|ether proto <protocol>
This primitive allows you to filter on the specified protocol at either the Ethernet layer or the IP layer.
ether|ip broadcast|multicast
This primitive allows you to filter on either Ethernet or IP broadcasts or multicasts.
<expr> relop <expr>
This primitive allows you to create complex filter expressions that select bytes or ranges of bytes in packets. Please see the tcpdump man pages for more details.

View File

@ -1,82 +0,0 @@
Capturing
---------
This section will explain the capturing options and give hints on what to do in some special cases.
Capture options
---------------
The capture options can be logically divided into the following categories:
-input
-filtering
-stop conditions
-storing
-display while capturing
Input options
-------------
-Interface: You have to choose which interface (network card) will be used to capture packets from. Be sure to select the correct one, as it's a common mistake to select the wrong interface.
-Link-layer header type: unless you are in the rare case that you will need this, just keep the default.
Filtering options
-----------------
-Capture packets in promiscuous mode: Usually a network card will only capture the traffic to its own network address. If you want to capture all traffic that the network card can "see", mark this option. See the FAQ for some more details of capturing packets from a switched network.
-Limit each packet to xy bytes: Will limit the maximum size to be captured of each packet, this includes the link-layer header and all subsequent headers. This can be useful when an error is known to be in the first 20 bytes of a packet, for example, as the size of the resulting capture file will be reduced.
-Capture Filter: Use a capture filter to reduce the amount of packets to be captured. See "Capture Filters" in this help for further information how to use it.
Storing options
---------------
-File: You can choose the file to which captured data will be written. If you don't enter something here a temporary file will be used.
-Use multiple files: Instead of using a single capture file, multiple files will be created. The generated filenames will contain an incrementing number and the start time of the capture. For example, if you choose "/foo.cap" in the "File" field, files like "/foo_00001_20040205110102.cap", "/foo_00002_20040205110102.cap", ... will be created.
This feature can be useful if you do long term capturing, as working with a single capture file of several GB usually isn't very fast.
Stop condition options
----------------------
These three fields should be obvious; the capture process will be automatically stopped if one of the selected conditions is exceeded.
Display while capturing options
-------------------------------
-Update list of packets in real time: Using this will show the captured packets immediately on the main screen.
Please note: this will slow down capturing, so increased packet drops might appear.
-Automatic scrolling in live capture: This will scroll the "Packet List" automatically to the latest captured packet, when the "Update List of packets in real time" option is used.
-Name resolution: perform the corresponding name resolution while capturing.
High performance capturing
--------------------------
When your network traffic is high, you might need to take some steps to ensure Wireshark doesn't get behind on its capture, particularly if you're running it on a slow computer.
When Wireshark cannot keep up, packets are dropped. To help avoid this as much as possible:
a) Don't use the "Update list of packets in real time" option (see above). This has a significant performance penalty.
b) Close other programs that might slow down your system, such as virus scanner software, server processes, etc.
c) It might be a good idea not to use a capture filter. This will depend on the task you have to do.
As a rule of thumb: if you want to see most of the packets and only filter a small number out, don't use a capture filter (you can use a display filter later). If you only want to capture a small proportion of the packets, it might be better to set a capture filter, as this will reduce the number of packets that have to be saved.
d) If you still get packet drops, it might be an idea to use a tool dedicated to packet capturing and only use Wireshark for displaying and analyzing the packets.
Have a look at tshark, the command line variant of wireshark, which is included in this package.
XXX: add a list of possibly useful standalone capture programs.
Long term capturing
-------------------
By "Long term capturing", it's meant to capture data from a network for several hours or even days. Long term capturing will usually result in huge capture files, being hundreds of MB's or even several GB's in size!
Before doing a long term capture, get familiar with the options to use for it, as you might not get what you desire. Doing a long term capture not getting the results needed, is usually wasting a lot of time. ;-)
Rules of thumb for this task:
-Use the ring buffer feature when you expect very large capture files.
-Don't use the "Update list of packets in real time" option.
-Set an appropriate capture filter, when you are only interested in some special packets from the net.

View File

@ -1,41 +0,0 @@
Filtering packets while viewing
-------------------------------
After capturing packets or loading some network traffic from a file, Wireshark will display the packet data immediately on the screen.
Using display filters, you can choose which packets should (not) be shown on the screen. This is useful to reduce the "noise" usually on the network, showing only the packets you want to. So you can concentrate on the things you are really interested in.
The display filter will not affect the data captured, it will only select which packets of the captured data are displayed on the screen.
Every time you change the filter string, all packets will be reread from the capture file (or from memory), and processed by the display filter "machine". Packet by packet, this "machine" is asked, if this particular packet should be shown or not.
Wireshark offers a very powerful display filter language for this. It can be used for a wide range of purposes, from simply: "show only packets from a specific IP address", or on the other hand, to very complex filters like: "find all packets where a special application specific flag is set".
Note: This display filter language is different from the one used for the Wireshark capture filters!
-------------------------------------------------
Some common examples
--------------------
Example Ethernet: display all traffic to and from the Ethernet address 08.00.08.15.ca.fe
eth.addr==08.00.08.15.ca.fe
Example IP: display all traffic to and from the IP address 192.168.0.10
ip.addr==192.168.0.10
Example TCP: display all traffic to and from the TCP port 80 (http) of all machines
tcp.port==80
Examples combined: display all traffic to and from 192.168.0.10 except http
ip.addr==192.168.0.10 && tcp.port!=80
Beware: The filter string builds a logical expression, which must be true to show the packet. The && is a "logical and", "A && B" means: A must be true AND B must be true to show the packet (it doesn't mean: A will be shown AND B will be shown).
-------------------------------------------------
Hint
----
Filtering can lead to side effects, which are sometimes not obvious at first sight. Example: If you capture TCP/IP traffic with the primitive "ip", you will not see the ARP traffic belonging to it, as this is a lower protocol layer than IP!

File diff suppressed because it is too large Load Diff

View File

@ -1,91 +0,0 @@
Getting started
---------------
This text will try to take you though the first steps of using Wireshark.
Display
-------
When you start Wireshark, you will see the program window vertically divided into the following parts:
-window title
-menu
-main toolbar
-packet list (empty)
-packet details (empty)
-packet bytes (empty)
-statusbar (with filter toolbar)
As Wireshark has no packet data when started, most of the program's window is just empty.
Many of the features available in the menu will also be on the main toolbar.
First capture file
------------------
The first thing you probably want to do is look at some captured network data/packets.
This can be achieved by two methods:
-open an already existing capture file
-capture something from your own network
It might be easier to start with an example capture file from "http://www.wireshark.org/sample" before capturing your own data.
You can open a capture file through the menu "File->Open..." (or the toolbar).
Please note: the common file extension for capture files is ".cap" (or ".cap.gz" for gzipped ones).
After opening a capture file, you will hopefully see some more packet data on the screen. :-)
Display fields
--------------
In the "packet list", you will see several columns with a packet number, timestamp(s), addresses and a protocol specific summary of that packet. Here you can select a packet to be shown in the "packet details" below.
In the "packet details", the details of the currently selected packet are shown. You can expand the tree nodes to get even more details about that packet.
The "packet bytes" will simply show all the packet data in a hexdump style. It will show the same packet as in the "packet details", only with a different representation.
When you select something in the "packet details", it will be highlighted in the "packet bytes" and vice-versa.
All three display fields have their own context menu, available by clicking the right mouse button inside that part of the window.
How to analyze protocol specific network data itself is not in the scope of this text.
Display filters
---------------
You can reduce the number of packets shown (to filter out the uninteresting ones) by setting a display filter. Please see "Display Filters" in this help dialog for further information how the display filters should be used.
Coloring Rules
--------------
The packet list can be colored; this means applying different colors for different packets. For example you could choose to have all HTTP packets shown in red and all other TCP traffic shown in yellow. There are two types of color rules, temporary (only used in this session) and permanent (save between sessions).
Temporary coloring rules can be created by either pressing <ctrl> and one of the number keys (0-9). This will create a conversation color rule based on the currently selected packet. Temporary color rules can also be added by choosing "color X" from different menus.
Under "View->Coloring Rules..." you will see a list of permanentcolor rules. This list is processed for each packet from top to bottom, until one of the rules matches (in which case the color settings of that rule are used for that packet). If no rule matches, the packet will not be colored at all.
Please note: setting lots of color rules can slow down processing time a bit when showing huge capture files.
Other display things
--------------------
You can mark packets, so that you can easily find packets of interest again later.
You can set a time reference, if you are interested in seeing timings relative to a specific packet (e.g. get time differences relative to the start of some data transfer).
But remember: These settings will not be saved - they are forgotten when the capture file is closed.
Capture from the network
------------------------
Most likely you will now want to get some "real life" packet data captured from your own network interface.
When opening the capture dialog with "Capture->Start...", you will see lots of settings to choose from. For your first test, just keep the default settings.
After clicking "OK", the capture starts and a dialog shows up, giving the actual count of captured packets and some very basic packet statistics.
When you stop the capture, you will get the same screen as if you had opened a capture file from disk, using the "File->Open" command.
See the "Capturing" section of this help for further information about capturing.
Conclusion
----------
There are a lot more features than described here. Just have a look at the menus to see them all. :-)
For more information about Wireshark, see: "http://www.wireshark.org". You can get a user's guide and other useful information there.
We hope this helped you with the first steps of using Wireshark and that you will enjoy using this program.

View File

@ -1,36 +0,0 @@
Wireshark is a GUI network protocol analyzer.
It lets you interactively browse packet data from a live network or from a previously saved capture file.
See: http://www.wireshark.org for new versions, documentation, ...
Wireshark's native capture file format is libpcap format, which is also the format used by tcpdump and various other tools. So Wireshark can read capture files from:
-libpcap/WinPcap, tcpdump and various other tools using tcpdump's capture format
-snoop and atmsnoop
-Shomiti/Finisar Surveyor captures
-Novell LANalyzer captures
-Microsoft Network Monitor captures
-AIX's iptrace captures
-Cinco Networks NetXRay captures
-Network Associates Windows-based Sniffer captures
-Network General/Network Associates DOS-based Sniffer (compressed or uncompressed) captures
-AG Group/WildPackets/Savvius EtherPeek/TokenPeek/AiroPeek/EtherHelp/PacketGrabber captures
-RADCOM's WAN/LAN analyzer captures
-Network Instruments Observer version 9 captures
-Lucent/Ascend router debug output
-files from HP-UX's nettl
-Toshiba's ISDN routers dump output
-the output from i4btrace from the ISDN4BSD project
-traces from the EyeSDN USB S0.
-the output in IPLog format from the Cisco Secure Intrusion Detection System
-pppd logs (pppdump format)
-the output from VMS's TCPIPtrace/TCPtrace/UCX$TRACE utilities
-the text output from the DBS Etherwatch VMS utility
-Visual Networks' Visual UpTime traffic capture
-the output from CoSine L2 debug
-the output from Accellent's 5Views LAN agents
-Endace Measurement Systems' ERF format captures
-Linux Bluez Bluetooth stack hcidump -w traces
There is no need to tell Wireshark what type of file you are reading; it will determine the file type by itself. Wireshark is also capable of reading any of these file formats if they are compressed using gzip. Wireshark recognizes this directly from the file; the '.gz' extension is not required for this purpose.

View File

@ -1,6 +0,0 @@
Overview:overview.txt
Getting started:getting_started.txt
Capturing:capturing.txt
Capture Filters:capture_filters.txt
Display Filters:display_filters.txt
FAQ:faq.txt

View File

@ -35,7 +35,7 @@ set(PROGRAM_NAME ${CMAKE_PROJECT_NAME})
file(TO_NATIVE_PATH "${CMAKE_SOURCE_DIR}" TOP_SRC_DIR)
# STAGING_DIR depends on the build configuration so we pass it
# on the command line below.
file(TO_NATIVE_PATH "${CMAKE_BINARY_DIR}/docbook" USER_GUIDE_DIR)
file(TO_NATIVE_PATH "${CMAKE_BINARY_DIR}/docbook" DOCBOOK_DIR)
if(WIRESHARK_TARGET_PLATFORM STREQUAL "win32")
set(TARGET_MACHINE x86)
elseif(WIRESHARK_TARGET_PLATFORM STREQUAL "win64")
@ -204,6 +204,7 @@ macro( ADD_NSIS_PACKAGE_TARGET )
${NSIS_FILES}
copy_data_files
user_guide_chm
faq_html
${DATAFILE_DIR}/uninstall.exe
)
set_target_properties(nsis_package_prep PROPERTIES FOLDER "Packaging")

View File

@ -23,7 +23,7 @@
#cmakedefine MMDBRESOLVE_EXE @MMDBRESOLVE_EXE@
#cmakedefine USER_GUIDE_DIR "@USER_GUIDE_DIR@"
#cmakedefine DOCBOOK_DIR "@DOCBOOK_DIR@"
#cmakedefine SMI_DIR "@SMI_DIR@"

View File

@ -1159,11 +1159,12 @@ SectionEnd
SectionGroupEnd ; "Tools"
!ifdef USER_GUIDE_DIR
Section "User's Guide" SecUsersGuide
!ifdef DOCBOOK_DIR
Section "Documentation" SecDocumentation
;-------------------------------------------
SetOutPath $INSTDIR
File "${USER_GUIDE_DIR}\user-guide.chm"
File "${DOCBOOK_DIR}\user-guide.chm"
File "${DOCBOOK_DIR}\faq.html"
SectionEnd
!endif
@ -1215,8 +1216,8 @@ SectionEnd
!insertmacro MUI_DESCRIPTION_TEXT ${SecRandpkt} "Random packet generator."
!insertmacro MUI_DESCRIPTION_TEXT ${SecMMDBResolve} "MaxMind Database resolution tool"
!ifdef USER_GUIDE_DIR
!insertmacro MUI_DESCRIPTION_TEXT ${SecUsersGuide} "Install an offline copy of the User's Guide."
!ifdef DOCBOOK_DIR
!insertmacro MUI_DESCRIPTION_TEXT ${SecDocumentation} "Install an offline copy of the User's Guide and FAQ."
!endif
!insertmacro MUI_FUNCTION_DESCRIPTION_END

View File

@ -58,7 +58,7 @@ set(PROGRAM_NAME ${CMAKE_PROJECT_NAME})
file(TO_NATIVE_PATH "${CMAKE_SOURCE_DIR}" TOP_SRC_DIR)
# STAGING_DIR depends on the build configuration so we pass it
# on the command line below.
file(TO_NATIVE_PATH "${CMAKE_BINARY_DIR}/docbook" USER_GUIDE_DIR)
file(TO_NATIVE_PATH "${CMAKE_BINARY_DIR}/docbook" DOCBOOK_DIR)
if(WIRESHARK_TARGET_PLATFORM STREQUAL "win32")
set(TARGET_MACHINE x86)
elseif(WIRESHARK_TARGET_PLATFORM STREQUAL "win64")
@ -264,6 +264,7 @@ macro( ADD_WIX_PACKAGE_TARGET )
${WIX_FILES}
copy_data_files
user_guide_chm
faq_html
)
set_target_properties(wix_package_prep PROPERTIES FOLDER "Packaging")

View File

@ -221,44 +221,6 @@
</ComponentGroup>
</Fragment>
<!-- Help files -->
<Fragment>
<DirectoryRef Id="dirHelp">
<Component Id="cmpHelp_toc" Guid="*">
<File Id="filHelp_toc" KeyPath="yes" Source="$(var.Help.Dir)\toc" />
</Component>
<Component Id="cmpHelp_overview_txt" Guid="*">
<File Id="filHelp_overview_txt" KeyPath="yes" Source="$(var.Help.Dir)\overview.txt" />
</Component>
<Component Id="cmpHelp_getting_started_txt" Guid="*">
<File Id="filHelp_getting_started_txt" KeyPath="yes" Source="$(var.Help.Dir)\getting_started.txt" />
</Component>
<Component Id="cmpHelp_capturing_txt" Guid="*">
<File Id="filHelp_capturing_txt" KeyPath="yes" Source="$(var.Help.Dir)\capturing.txt" />
</Component>
<Component Id="cmpHelp_capture_filters_txt" Guid="*">
<File Id="filHelp_capture_filters_txt" KeyPath="yes" Source="$(var.Help.Dir)\capture_filters.txt" />
</Component>
<Component Id="cmpHelp_display_filters_txt" Guid="*">
<File Id="filHelp_display_filters_txt" KeyPath="yes" Source="$(var.Help.Dir)\display_filters.txt" />
</Component>
<Component Id="cmpHelp_faq_txt" Guid="*">
<File Id="filHelp_faq_txt" KeyPath="yes" Source="$(var.Help.Dir)\faq.txt" />
</Component>
</DirectoryRef>
</Fragment>
<Fragment>
<ComponentGroup Id="CG.Help">
<ComponentRef Id="cmpHelp_toc" />
<ComponentRef Id="cmpHelp_overview_txt" />
<ComponentRef Id="cmpHelp_getting_started_txt" />
<ComponentRef Id="cmpHelp_capturing_txt" />
<ComponentRef Id="cmpHelp_capture_filters_txt" />
<ComponentRef Id="cmpHelp_display_filters_txt" />
<ComponentRef Id="cmpHelp_faq_txt" />
</ComponentGroup>
</Fragment>
<!-- TShark -->
<Fragment>
<DirectoryRef Id="INSTALLFOLDER">
@ -569,18 +531,27 @@
</ComponentGroup>
</Fragment>
<?ifdef USER_GUIDE_DIR?>
<?ifdef DOCBOOK_DIR?>
<!-- User Guide -->
<Fragment>
<DirectoryRef Id="INSTALLFOLDER">
<Component Id="cmpUserGuide_chm" Guid="*">
<File Id="filUserGuide_chm" KeyPath="yes" Source="$(var.USER_GUIDE_DIR)\user-guide.chm" />
<File Id="filUserGuide_chm" KeyPath="yes" Source="$(var.DOCBOOK_DIR)\user-guide.chm" />
</Component>
</DirectoryRef>
</Fragment>
<!-- FAQ -->
<Fragment>
<DirectoryRef Id="INSTALLFOLDER">
<Component Id="cmpFAQ_html" Guid="*">
<File Id="filFAQ_html" KeyPath="yes" Source="$(var.DOCBOOK_DIR)\faq.html" />
</Component>
</DirectoryRef>
</Fragment>
<Fragment>
<ComponentGroup Id="CG.UserGuide">
<ComponentGroup Id="CG.Documentation">
<ComponentRef Id="cmpUserGuide_chm" />
<ComponentRef Id="cmpFAQ_html" />
</ComponentGroup>
</Fragment>
<?endif?>

View File

@ -20,7 +20,6 @@
<ComponentGroupRef Id="CG.Dtds" />
<ComponentGroupRef Id="CG.Tpncp" />
<ComponentGroupRef Id="CG.Wimaxasncp" />
<ComponentGroupRef Id="CG.Help" />
<ComponentGroupRef Id="CG.RequiredDependencies" />
</Feature>
@ -91,9 +90,9 @@
<ComponentGroupRef Id="CG.Tools.Udpdump" />
</Feature>
</Feature>
<?ifdef USER_GUIDE_DIR?>
<Feature Id="Fe.UserGuide" Title="User's Guide" Level="1" AllowAdvertise="yes" Display="expand" Description="Install an offline copy of the User's Guide.">
<ComponentGroupRef Id="CG.UserGuide" />
<?ifdef DOCBOOK_DIR?>
<Feature Id="Fe.Documentation" Title="Documentation" Level="1" AllowAdvertise="yes" Display="expand" Description="Install an offline copy of the User's Guide and FAQ.">
<ComponentGroupRef Id="CG.Documentation" />
</Feature>
<?endif?>
<Feature Id="VCRedist" Title="Visual C++ Runtime" AllowAdvertise="no" Display="hidden" Level="1">

View File

@ -44,7 +44,7 @@ topic_online_url(topic_action_e action)
return "https://www.wireshark.org/docs/wsug_html_chunked/";
break;
case(ONLINEPAGE_FAQ):
return "http://www.wireshark.org/faq.html";
return "https://www.wireshark.org/faq.html";
break;
case(ONLINEPAGE_ASK):
return "https://ask.wireshark.org";