| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
o Remove an assumption sizeof(struct timeval) == 8 (this is not
true on sparc64).
Reviewed by: imp, -hackers
Obtained from: NetBSD (rev. 1.75)
MT5 after: 1 month
|
|
|
|
| |
PR: 56653
|
|
|
|
|
|
| |
per letter dated July 22, 1999.
Approved by: core, imp
|
|
|
|
|
|
|
|
|
|
| |
the NOKERNINFO flag only marginally de-clutters the output and
has a number of unwanted side effects:
o The kernel info might be what you want to see
o ^T is left non-functional if ping is killed non-cleanly
o "ping -q foo &" gets suspended on tty output
Encouraged by: bde
|
|
|
|
| |
Use WARNS?= instead of WARNS=.
|
|
|
|
|
|
|
|
|
|
|
| |
lookup on an IP address from the packet (such as the IP that sent
a TTL exceeded error). If the DNS lookup takes a long time, ^C will
appear to be ineffective since the SIGINT handler just sets a flag
and returns. Work around this by exiting immediately on receipt of
a second SIGINT when DNS lookups are enabled.
PR: bin/4696
MFC after: 1 week
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
o Warn when recieved packet length is not equal to length of the
packet we sent out. Idea from NetBSD.
o Fit the dump of packet with wrong data to 80 columns (from NetBSD).
Comments from: bde
|
|
|
|
|
|
|
| |
Protocol (IP) is 64 [RFC791, RFC1122].
Prodded by: Igor Kucherenko <kivvy@sunbay.com>
Obtained from: http://www.iana.org/assignments/ip-parameters
|
|
|
|
|
|
| |
when the data for it is not available.
Founded by: ping -s0 localhost; press ^T
|
| |
|
|
|
|
|
| |
PR: bin/50909
Submitted by: Barney Wolff <barney@lab.databus.com>
|
|
|
|
|
|
| |
transmitted packet (because the remote host stripped off our icmp_data).
Submitted by: Maxim Konovalov <maxim@macomnet.ru>
|
|
|
|
| |
RFC3514 poses an unacceptale risk to compliant systems.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(See: ftp://ftp.rfc-editor.org/in-notes/rfc3514.txt)
This fulfills the host requirements for userland support by
way of the setsockopt() IP_EVIL_INTENT message.
There are three sysctl tunables provided to govern system behavior.
net.inet.ip.rfc3514:
Enables support for rfc3514. As this is an
Informational RFC and support is not yet widespread
this option is disabled by default.
net.inet.ip.hear_no_evil
If set the host will discard all received evil packets.
net.inet.ip.speak_no_evil
If set the host will discard all transmitted evil packets.
The IP statistics counter 'ips_evil' (available via 'netstat') provides
information on the number of 'evil' packets recieved.
For reference, the '-E' option to 'ping' has been provided to demonstrate
and test the implementation.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Correct some problems with packet construction.
+--------+------------+----------+-------------+---------+
| | | | | |
| IP Hdr | MINICMPLEN | phdr_len | TIMEVAL_LEN | payload |
| | | | | |
+--------+------------+----------+-------------+---------+
| | | |
|<- IP ->|<------- ICMP -------->|<------ datalen ------>|
My previous changes tried to mess around with 'datalen' instead of
modifying 'phdr_len'.
I'm including this nice ASCII diagram (from Maxim) to further clarify things
in CVS history.
Submitted by: Maxim Konovalov <maxim@macomnet.ru>
|
|
|
|
|
|
|
|
| |
when WARNS was increased recently, but __printf0like() has been
temporarily disabled for 8 months.
Fixed related style bugs (disordered declaraction and silly type for
maxpayload -- assume 16-bit ints like the rest of ping.c).
|
|
|
|
| |
Submitted by: bde
|
|
|
|
| |
Prodded by: bde
|
|
|
|
|
| |
Reviewed by: -audit (no objections ~1mo)
Approved by: nectar
|
| |
|
|
|
|
| |
Re-order.
|
|
|
|
| |
This alters the meaning of the '-M' flag.
|
| |
|
|
|
|
| |
Reviewed by: maxim
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Submitted by: bde
Do not constantify maximum payload size. It is 65467 with -R
(record route), and 65507 without it.
Reviewed by: silence on -net
Proposed by: bde
I am going to MFC rev.1.77 - 1.81 ping.c and rev.1.39 and 1.40 ping.8:
MFC after: 6 months
|
|
|
|
| |
Submitted by: bde
|
| |
|
|
|
|
|
|
| |
PR: bin/29164
Reviewed by: silence of -net
Obtained from: OpenBSD
|
|
|
|
|
| |
Reviewed by: silence on -net
Proposed by: David Wang <dsw@juniper.net>
|
| |
|
| |
|
|
|
|
|
|
| |
length minus sizeof(struct ip).
MFC after: 1 week
|
|
|
|
|
|
|
|
| |
to test whether a link is live.
PR: 38573
Submitted by: David Taylor <davidt@yadt.co.uk>
Obtained from: NetBSD
|
|
|
|
|
|
| |
bcopy/memcpy) seperately.
Submitted by: bde
|
|
|
|
|
|
|
| |
the timestamp was aligned. ie: Use a void * instead of struct timeval *
which gcc assumes will be aligned. Go back to memcpy().
Submitted by: bde
|
|
|
|
| |
Noticed by: bde
|
| |
|
|
|
|
|
| |
Submitted by: Yutaka KAWASE <yutaka@mailhost.net>
MFC after: 3 days
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
gcc memcpy "knows" about types that are supposed to be actually already
aligned and triggers alignment errors doing the memcpy itself.
"Fix" this by changing it to a bcopy(). In this case, we had:
struct timeval *tp;
struct timeval tv1;
memcpy(&tv1,tp,sizeof(tv1));
.. and since gcc *knows* that a pointer to a timeval is longword aligned
and that tv1 is longword aligned, then it can use an inline that assumes
alignment. The following works too:
cp = (char *)tp;
memcpy(&tv1,cp,sizeof(tv1));
Simply casting (char *)tp for the memcpy doesn't work. :-(
This affected different 64 bit platforms in different ways and depends
a lot on gcc as well. I've seen this on alpha and ia64 at least, although
alpha isn't doing it right now.
|
| |
|
|
|
|
|
|
|
|
|
| |
o Fix zero payloading, unbreak ping -s 0.
o Increase socket recieve buffer, ping -s 65467 is working now.
Submitted by: anti-magic sweep based on kris's patch
Reviewed by: bde, silence on -audit
MFC after: 2 months
|
|
|
|
|
| |
Reviewed by: bde (style), silence on -audit
MFC after: 2 months
|
|
|
|
|
|
|
| |
Submitted by: kris
Reviewed by: bde
Approved by: ru
MFC after: 2 weeks
|
|
|
|
|
|
|
| |
Submitted by: kris (an early version of this patch)
Reviewed by: bde
Approved by: ru
MFC after: 2 weeks
|