>>>>> On Wed, 28 Apr 2004 17:09:30 -0700, >>>>> "George V. Neville-Neil" <[EMAIL PROTECTED]> said:
> This should be a minor nit but, is there any reason we > implement this this way: > #define CMSG_FIRSTHDR(mhdr) ((struct cmsghdr *)(mhdr)->msg_control) > instead of this way: > #define CMSG_FIRSTHDR(mhdr) \ > ( (mhdr)->msg_controllen >= sizeof(struct cmsghdr) ? \ > (struct cmsghdr *)(mhdr)->msg_control : \ > (struct cmsghdr *)NULL ) > as suggested in RFC 2292? > A coworker of mine asked about this and then I got to wondering > myself. I see no special reason. In fact, KAME snapshots have this check as suggested in RFC2292 (or 3542): /* * RFC 2292 requires to check msg_controllen, in case that the kernel returns * an empty list for some reasons. */ #define CMSG_FIRSTHDR(mhdr) \ ((mhdr)->msg_controllen >= sizeof(struct cmsghdr) ? \ (struct cmsghdr *)(mhdr)->msg_control : \ (struct cmsghdr *)NULL) JINMEI, Tatuya Communication Platform Lab. Corporate R&D Center, Toshiba Corp. [EMAIL PROTECTED] _______________________________________________ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-net To unsubscribe, send any mail to "[EMAIL PROTECTED]"