00001
00002 #ifndef MSGHDR_H
00003 #define MSGHDR_H
00004
00005 #include "rcs_defs.hh"
00006
00007 #if defined(__CPLUSPLUS__) || defined(__cplusplus)
00008 #ifdef EXTERN_C_STD_HEADERS
00009 extern "C"
00010 {
00011 #endif
00012 #endif
00013
00014
00015
00016 #ifdef gnuwin32
00017 #include <sys/types.h>
00018 #include <sys/uio.h>
00019 #include <sys/socket.h>
00020 #define IOVEC_DEFINED
00021 #define CADDR_T_DEFINED
00022 #define MSGHDR_DEFINED
00023 #endif
00024
00025 #if !defined(_Windows) || defined(USE_PCNFS)
00026
00027 #ifndef MSDOS
00028 #include <sys/types.h>
00029 #ifndef irix5
00030 #ifndef VXWORKS
00031 #include <sys/uio.h>
00032 #define IOVEC_DEFINED
00033
00034 #else
00035 #include <net/uio.h>
00036 #define IOVEC_DEFINED
00037
00038 #endif
00039 #else
00040
00041 #ifndef IOVEC_DEFINED
00042 #define IOVEC_DEFINED
00043
00044
00045
00046
00047 typedef struct iovec
00048 {
00049 caddr_t iov_base;
00050 int iov_len;
00051 }
00052 iovec_t;
00053 #endif
00054 #endif
00055
00056 #include <sys/socket.h>
00057 #define MSGHDR_DEFINED
00058
00059 #else
00060 #include <tklib.h>
00061 #endif
00062 #else
00063 #ifndef CADDR_T_DEFINED
00064 #ifdef gnuwin32
00065 #include <sys/types.h>
00066 #include <sys/uio.h>
00067 #include <sys/socket.h>
00068 #define IOVEC_DEFINED
00069 #define CADDR_T_DEFINED
00070 #define MSGHDR_DEFINED
00071 #endif
00072
00073 #define CADDR_T_DEFINED
00074 typedef char RCS_FAR *caddr_t;
00075 #endif
00076 #ifndef IOVEC_DEFINED
00077 #define IOVEC_DEFINED
00078 struct iovec
00079 {
00080 caddr_t iov_base;
00081 int iov_len;
00082 };
00083 #endif
00084
00085
00086
00087 #ifndef MSGHDR_DEFINED
00088 #define MSGHDR_DEFINED
00089
00090
00091
00092 struct msghdr
00093 {
00094 caddr_t msg_name;
00095 int msg_namelen;
00096 struct iovec RCS_FAR *msg_iov;
00097 int msg_iovlen;
00098 caddr_t msg_accrights;
00099 int msg_accrightslen;
00100 };
00101 #endif
00102 #endif
00103
00104 #if defined(__CPLUSPLUS__) || defined(__cplusplus)
00105 #ifdef EXTERN_C_STD_HEADERS
00106 }
00107 #endif
00108 #endif
00109
00110 #endif