tech-net archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: ping: sendto: No buffer space available

On Mon, Oct 10, 2011 at 10:05:14AM -0700, Erik E. Fair wrote:
> Ping(8) is a network test and measurement tool. Clearly, it falls
> into the "will request non-blocking I/O" class, in that in orderfor
> it to properly report where things are working (or not working),it
> has to know what's going on.

Just to respond specifically to this point: the reason why the semantic
change you are suggesting is so bad is, very specifically, because
applications *do not currently have to request non-blocking I/O" on
PF_INET, SOCK_DGRAM sockets in order to be assured they will not block
on writes to those sockets.

So existing event-driven programs (which ping is really not, and certainly
not typical of) will suddenly begin to hang if the change you advocate
should be implemented.  Are you proposing reaching back in time and causing
their authors to have applied non-blocking to their sockets long ago in
anticipation of this change you are proposing now?  Because without a time
machine, the change will simply cause mysterious failures of applications
that presently do in fact work.

Not good.


Home | Main Index | Thread Index | Old Index