![Index](../TOC.GIF) |
Index for Section 8 |
|
![Index](../INDEX.GIF) |
Alphabetical listing for I |
|
![Bottom of page](../FF.GIF) |
Bottom of page |
|
ipv6sniff(8)
NAME
ipv6sniff - Internet Protocol Version 6 (IPv6) search and analysis tool
SYNOPSIS
/usr/sbin/ipv6sniff [-cehlostV] [-f configfile] [-C cfile...] [-Jsearch]
[-L logfile] [-O ofile...] [-P logfile] [-S scripts...] [-T textfile...]
files...
OPTIONS
-c Enables the scanning of C language source files. This is the default.
-e Activates the edit phase for examining results. This is the default.
-h Displays the ipv6sniff command synopsis.
-l Specifies that the editor (defined by the EDITOR environment variable)
accepts line number arguments. For example, emacs +10 hello.c.
-o Enables the scanning of object file symbol tables. This is the default.
-s Enables the scanning of shell scripts. This is the default.
-t Enables the scanning of text files. This is the default.
-V Displays the ipv6sniff version number.
-f configfile
Specifies the name of a configuration file from which to read settings.
-C cfile
Specifies one or more C language files. The file names are separated by
a blank space.
-Jsearch
Specifies that ipv6sniff omit one of the following processing steps as
specified by search:
c Does not scan C language source files.
e Does not enter the edit phase in order for you to examine results.
o Does not scan object file symbol tables.
s Does not scan shell scripts.
t Does not scan text files.
-L logfile
Specifies the name of a log file in which to store ipv6sniff results.
-O ofile
Specifies one or more object files. The file names are separated by a
blank space.
-P logfile
Specifies the name of a log file to read. The ipv6sniff tool skips all
scan and analysis phases, and proceeds directly to the edit phase. This
is useful for examining or re-examining the contents of a log file
after ipv6sniff execution has completed (see the -L option).
-S script
Specifies one or more script files. The file names are separated by a
blank space.
-T textfile
Specifies one or more text files. The file names are separated by a
blank space.
PARAMETERS
files
Specifies one or more files to scan. This is in addition to any files
specified by the -C, -E, -O, -S, and -T options.
DESCRIPTION
The ipv6sniff tool searches one or more files to assist you in locating
potential IPv6 porting issues. The tool searches for the following:
· IPv4-only socket usage and options
· IPv4 name and address resolution
When the tool has completed its search, it sorts and reports the results.
Note
Because the ipv6sniff tool enables you to change source files, create
a backup copy of all files before using the tool.
The ipv6sniff tool has two main phases: scan and edit.
Scan Phase
The ipv6sniff tool provides default search lists for C source files, shell
scripts, text files, and object files. These lists are used to scan each
file or its symbol table for tokens in the default search list. The default
search lists are defined in the listcustom.h header file in the following
array variables:
default_Clist, default_Slist, default_Tlist
The default_Clist is also used for object files during the scan phase. You
can customize each search list by specifying the -f option and adding
appropriate entries to the configuration file (configfile) as described in
the "Configuration File" section.
By default, the ipv6sniff tool attempts to determine the file type and
perform the appropriate scan accordingly. However, it has similar
limitations to the file command in determining file types, particularly
with text-based files. In order to ensure that files are scanned correctly,
use the -T, -C, -S, and -O options when specifying files.
Although a default search list is provided for C source files, you can scan
other source files by adding appropriate search tokens under the Tlist:
section header in the configuration file (configfile) and specifying the -T
option for those source files. See the "Configuration File" section for
information on adding search tokens.
Object files that have not been stripped are scanned by searching their
symbol tables for references to default search tokens or tokens specified
under the Clist: section header in the configuration file (configfile). See
the "Configuration File" section for information on adding search tokens.
The -J option allows the user to skip sections of the scan phase or the
edit phase. For example, specifying -Jc on the command line eliminates the
scanning of C source files.
The following search tokens are most commonly associated with porting
network applications, and are included in the default list:
AF_INET
PF_INET
INADDR_ANY
struct in_addr
struct sockaddr_in
struct sockaddr
struct hostent
getipnodebyaddr
getipnodebyname
gethostname
gethostbyname
gethostbyaddr
socket
connect
inet_ntoa
inet_addr
inet_pton
inet_ntop
If any of these tokens are found during the scan phase, the tool records
each instance by line number, filename, and token. You can interpret the
record file in the edit phase or specify the -L option when you invoke
ipv6sniff to save the record file.
Edit Phase
The ipv6sniff edit phase enables you to examine the results of the scan
phase. This phase provides text-based menu options for displaying each
search record found and allows affected files to be opened to appropriate
lines in the editor of your choice.
The ipv6sniff tool uses the EDITOR environment variable to determine your
editor. Some editors (for example, emacs) allow you to specify line numbers
on the command line in the form +line_num in order to open the file and
position the cursor on that line. If you are running emacs or vi, this
happens automatically. However, other editors do not allow this, and might
be confused by line number specifications. Therefore, if you are using an
editor (other than emacs or vi) that supports command line number
specification, use the -l option to tell ipv6sniff to pass line number
information to your editor.
You can skip the edit phase by specifying the -Je option. This is useful
when you specify the -L option to save results to a log file for future
examination. You can then specify the -P option along with a log file name
that contains previous ipv6sniff results in order to skip all search and
analysis phases and only examine the log file contents.
The edit phase also allows you to open a Web browser and view porting
information related to the result that is being examined. See the Network
Programmer's Guide for additional information on porting network
applications.
Specifying a Log File
The -L option enables you to specify the name of a log file into which to
store the ipv6sniff results. This allows you to view the records in the log
file at a later time. The log file is a text file. You can examine this
file by using a text editor or by specifying the -P option. The -P option
skips all other ipv6sniff phases and only processes the specified log file
using the edit phase.
Specifying a Configuration File
To customize search and run-time analysis options for ipv6sniff, you can
specify a configuration file by using the -f option. If you do not specify
a configuration file, ipv6sniff will use the default list of tokens. The
syntax of a configuration file is as follows:
:SectionHeader
"Token",
"Token",
.
.
.
You specify search tokens, one on each line, under the section headers.
Enclose each token in quotation marks (" ") and place a comma (,) after
each one. The section headers are as follows:
:Clist
Specifies a list of tokens to search for when scanning C source files
and object file or executable symbol tables.
:Tlist
Specifies a list of tokens to search for when scanning text files.
:Slist
List of tokens to search for when scanning shell scripts.
EXAMPLES
The following is a sample ipv6sniff configuration file:
:Clist
"AF_INET",
"PF_INET",
"INADDR_ANY",
"in_addr",
"sockaddr_in",
"sockaddr",
"hostent",
"getipnodebyaddr",
"getipnodebyname",
"gethostname",
"gethostbyname",
"gethostbyaddr",
"socket",
"connect",
"inet_ntoa",
"inet_addr",
"inet_pton",
"inet_ntop",
:Tlist
:Slist
SEE ALSO
Files: ip(7)
Network Programmer's Guide
![Index](../TOC.GIF) |
Index for Section 8 |
|
![Index](../INDEX.GIF) |
Alphabetical listing for I |
|
![Top of page](../REW.GIF) |
Top of page |
|