sosend/soreceive consistency improvements

Robert Watson rwatson at
Mon Jul 24 00:27:59 UTC 2006

On Mon, 24 Jul 2006, gnn at wrote:

> At Sun, 23 Jul 2006 19:57:56 +0100 (BST),
> rwatson wrote:
>> Rather than continue in this "in between state", in which the uio/mbuf 
>> chain sosend and soreceive are reached via the protocol switch in each 
>> occurrence, I propose a change: sosend() and soreceive() will now be the 
>> formal APIs for sending and receiveing on sockets within the kernel, as is 
>> the case with many other so*() functions, and they will perform the 
>> protocol switch dereference. The existing functions are renamed to 
>> sosend_generic() and soreceive_generic(), and in most cases are never 
>> referenced by protocols since our protocol domain registration already uses 
>> sosend() and soreceive() as the defaults today.  The new code strikes me as 
>> quite a bit more readable, and likely easier for socket consumers to use.
>> Any thoughts and/or objections?
> Makes sense to me.  Can we document these?  That is, is there a man page in 
> section 9 we could add these to?

I have plans to add a socket(9) man page, but because I'm still tearing things 
up, I've deferred doing that.  I've started increasing the number of notes in 
uipc_socket.c in order to document some of the things that will eventually be 
in socket(9).

Robert N M Watson
Computer Laboratory
University of Cambridge

More information about the freebsd-arch mailing list