Why do you need a different timeout API?  It either works or it
doesn't.  Provide an implementation of send*/receive*/sockopt APIs
that can use SO_SNDTIMEO/O_RCVTIMEO, and enable it carefully.



Because some applications might rely upon the API setting a socket to
blocking or non-blocking based on the timeout.

They wouldn't work on Windows anyway, FWIW.

It is documented to behave in this way,

Where?
http://apr.apache.org/docs/apr/group__apr__network__io.html#ga26

"""

  t > 0  -- read and write calls return APR_TIMEUP if specified time
            elapsess with no data read or written
  t == 0 -- read and write calls never block
  t < 0  -- read and write calls block

"""

'block', 'never block'.


Reply via email to