I recently ran into some trouble using apr_socket_sendv() on my Solaris box, which apparently sets IOV_MAX to the absurdly low value of 16. APR does not appear to have any facilities for dealing with this. Ideally this limitation could be obscured in APR, since IOV_MAX is not a portable identifier (Windows doesn't have it). I'm considering writing a patch to the unix version of apr_socket_sendv(), which would check IOV_MAX and issue several calls to sendv() if necessary (while respecting the blocking, nonblocking, timeout setting in the same way as apr_socket_send()).
I have to write this code anyway, but it seems to belong in APR. Any objections?
Jim
