ahobson-pcap 0.7.0
Sign up to get free protection for your applications and to get access to all the features.
- data/COPYING +340 -0
- data/ChangeLog +145 -0
- data/MANIFEST +46 -0
- data/README +48 -0
- data/README.ja +50 -0
- data/Rakefile +17 -0
- data/VERSION +1 -0
- data/doc-ja/Capture.html +147 -0
- data/doc-ja/Dumper.html +54 -0
- data/doc-ja/Filter.html +112 -0
- data/doc-ja/ICMPPacket.html +189 -0
- data/doc-ja/IPAddress.html +60 -0
- data/doc-ja/IPPacket.html +142 -0
- data/doc-ja/Packet.html +101 -0
- data/doc-ja/Pcap.html +111 -0
- data/doc-ja/PcapError.html +21 -0
- data/doc-ja/Pcaplet.html +113 -0
- data/doc-ja/TCPPacket.html +148 -0
- data/doc-ja/TruncatedPacket.html +22 -0
- data/doc-ja/UDPPacket.html +73 -0
- data/doc-ja/index.html +54 -0
- data/doc/Capture.html +160 -0
- data/doc/Dumper.html +60 -0
- data/doc/Filter.html +109 -0
- data/doc/ICMPPacket.html +184 -0
- data/doc/IPAddress.html +60 -0
- data/doc/IPPacket.html +142 -0
- data/doc/Packet.html +98 -0
- data/doc/Pcap.html +113 -0
- data/doc/PcapError.html +21 -0
- data/doc/Pcaplet.html +108 -0
- data/doc/TCPPacket.html +147 -0
- data/doc/TruncatedPacket.html +22 -0
- data/doc/UDPPacket.html +73 -0
- data/doc/index.html +53 -0
- data/examples/httpdump.rb +27 -0
- data/examples/tcpdump.rb +26 -0
- data/examples/test.rb +11 -0
- data/ext/Pcap.c +915 -0
- data/ext/extconf.rb +16 -0
- data/ext/icmp_packet.c +444 -0
- data/ext/ip_packet.c +378 -0
- data/ext/packet.c +328 -0
- data/ext/ruby_pcap.h +134 -0
- data/ext/tcp_packet.c +121 -0
- data/ext/udp_packet.c +96 -0
- data/lib/pcap_misc.rb +116 -0
- data/lib/pcaplet.rb +123 -0
- metadata +103 -0
data/doc-ja/index.html
ADDED
@@ -0,0 +1,54 @@
|
|
1
|
+
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
|
2
|
+
<html> <head>
|
3
|
+
<title>Ruby/Pcap Library</title>
|
4
|
+
</head>
|
5
|
+
|
6
|
+
<body bgcolor="ffffff">
|
7
|
+
<h1>Ruby/Pcap��ĥ�饤�֥��</h1>
|
8
|
+
|
9
|
+
LBL �� libpcap (Packet Capture library) �ؤ� ruby ���ե������Ǥ���
|
10
|
+
|
11
|
+
<h2>�⥸�塼��</h2>
|
12
|
+
<ul>
|
13
|
+
<li><a href="Pcap.html"><code>Pcap</code></a>
|
14
|
+
</ul>
|
15
|
+
|
16
|
+
<h2>���饹</h2>
|
17
|
+
|
18
|
+
�ʲ��Υ��饹������ <code>Pcap</code> �⥸�塼��β����������Ƥ��ޤ���
|
19
|
+
�������äƻ��Ѥ���Ȥ��� <code>Pcap</code> �⥸�塼���
|
20
|
+
<code>include</code> ���뤫���⤷���� <code>Pcap::Capture</code> �Τ�
|
21
|
+
���˻��Ȥ��Ƥ���������
|
22
|
+
|
23
|
+
<ul>
|
24
|
+
<li><a href="Capture.html"><code>Capture</code></a>
|
25
|
+
<li><a href="Pcaplet.html"><code>Pcaplet</code></a>
|
26
|
+
<li><a href="Packet.html"><code>Packet</code></a>
|
27
|
+
<ul>
|
28
|
+
<li><a href="IPPacket.html"><code>IPPacket</code></a>
|
29
|
+
<ul>
|
30
|
+
<li><a href="TCPPacket.html"><code>TCPPacket</code></a>
|
31
|
+
<li><a href="UDPPacket.html"><code>UDPPacket</code></a>
|
32
|
+
<li><a href="ICMPPacket.html"><code>ICMPPacket</code></a>
|
33
|
+
</ul>
|
34
|
+
</ul>
|
35
|
+
<li><a href="IPAddress.html"><code>IPAddress</code></a>
|
36
|
+
<li><a href="Dumper.html"><code>Dumper</code></a>
|
37
|
+
<li><a href="Filter.html"><code>Filter</code></a>
|
38
|
+
</ul>
|
39
|
+
|
40
|
+
<h2>�㳰</h2>
|
41
|
+
|
42
|
+
<ul>
|
43
|
+
<li><a href="PcapError.html"><code>PcapError</code></a>
|
44
|
+
<ul>
|
45
|
+
<li><a href="TruncatedPacket.html"><code>TruncatedPacket</code></a>
|
46
|
+
</ul>
|
47
|
+
</ul>
|
48
|
+
|
49
|
+
<hr>
|
50
|
+
<P ALIGN="RIGHT">
|
51
|
+
<A HREF="mailto:fukusima@goto.info.waseda.ac.jp">
|
52
|
+
fukusima@goto.info.waseda.ac.jp</A><BR>
|
53
|
+
</P>
|
54
|
+
</body> </html>
|
data/doc/Capture.html
ADDED
@@ -0,0 +1,160 @@
|
|
1
|
+
<HTML>
|
2
|
+
<!-- THIS FILE IS GENERATED FROM ANOTHER SOURCE FILE -->
|
3
|
+
<HEAD>
|
4
|
+
<TITLE>Capture</TITLE>
|
5
|
+
</HEAD>
|
6
|
+
<BODY BGCOLOR="ffffff">
|
7
|
+
<DL>
|
8
|
+
<DT><H1>Capture</H1></DT>
|
9
|
+
<DD>
|
10
|
+
|
11
|
+
Packet Capture Object
|
12
|
+
</DD>
|
13
|
+
<DT><H2>Super Class:</H2></DT>
|
14
|
+
<DD><DL><DT><A HREF="http://www.ruby-lang.org/en/man-1.4/Object.html"><CODE>Object</CODE></A></DT></DL></DD>
|
15
|
+
<DT><H2>Included Modules:</H2></DT>
|
16
|
+
<DL>
|
17
|
+
<DT><A HREF="http://www.ruby-lang.org/en/man-1.4/Enum.html"><CODE>Enumerable</CODE></A></DT>
|
18
|
+
</DL>
|
19
|
+
<DT><H2>Class Methods:</H2></DT>
|
20
|
+
<DL COMPACT>
|
21
|
+
<DT>
|
22
|
+
<A NAME=".open_live"><CODE>open_live(<var>device</var>[, <var>snaplen</var>[, <var>promisc</var>[, <var>to_ms</var>]]])</CODE></A>
|
23
|
+
<DD>
|
24
|
+
<p>
|
25
|
+
|
26
|
+
Open specified device and return <CODE>Capture</CODE>
|
27
|
+
object.
|
28
|
+
Default value for <VAR>snaplen</VAR>,
|
29
|
+
<VAR>promisc</VAR> and <VAR>to_ms</VAR> are 68 octets,
|
30
|
+
<CODE>true</CODE> and 1000 milliseconds.
|
31
|
+
</p>
|
32
|
+
<DT>
|
33
|
+
<A NAME=".open_offline"><CODE>open_offline(<var>filename</var>)</CODE></A>
|
34
|
+
<DD>
|
35
|
+
<p>
|
36
|
+
|
37
|
+
Open <VAR>filename</VAR> and return <CODE>Capture</CODE> object.
|
38
|
+
</p>
|
39
|
+
<DT>
|
40
|
+
<A NAME=".open_dead"><CODE>open_dead([<var>linktype</var>[, <var>snaplen</var>]])</CODE></A>
|
41
|
+
<DD>
|
42
|
+
<p>
|
43
|
+
|
44
|
+
Open fake <CODE>Capture</CODE> object.
|
45
|
+
Default value for <VAR>linktype<VAR> and <VAR>snaplen</VAR> are
|
46
|
+
<A HREF="Pcap.html#::DLT_EN10MB"><CODE>DLT_EN10MB</CODE></A> and 68 octets.
|
47
|
+
</p>
|
48
|
+
</DL>
|
49
|
+
<DT><H2>Methods:</H2></DT>
|
50
|
+
<DL COMPACT>
|
51
|
+
<DT>
|
52
|
+
<A NAME="close"><CODE>close</CODE></A>
|
53
|
+
<DD>
|
54
|
+
<p>
|
55
|
+
|
56
|
+
Close <CODE>Capture</CODE> object.
|
57
|
+
</p>
|
58
|
+
<DT>
|
59
|
+
<A NAME="datalink"><CODE>datalink</CODE></A>
|
60
|
+
<DD>
|
61
|
+
<p>
|
62
|
+
|
63
|
+
Return an integer representing data-link type.
|
64
|
+
(e.g. <A HREF="Pcap.html#::DLT_EN10MB"><CODE>DLT_EN10MB</CODE></A>)
|
65
|
+
</p>
|
66
|
+
<DT>
|
67
|
+
<A NAME="dispatch"><CODE>dispatch([<var>count</var>]) {|<var>packet</var>|...}</CODE></A>
|
68
|
+
<DD>
|
69
|
+
<p>
|
70
|
+
|
71
|
+
<P>
|
72
|
+
|
73
|
+
Iterate over each packet. The argument given to the block
|
74
|
+
is an instance of <A HREF="Packet.html"><CODE>Packet</CODE></A> or its sub-class.
|
75
|
+
</P>
|
76
|
+
|
77
|
+
<P>
|
78
|
+
|
79
|
+
<VAR>count</VAR> specifies the maximum number of packets to
|
80
|
+
process. a <VAR>count</VAR> of -1 processes all the packets
|
81
|
+
received in one buffer. a <VAR>count</VAR> of 0 processes all
|
82
|
+
packets until an error occurs, EOF is reached, or the read
|
83
|
+
times out.
|
84
|
+
Default of <VAR>count</VAR> is -1.
|
85
|
+
</P>
|
86
|
+
|
87
|
+
</p>
|
88
|
+
<DT>
|
89
|
+
<A NAME="each_packet"><CODE>each_packet([<var>count</var>]) {|<var>packet</var>|...}</CODE></A>
|
90
|
+
<DD>
|
91
|
+
<DT>
|
92
|
+
<A NAME="each"><CODE>each([<var>count</var>]) {|<var>packet</var>|...}</CODE></A>
|
93
|
+
<DD>
|
94
|
+
<DT>
|
95
|
+
<A NAME="loop"><CODE>loop([<var>count</var>]) {|<var>packet</var>|...}</CODE></A>
|
96
|
+
<DD>
|
97
|
+
<p>
|
98
|
+
|
99
|
+
<P>
|
100
|
+
|
101
|
+
Iterate over each packet. The argument given to the block
|
102
|
+
is an instance of <A HREF="Packet.html"><CODE>Packet</CODE></A> or its sub-class.
|
103
|
+
</P>
|
104
|
+
|
105
|
+
<P>
|
106
|
+
|
107
|
+
<VAR>count</VAR> specifies the maximum number of packets to
|
108
|
+
process. A negative <VAR>count</VAR> processes packets forever
|
109
|
+
or until EOF is reached. Default of <VAR>count</VAR> is -1.
|
110
|
+
</P>
|
111
|
+
|
112
|
+
</p>
|
113
|
+
<DT>
|
114
|
+
<A NAME="snapshot"><CODE>snapshot</CODE></A>
|
115
|
+
<DD>
|
116
|
+
<DT>
|
117
|
+
<A NAME="snaplen"><CODE>snaplen</CODE></A>
|
118
|
+
<DD>
|
119
|
+
<p>
|
120
|
+
|
121
|
+
Return the snapshot length.
|
122
|
+
</p>
|
123
|
+
<DT>
|
124
|
+
<A NAME="setfilter"><CODE>setfilter(<var>filter</var>[, <var>optimize</var>])</CODE></A>
|
125
|
+
<DD>
|
126
|
+
<p>
|
127
|
+
|
128
|
+
Specify <VAR>filter</VAR> as packet filter.
|
129
|
+
<VAR>filter</VAR> can be a string or a <A HREF="Filter.html"><CODE>Filter</CODE></A> object.
|
130
|
+
<VAR>optimize</VAR> controls whether optimization is performed.
|
131
|
+
Default of <VAR>optimize</VAR> is <CODE>true</CODE>.
|
132
|
+
</p>
|
133
|
+
<DT>
|
134
|
+
<A NAME="stats"><CODE>stats</CODE></A>
|
135
|
+
<DD>
|
136
|
+
<p>
|
137
|
+
|
138
|
+
Return a <A HREF="http://www.ruby-lang.org/en/man-1.4/Struct.html"><CODE>Struct</CODE></A> which represents packet statistics.
|
139
|
+
This struct has following members.
|
140
|
+
<BLOCKQUOTE>
|
141
|
+
<DL COMPACT>
|
142
|
+
<DT><CODE>recv</CODE></DT><DD>number of received packets</DD><DT><CODE>drop</CODE></DT><DD>number of dropped packets</DD></DL>
|
143
|
+
</BLOCKQUOTE>
|
144
|
+
|
145
|
+
</p>
|
146
|
+
<DT>
|
147
|
+
<A NAME="inject"><CODE>inject(<var>buf</var>)</CODE></A>
|
148
|
+
<DD>
|
149
|
+
<p>
|
150
|
+
|
151
|
+
Inject <VAR>buf</VAR> as a packet.
|
152
|
+
</p>
|
153
|
+
</DL>
|
154
|
+
</DL>
|
155
|
+
<HR>
|
156
|
+
<P ALIGN="RIGHT">
|
157
|
+
<A HREF="mailto:fukusima@goto.info.waseda.ac.jp">fukusima@goto.info.waseda.ac.jp</A><BR>
|
158
|
+
</P>
|
159
|
+
</BODY>
|
160
|
+
</HTML>
|
data/doc/Dumper.html
ADDED
@@ -0,0 +1,60 @@
|
|
1
|
+
<HTML>
|
2
|
+
<!-- THIS FILE IS GENERATED FROM ANOTHER SOURCE FILE -->
|
3
|
+
<HEAD>
|
4
|
+
<TITLE>Dumper</TITLE>
|
5
|
+
</HEAD>
|
6
|
+
<BODY BGCOLOR="ffffff">
|
7
|
+
<DL>
|
8
|
+
<DT><H1>Dumper</H1></DT>
|
9
|
+
<DD>
|
10
|
+
|
11
|
+
Class to dump packets to tcpdump-format file. Generated file
|
12
|
+
can be read with tcpdump and <A HREF="Capture.html#.open_offline"><CODE>Capture.open_offline</CODE></A>.
|
13
|
+
</DD>
|
14
|
+
<DT><H2>Super Class:</H2></DT>
|
15
|
+
<DD><DL><DT><A HREF="http://www.ruby-lang.org/en/man-1.4/Object.html"><CODE>Object</CODE></A></DT></DL></DD>
|
16
|
+
<DT><H2>Class Methods:</H2></DT>
|
17
|
+
<DL COMPACT>
|
18
|
+
<DT>
|
19
|
+
<A NAME=".open"><CODE>open(<var>capture</var>, <var>filename</var>)</CODE></A>
|
20
|
+
<DD>
|
21
|
+
<p>
|
22
|
+
|
23
|
+
Return a <CODE>Dumper</CODE> to dump packets captured by
|
24
|
+
<VAR>capture</VAR> to <VAR>filename</VAR>.
|
25
|
+
</p>
|
26
|
+
</DL>
|
27
|
+
<DT><H2>Methods:</H2></DT>
|
28
|
+
<DL COMPACT>
|
29
|
+
<DT>
|
30
|
+
<A NAME="close"><CODE>close</CODE></A>
|
31
|
+
<DD>
|
32
|
+
<p>
|
33
|
+
|
34
|
+
close <CODE>Dumper</CODE>.
|
35
|
+
</p>
|
36
|
+
<DT>
|
37
|
+
<A NAME="dump"><CODE>dump(<var>packet</var>)</CODE></A>
|
38
|
+
<DD>
|
39
|
+
<p>
|
40
|
+
|
41
|
+
Dump <VAR>packet</VAR> to this <CODE>Dumper</CODE>.
|
42
|
+
<VAR>packet</VAR> must be a packet captured by
|
43
|
+
<A HREF="Capture.html"><CODE>Capture</CODE></A> specified when opening this <CODE>Dumper</CODE>.
|
44
|
+
</p>
|
45
|
+
<DT>
|
46
|
+
<A NAME="dump_raw"><CODE>dump_raw(<var>buf</var>)</CODE></A>
|
47
|
+
<DD>
|
48
|
+
<p>
|
49
|
+
|
50
|
+
Dump <VAR>buf</VAR> to this <CODE>Dumper</CODE> as a packet.
|
51
|
+
</p>
|
52
|
+
|
53
|
+
</DL>
|
54
|
+
</DL>
|
55
|
+
<HR>
|
56
|
+
<P ALIGN="RIGHT">
|
57
|
+
<A HREF="mailto:fukusima@goto.info.waseda.ac.jp">fukusima@goto.info.waseda.ac.jp</A><BR>
|
58
|
+
</P>
|
59
|
+
</BODY>
|
60
|
+
</HTML>
|
data/doc/Filter.html
ADDED
@@ -0,0 +1,109 @@
|
|
1
|
+
<HTML>
|
2
|
+
<!-- THIS FILE IS GENERATED FROM ANOTHER SOURCE FILE -->
|
3
|
+
<HEAD>
|
4
|
+
<TITLE>Filter</TITLE>
|
5
|
+
</HEAD>
|
6
|
+
<BODY BGCOLOR="ffffff">
|
7
|
+
<DL>
|
8
|
+
<DT><H1>Filter</H1></DT>
|
9
|
+
<DD>
|
10
|
+
|
11
|
+
<CODE>Filter</CODE> determines whether a packet satisfies
|
12
|
+
specified condition. Actually <CODE>Filter</CODE> is
|
13
|
+
wrapper for <CODE>bpf_program</CODE>. For details of filter
|
14
|
+
expression, see <CODE>tcpdump(1)</CODE>.
|
15
|
+
</DD>
|
16
|
+
<DT><H2>Super Class:</H2></DT>
|
17
|
+
<DD><DL><DT><A HREF="http://www.ruby-lang.org/en/man-1.4/Object.html"><CODE>Object</CODE></A></DT></DL></DD>
|
18
|
+
<DT><H2>Class Methods:</H2></DT>
|
19
|
+
<DL COMPACT>
|
20
|
+
<DT>
|
21
|
+
<A NAME=".compile"><CODE>compile(<var>expr</var>, <var>capture</var>[, <var>optimize</var>[, <var>netmask</var>]])</CODE></A>
|
22
|
+
<DD>
|
23
|
+
<DT>
|
24
|
+
<A NAME=".new"><CODE>new(<var>expr</var>, <var>capture</var>[, <var>optimize</var>[, <var>netmask</var>]])</CODE></A>
|
25
|
+
<DD>
|
26
|
+
<p>
|
27
|
+
|
28
|
+
<P>
|
29
|
+
|
30
|
+
Create a new <CODE>Filter</CODE> object.
|
31
|
+
<VAR>expr</VAR> is a filter string. <VAR>capture</VAR>
|
32
|
+
is a <A HREF="Capture.html"><CODE>Capture</CODE></A> object. <VAR>optimize</VAR>
|
33
|
+
controls optimization of resulting code.
|
34
|
+
<VAR>netmask</VAR> specifies the netmask of the local net.
|
35
|
+
</P>
|
36
|
+
|
37
|
+
<P>
|
38
|
+
|
39
|
+
Created <CODE>Filter</CODE> can be applied to packets
|
40
|
+
captured via <VAR>capture</VAR>.
|
41
|
+
</P>
|
42
|
+
|
43
|
+
<P>
|
44
|
+
|
45
|
+
If <A HREF="http://www.tcpdump.org/"><CODE>libpcap-0.5 or later</CODE></A>
|
46
|
+
used, one of following values can be specified
|
47
|
+
instead of <VAR>capture</VAR>:
|
48
|
+
<BLOCKQUOTE>
|
49
|
+
<DL COMPACT>
|
50
|
+
<DT><CODE>[snaplen, datalink]</CODE></DT><DD>an array containing required parameters</DD><DT>omitted (or <CODE>nil</CODE>)</DT><DD>Ethernet default
|
51
|
+
(<CODE>[68, <A HREF="Pcap.html#::DLT_EN10MB"><CODE>DLT_EN10MB</CODE></A>]</CODE>)
|
52
|
+
</DD></DL>
|
53
|
+
</BLOCKQUOTE>
|
54
|
+
|
55
|
+
</P>
|
56
|
+
|
57
|
+
</p>
|
58
|
+
</DL>
|
59
|
+
<DT><H2>Methods:</H2></DT>
|
60
|
+
<DL COMPACT>
|
61
|
+
<DT>
|
62
|
+
<A NAME="==="><CODE>self === <var>packet</var></CODE></A>
|
63
|
+
<DD>
|
64
|
+
<DT>
|
65
|
+
<A NAME="=~"><CODE>self =~ <var>packet</var></CODE></A>
|
66
|
+
<DD>
|
67
|
+
<p>
|
68
|
+
|
69
|
+
Return true if <VAR>packet</VAR> matches this filter.
|
70
|
+
</p>
|
71
|
+
<DT>
|
72
|
+
<A NAME="~self"><CODE>~ self</CODE></A>
|
73
|
+
<DD>
|
74
|
+
<p>
|
75
|
+
|
76
|
+
Return a <CODE>Filter</CODE> which represents
|
77
|
+
"not <CODE>self</CODE>".
|
78
|
+
</p>
|
79
|
+
<DT>
|
80
|
+
<A NAME="|"><CODE>self | <var>other</var></CODE></A>
|
81
|
+
<DD>
|
82
|
+
<p>
|
83
|
+
|
84
|
+
Return a <CODE>Filter</CODE> which represents
|
85
|
+
"<CODE>self</CODE> or <VAR>other</VAR>".
|
86
|
+
</p>
|
87
|
+
<DT>
|
88
|
+
<A NAME="&"><CODE>self & <var>other</var></CODE></A>
|
89
|
+
<DD>
|
90
|
+
<p>
|
91
|
+
|
92
|
+
Return a <CODE>Filter</CODE> which represents
|
93
|
+
"<CODE>self</CODE> and <VAR>other</VAR>".
|
94
|
+
</p>
|
95
|
+
<DT>
|
96
|
+
<A NAME="source"><CODE>source</CODE></A>
|
97
|
+
<DD>
|
98
|
+
<p>
|
99
|
+
|
100
|
+
Returns the orginal string from which the filter is constructed.
|
101
|
+
</p>
|
102
|
+
</DL>
|
103
|
+
</DL>
|
104
|
+
<HR>
|
105
|
+
<P ALIGN="RIGHT">
|
106
|
+
<A HREF="mailto:fukusima@goto.info.waseda.ac.jp">fukusima@goto.info.waseda.ac.jp</A><BR>
|
107
|
+
</P>
|
108
|
+
</BODY>
|
109
|
+
</HTML>
|
data/doc/ICMPPacket.html
ADDED
@@ -0,0 +1,184 @@
|
|
1
|
+
<HTML>
|
2
|
+
<!-- THIS FILE IS GENERATED FROM ANOTHER SOURCE FILE -->
|
3
|
+
<HEAD>
|
4
|
+
<TITLE>ICMPPacket</TITLE>
|
5
|
+
</HEAD>
|
6
|
+
<BODY BGCOLOR="ffffff">
|
7
|
+
<DL>
|
8
|
+
<DT><H1>ICMPPacket</H1></DT>
|
9
|
+
<DD>
|
10
|
+
|
11
|
+
<P>
|
12
|
+
|
13
|
+
A packet carrying ICMP message.
|
14
|
+
</P>
|
15
|
+
|
16
|
+
ICMP message formats are vary according to ICMP type.
|
17
|
+
Thus some fields exist in certain types of packet. Any
|
18
|
+
attempt to access nonexistence field raises an exception.
|
19
|
+
<P>
|
20
|
+
|
21
|
+
</P>
|
22
|
+
|
23
|
+
Type, code and cksum fields are valid for any ICMP type.
|
24
|
+
<P>
|
25
|
+
|
26
|
+
</P>
|
27
|
+
|
28
|
+
</DD>
|
29
|
+
<DT><H2>Super Class:</H2></DT>
|
30
|
+
<DD><DL><DT><A HREF="IPPacket.html"><CODE>IPPacket</CODE></A></DT></DL></DD>
|
31
|
+
<DT><H2>Methods:</H2></DT>
|
32
|
+
<DL COMPACT>
|
33
|
+
<DT>
|
34
|
+
<A NAME="icmp_cksum"><CODE>icmp_cksum</CODE></A>
|
35
|
+
<DD>
|
36
|
+
<p>
|
37
|
+
|
38
|
+
Return ICMP checksum.
|
39
|
+
</p>
|
40
|
+
<DT>
|
41
|
+
<A NAME="icmp_code"><CODE>icmp_code</CODE></A>
|
42
|
+
<DD>
|
43
|
+
<p>
|
44
|
+
|
45
|
+
Return ICMP code.
|
46
|
+
</p>
|
47
|
+
<DT>
|
48
|
+
<A NAME="icmp_data"><CODE>icmp_data</CODE></A>
|
49
|
+
<DD>
|
50
|
+
<p>
|
51
|
+
|
52
|
+
Return data portion of ICMP_ECHO/ICMP_ECHOREPLY
|
53
|
+
messages as <A HREF="http://www.ruby-lang.org/en/man-1.4/String.html"><CODE>String</CODE></A>
|
54
|
+
</p>
|
55
|
+
<DT>
|
56
|
+
<A NAME="icmp_gwaddr"><CODE>icmp_gwaddr</CODE></A>
|
57
|
+
<DD>
|
58
|
+
<p>
|
59
|
+
|
60
|
+
Return gateway address of ICMP_REDIRECT message as
|
61
|
+
<A HREF="IPAddress.html"><CODE>IPAddress</CODE></A>.
|
62
|
+
</p>
|
63
|
+
<DT>
|
64
|
+
<A NAME="icmp_id"><CODE>icmp_id</CODE></A>
|
65
|
+
<DD>
|
66
|
+
<p>
|
67
|
+
|
68
|
+
Return identifier.
|
69
|
+
</p>
|
70
|
+
<DT>
|
71
|
+
<A NAME="icmp_ip"><CODE>icmp_ip</CODE></A>
|
72
|
+
<DD>
|
73
|
+
<p>
|
74
|
+
|
75
|
+
Return original IP Datagram as <A HREF="IPPacket.html"><CODE>IPPacket</CODE></A>.
|
76
|
+
</p>
|
77
|
+
<DT>
|
78
|
+
<A NAME="icmp_lifetime"><CODE>icmp_lifetime</CODE></A>
|
79
|
+
<DD>
|
80
|
+
<p>
|
81
|
+
|
82
|
+
Return lifetime of ICMP_ROUTERADVERT message.
|
83
|
+
</p>
|
84
|
+
<DT>
|
85
|
+
<A NAME="icmp_nextmtu"><CODE>icmp_nextmtu</CODE></A>
|
86
|
+
<DD>
|
87
|
+
<p>
|
88
|
+
|
89
|
+
Return Next Hop MTU of ICMP_UNREACH_NEEDFRAG message
|
90
|
+
(See rfc1191).
|
91
|
+
</p>
|
92
|
+
<DT>
|
93
|
+
<A NAME="icmp_num_addrs"><CODE>icmp_num_addrs</CODE></A>
|
94
|
+
<DD>
|
95
|
+
<p>
|
96
|
+
|
97
|
+
Return number of addresses of ICMP_ROUTERADVERT message.
|
98
|
+
</p>
|
99
|
+
<DT>
|
100
|
+
<A NAME="icmp_otime"><CODE>icmp_otime</CODE></A>
|
101
|
+
<DD>
|
102
|
+
<DT>
|
103
|
+
<A NAME="icmp_rtime"><CODE>icmp_rtime</CODE></A>
|
104
|
+
<DD>
|
105
|
+
<DT>
|
106
|
+
<A NAME="icmp_ttime"><CODE>icmp_ttime</CODE></A>
|
107
|
+
<DD>
|
108
|
+
<p>
|
109
|
+
|
110
|
+
Return timestamp of
|
111
|
+
ICMP_TSTAMP/ICMP_TSTAMPREPLY message as <A HREF="http://www.ruby-lang.org/en/man-1.4/Time.html"><CODE>Time</CODE></A>.
|
112
|
+
</p>
|
113
|
+
<DT>
|
114
|
+
<A NAME="icmp_pptr"><CODE>icmp_pptr</CODE></A>
|
115
|
+
<DD>
|
116
|
+
<p>
|
117
|
+
|
118
|
+
Return error pointer of ICMP_PARAMPROB message.
|
119
|
+
</p>
|
120
|
+
<DT>
|
121
|
+
<A NAME="icmp_radv"><CODE>icmp_radv(<var>nth</var>)</CODE></A>
|
122
|
+
<DD>
|
123
|
+
<p>
|
124
|
+
|
125
|
+
Return <VAR>nth</VAR> address entry of
|
126
|
+
ICMP_ROUTERADVERT message. Returned value is a two
|
127
|
+
elements array <CODE>[address, preference]</CODE>.
|
128
|
+
</p>
|
129
|
+
<DT>
|
130
|
+
<A NAME="icmp_seq"><CODE>icmp_seq</CODE></A>
|
131
|
+
<DD>
|
132
|
+
<p>
|
133
|
+
|
134
|
+
Return sequence number.
|
135
|
+
</p>
|
136
|
+
<DT>
|
137
|
+
<A NAME="icmp_seqle"><CODE>icmp_seqle</CODE></A>
|
138
|
+
<DD>
|
139
|
+
<p>
|
140
|
+
|
141
|
+
<P>
|
142
|
+
|
143
|
+
Return sequence number interpreted as little endian.
|
144
|
+
</P>
|
145
|
+
|
146
|
+
<P>
|
147
|
+
|
148
|
+
No small portion of <CODE>ping</CODE> command
|
149
|
+
implementations write sequence number in host byte
|
150
|
+
order. Thus the sequence number of ICMP messages
|
151
|
+
transmitted from little endian host may be in little
|
152
|
+
endian.
|
153
|
+
</P>
|
154
|
+
|
155
|
+
</p>
|
156
|
+
<DT>
|
157
|
+
<A NAME="icmp_type"><CODE>icmp_type</CODE></A>
|
158
|
+
<DD>
|
159
|
+
<p>
|
160
|
+
|
161
|
+
Return ICMP type.
|
162
|
+
</p>
|
163
|
+
<DT>
|
164
|
+
<A NAME="icmp_typestr"><CODE>icmp_typestr</CODE></A>
|
165
|
+
<DD>
|
166
|
+
<p>
|
167
|
+
|
168
|
+
Return string describing ICMP type (e.g. "echo reply").
|
169
|
+
</p>
|
170
|
+
<DT>
|
171
|
+
<A NAME="icmp_wpa"><CODE>icmp_wpa</CODE></A>
|
172
|
+
<DD>
|
173
|
+
<p>
|
174
|
+
|
175
|
+
Return word per address entry of ICMP_ROUTERADVERT message.
|
176
|
+
</p>
|
177
|
+
</DL>
|
178
|
+
</DL>
|
179
|
+
<HR>
|
180
|
+
<P ALIGN="RIGHT">
|
181
|
+
<A HREF="mailto:fukusima@goto.info.waseda.ac.jp">fukusima@goto.info.waseda.ac.jp</A><BR>
|
182
|
+
</P>
|
183
|
+
</BODY>
|
184
|
+
</HTML>
|