title: POSIX: Return value from write() on UDP socket
body: <p>On a POSIX system, if <code>sock_fd</code> is an UDP socket, will <code>write(sock_fd, data, size)</code> always return <code>size</code> or -1? I.e., if <code>write()</code> does not fail, will the requested chunk of data <strong>always</strong> be written in its entirety, implying that, if the return value is not -1, then I can <strong>always</strong> ignore the actual return value?</p>
  
  <p>It seems to me that this should be the case, but no man page seems to state it clearly.</p>
  
  <p>EDIT: I suppose there are two possible answers. Either it is stated somewhere, but I haven't found it, or there is some obscure corner case that allows for the return value to be less that the requested size.</p>