The Story of the Ping Program (1997)
ftp.arl.army.mil
ftp.arl.army.mil
I frequently use ping to look like I know what I am doing when trying to fix connectivity problems.
https://en.wikipedia.org/wiki/BRL-CAD
here, by a PDP/11 (not sure which person he is):
https://en.wikipedia.org/wiki/BRL-CAD#/media/File:Pdp11,70_6...
and mentioned in Clifford Stolls book 'the cuckoos egg' (1989):
https://en.wikipedia.org/wiki/The_Cuckoo%27s_Egg
which is a complete must read story for anyone interested in this kind of article and led to much of the current cyber-crime coordination in the US (e.g. US-CERT, etc).
from that book:
"On the heels of Steve's call, Mike Muuss of the Ballistic Research Laboratory called.
In Aberdeen, Maryland, the Army runs a research and development laboratory;
it's one of the last government labs that doesn't farm out its research to private
contractors. Mike's their computer honcho.
Mike Muuss's famous throughout the Unix community as a pioneer in networking and as a
creator of elegant programs to replace awkward ones. As Mike puts it, good programs
aren't written or built. They're grown. A six-foot-tall, mustached runner,
he's incredibly driven, intense, and obsessed. Mike's paid his dues on ancient
versions of Unix, dating back to the '70s. When Mike talks, other wizards listen."
RIP.Thank-you for your work. RIP.
Wow. Imagine if he were here to experience RTX cards in consumer machines.
ping -n <seconds> 127.0.0.1
It worked (edit: I couldn't stop laughing). To be fair, I've used it and its big brother traceroute (very useful!) for its designed purpose.
choice /T 1 /D Y
Standard Windows NT command to sleep 1 second. This is actually intended to let the user select an option Yes/No and default after 1 second without answer.That's because the Internet's designers were smart, experienced, and visionary, but they didn't have infinite resources, so they did what they could, and a lot of what they could was just a sketch for others to color-in.
We should get so lucky again!
I'd love to have a "ping --reachable <secs> <host>" that just silently returned a return code whether a host was pingable.
(of course you could do "ping -w 5 10.0.0.1 >/dev/null 2>&1" but still)
this is pretty close:
https://www.tuhs.org/cgi-bin/utree.pl?file=4.3BSD/usr/src/et...
pr_pack( buf, cc, from )
char *buf;
int cc;
struct sockaddr_in *from;
{
I know this ship has sailed, but after reading through the code you linked to, I finally understand the merit to this old-style C function definition syntax, and actually think it might look nicer than the modern way of doing the same thing for longer parameter lists: pr_pack( char *buf,
int cc,
struct sockaddr_in *from )
{
It reminds me of how in TypeScript, if a function gets too many arguments, I'll split them out into an interface, and use destructuring to get to each element in the actual parameter list for convenience.