Does FreeBSD have sendmmsg or recvmmsg system calls?

Gary Jennejohn gljennjohn at gmail.com
Tue Jan 26 17:25:49 UTC 2016


On Tue, 26 Jan 2016 09:06:39 -0800
Luigi Rizzo <rizzo at iet.unipi.it> wrote:

> On Tue, Jan 26, 2016 at 5:40 AM, Konstantin Belousov
> <kostikbel at gmail.com> wrote:
> > On Mon, Jan 25, 2016 at 11:22:13AM +0200, Boris Astardzhiev wrote:  
> >> +ssize_t
> >> +recvmmsg(int s, struct mmsghdr *__restrict msgvec, size_t vlen, int flags,
> >> +    const struct timespec *__restrict timeout)
> >> +{
> >> +     size_t i, rcvd;
> >> +     ssize_t ret;
> >> +
> >> +     if (timeout != NULL) {
> >> +             fd_set fds;
> >> +             int res;  
> > Please move all local definitions to the beginning of the function.  
> 
> This style recommendation was from 30 years ago and is
> bad programming practice, as it tends to complicate analysis
> for the human and increase the chance of improper usage of
> variables.
> 
> We should move away from this for new code.
> 

Really?  I personally find having all variables grouped together
much easier to understand.  Stumbling across declarations in the
middle of the code in a for-loop, for example, takes me by surprise.

I also greatly dislike initializing variables in their declarations.

Maybe I'm just old fashioned since I have been writing C-code for
more than 30 years.

-- 
Gary Jennejohn


More information about the freebsd-threads mailing list