diff options
author | Darren Tucker <dtucker@zip.com.au> | 2003-08-21 16:49:41 +1000 |
---|---|---|
committer | Darren Tucker <dtucker@zip.com.au> | 2003-08-21 16:49:41 +1000 |
commit | 8e3653d2f330a96b4aefaccac3f1031749aebd53 (patch) | |
tree | 964bc4cfcf6f155de6c29b87bdc5093ce4926913 | |
parent | f4220e6cefdddd30acd0dcaa152dedff84a15c0f (diff) |
- (dtucker) [defines.h] Put CMSG_DATA, CMSG_FIRSTHDR with other CMSG* macros,
change CMSG_DATA to use __CMSG_ALIGN (and thus work properly), reformat for
consistency.
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | defines.h | 37 |
2 files changed, 22 insertions, 20 deletions
@@ -3,6 +3,9 @@ - markus@cvs.openbsd.org 2003/08/14 16:08:58 [ssh-keygen.c] exit after primetest, ok djm@ + - (dtucker) [defines.h] Put CMSG_DATA, CMSG_FIRSTHDR with other CMSG* macros, + change CMSG_DATA to use __CMSG_ALIGN (and thus work properly), reformat for + consistency. 20030813 - (dtucker) [session.c] Remove #ifdef TIOCSBRK kludge. @@ -840,4 +843,4 @@ - Fix sshd BindAddress and -b options for systems using fake-getaddrinfo. Report from murple@murple.net, diagnosis from dtucker@zip.com.au -$Id: ChangeLog,v 1.2894 2003/08/21 06:44:07 dtucker Exp $ +$Id: ChangeLog,v 1.2895 2003/08/21 06:49:41 dtucker Exp $ @@ -25,7 +25,7 @@ #ifndef _DEFINES_H #define _DEFINES_H -/* $Id: defines.h,v 1.100 2003/08/07 05:58:28 dtucker Exp $ */ +/* $Id: defines.h,v 1.101 2003/08/21 06:49:41 dtucker Exp $ */ /* Constants */ @@ -437,6 +437,23 @@ struct winsize { #define CMSG_SPACE(len) (__CMSG_ALIGN(sizeof(struct cmsghdr)) + __CMSG_ALIGN(len)) #endif +/* given pointer to struct cmsghdr, return pointer to data */ +#ifndef CMSG_DATA +#define CMSG_DATA(cmsg) ((u_char *)(cmsg) + __CMSG_ALIGN(sizeof(struct cmsghdr))) +#endif /* CMSG_DATA */ + +/* + * RFC 2292 requires to check msg_controllen, in case that the kernel returns + * an empty list for some reasons. + */ +#ifndef CMSG_FIRSTHDR +#define CMSG_FIRSTHDR(mhdr) \ + ((mhdr)->msg_controllen >= sizeof(struct cmsghdr) ? \ + (struct cmsghdr *)(mhdr)->msg_control : \ + (struct cmsghdr *)NULL) +#endif /* CMSG_FIRSTHDR */ + + /* Function replacement / compatibility hacks */ #if !defined(HAVE_GETADDRINFO) && (defined(HAVE_OGETADDRINFO) || defined(HAVE_NGETADDRINFO)) @@ -577,22 +594,4 @@ struct winsize { /** end of login recorder definitions */ -#ifndef CMSG_DATA -/* given pointer to struct cmsghdr, return pointer to data */ -#define CMSG_DATA(cmsg) \ - ((u_char *)(cmsg) + (((u_int)(sizeof(struct cmsghdr)) \ - (sizeof(int) - 1)) &~ (sizeof(int) - 1))) -#endif /* CMSG_DATA */ - -#ifndef CMSG_FIRSTHDR -/* - * 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) -#endif /* CMSG_FIRSTHDR */ - #endif /* _DEFINES_H */ |