X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=support%2Fmap.c;h=136f2b71878105b87fdcb5ccb5faa0f1cc943646;hb=62c49f89ad1cc35593a00d909ea57bb41955288b;hp=ee61ae661d9be7e741c0997fdf7e6de54ccc5d9a;hpb=bc9d5d113ab7064fc199a2f430751643466cb477;p=mono.git diff --git a/support/map.c b/support/map.c index ee61ae661d9..136f2b71878 100644 --- a/support/map.c +++ b/support/map.c @@ -1,5 +1,5 @@ /* - * This file was automatically generated by create-native-map from /home/kiesssn/prog/mono/mono/mcs/class/lib/net_4_x/Mono.Posix.dll. + * This file was automatically generated by create-native-map from ../mcs/class/lib/net_4_x/Mono.Posix.dll. * * DO NOT MODIFY. */ @@ -367,6 +367,48 @@ int Mono_Posix_ToAtFlags (int x, int *r) return 0; } +#ifdef HAVE_STRUCT_CMSGHDR +int +Mono_Posix_FromCmsghdr (struct Mono_Posix_Cmsghdr *from, struct cmsghdr *to) +{ + _cnm_return_val_if_overflow (gint64, from->cmsg_len, -1); + + memset (to, 0, sizeof(*to)); + + to->cmsg_len = from->cmsg_len; + if (Mono_Posix_FromUnixSocketProtocol (from->cmsg_level, &to->cmsg_level) != 0) { + return -1; + } + if (Mono_Posix_FromUnixSocketControlMessage (from->cmsg_type, &to->cmsg_type) != 0) { + return -1; + } + + return 0; +} +#endif /* ndef HAVE_STRUCT_CMSGHDR */ + + +#ifdef HAVE_STRUCT_CMSGHDR +int +Mono_Posix_ToCmsghdr (struct cmsghdr *from, struct Mono_Posix_Cmsghdr *to) +{ + _cnm_return_val_if_overflow (gint64, from->cmsg_len, -1); + + memset (to, 0, sizeof(*to)); + + to->cmsg_len = from->cmsg_len; + if (Mono_Posix_ToUnixSocketProtocol (from->cmsg_level, &to->cmsg_level) != 0) { + return -1; + } + if (Mono_Posix_ToUnixSocketControlMessage (from->cmsg_type, &to->cmsg_type) != 0) { + return -1; + } + + return 0; +} +#endif /* ndef HAVE_STRUCT_CMSGHDR */ + + int Mono_Posix_FromConfstrName (int x, int *r) { *r = 0; @@ -5149,6 +5191,172 @@ int Mono_Posix_ToSignum (int x, int *r) errno = EINVAL; return -1; } +#ifdef HAVE_STRUCT_SOCKADDR_IN +int +Mono_Posix_FromSockaddrIn (struct Mono_Posix_SockaddrIn *from, struct sockaddr_in *to) +{ + _cnm_return_val_if_overflow (unsigned short, from->sin_port, -1); + + memset (to, 0, sizeof(*to)); + + to->sin_port = from->sin_port; + if (Mono_Posix_FromInAddr (&from->sin_addr, &to->sin_addr) != 0) { + return -1; + } + + return 0; +} +#endif /* ndef HAVE_STRUCT_SOCKADDR_IN */ + + +#ifdef HAVE_STRUCT_SOCKADDR_IN +int +Mono_Posix_ToSockaddrIn (struct sockaddr_in *from, struct Mono_Posix_SockaddrIn *to) +{ + _cnm_return_val_if_overflow (unsigned short, from->sin_port, -1); + + memset (to, 0, sizeof(*to)); + + to->sin_port = from->sin_port; + if (Mono_Posix_ToInAddr (&from->sin_addr, &to->sin_addr) != 0) { + return -1; + } + + return 0; +} +#endif /* ndef HAVE_STRUCT_SOCKADDR_IN */ + + +#ifdef HAVE_STRUCT_SOCKADDR_IN6 +int +Mono_Posix_FromSockaddrIn6 (struct Mono_Posix_SockaddrIn6 *from, struct sockaddr_in6 *to) +{ + _cnm_return_val_if_overflow (unsigned short, from->sin6_port, -1); + _cnm_return_val_if_overflow (unsigned int, from->sin6_flowinfo, -1); + _cnm_return_val_if_overflow (unsigned int, from->sin6_scope_id, -1); + + memset (to, 0, sizeof(*to)); + + to->sin6_port = from->sin6_port; + to->sin6_flowinfo = from->sin6_flowinfo; + if (Mono_Posix_FromIn6Addr (&from->sin6_addr, &to->sin6_addr) != 0) { + return -1; + } + to->sin6_scope_id = from->sin6_scope_id; + + return 0; +} +#endif /* ndef HAVE_STRUCT_SOCKADDR_IN6 */ + + +#ifdef HAVE_STRUCT_SOCKADDR_IN6 +int +Mono_Posix_ToSockaddrIn6 (struct sockaddr_in6 *from, struct Mono_Posix_SockaddrIn6 *to) +{ + _cnm_return_val_if_overflow (unsigned short, from->sin6_port, -1); + _cnm_return_val_if_overflow (unsigned int, from->sin6_flowinfo, -1); + _cnm_return_val_if_overflow (unsigned int, from->sin6_scope_id, -1); + + memset (to, 0, sizeof(*to)); + + to->sin6_port = from->sin6_port; + to->sin6_flowinfo = from->sin6_flowinfo; + if (Mono_Posix_ToIn6Addr (&from->sin6_addr, &to->sin6_addr) != 0) { + return -1; + } + to->sin6_scope_id = from->sin6_scope_id; + + return 0; +} +#endif /* ndef HAVE_STRUCT_SOCKADDR_IN6 */ + + +int Mono_Posix_FromSockaddrType (int x, int *r) +{ + *r = 0; + if (x == Mono_Posix_SockaddrType_Invalid) +#ifdef Invalid + {*r = Invalid; return 0;} +#else /* def Invalid */ + {errno = EINVAL; return -1;} +#endif /* ndef Invalid */ + if (x == Mono_Posix_SockaddrType_MustBeWrapped) +#ifdef MustBeWrapped + {*r = MustBeWrapped; return 0;} +#else /* def MustBeWrapped */ + {errno = EINVAL; return -1;} +#endif /* ndef MustBeWrapped */ + if (x == Mono_Posix_SockaddrType_Sockaddr) +#ifdef Sockaddr + {*r = Sockaddr; return 0;} +#else /* def Sockaddr */ + {errno = EINVAL; return -1;} +#endif /* ndef Sockaddr */ + if (x == Mono_Posix_SockaddrType_SockaddrIn) +#ifdef SockaddrIn + {*r = SockaddrIn; return 0;} +#else /* def SockaddrIn */ + {errno = EINVAL; return -1;} +#endif /* ndef SockaddrIn */ + if (x == Mono_Posix_SockaddrType_SockaddrIn6) +#ifdef SockaddrIn6 + {*r = SockaddrIn6; return 0;} +#else /* def SockaddrIn6 */ + {errno = EINVAL; return -1;} +#endif /* ndef SockaddrIn6 */ + if (x == Mono_Posix_SockaddrType_SockaddrStorage) +#ifdef SockaddrStorage + {*r = SockaddrStorage; return 0;} +#else /* def SockaddrStorage */ + {errno = EINVAL; return -1;} +#endif /* ndef SockaddrStorage */ + if (x == Mono_Posix_SockaddrType_SockaddrUn) +#ifdef SockaddrUn + {*r = SockaddrUn; return 0;} +#else /* def SockaddrUn */ + {errno = EINVAL; return -1;} +#endif /* ndef SockaddrUn */ + if (x == 0) + return 0; + errno = EINVAL; return -1; +} + +int Mono_Posix_ToSockaddrType (int x, int *r) +{ + *r = 0; + if (x == 0) + return 0; +#ifdef Invalid + if (x == Invalid) + {*r = Mono_Posix_SockaddrType_Invalid; return 0;} +#endif /* ndef Invalid */ +#ifdef MustBeWrapped + if (x == MustBeWrapped) + {*r = Mono_Posix_SockaddrType_MustBeWrapped; return 0;} +#endif /* ndef MustBeWrapped */ +#ifdef Sockaddr + if (x == Sockaddr) + {*r = Mono_Posix_SockaddrType_Sockaddr; return 0;} +#endif /* ndef Sockaddr */ +#ifdef SockaddrIn + if (x == SockaddrIn) + {*r = Mono_Posix_SockaddrType_SockaddrIn; return 0;} +#endif /* ndef SockaddrIn */ +#ifdef SockaddrIn6 + if (x == SockaddrIn6) + {*r = Mono_Posix_SockaddrType_SockaddrIn6; return 0;} +#endif /* ndef SockaddrIn6 */ +#ifdef SockaddrStorage + if (x == SockaddrStorage) + {*r = Mono_Posix_SockaddrType_SockaddrStorage; return 0;} +#endif /* ndef SockaddrStorage */ +#ifdef SockaddrUn + if (x == SockaddrUn) + {*r = Mono_Posix_SockaddrType_SockaddrUn; return 0;} +#endif /* ndef SockaddrUn */ + errno = EINVAL; return -1; +} + int Mono_Posix_FromSysconfName (int x, int *r) { *r = 0; @@ -7902,6 +8110,12 @@ int Mono_Posix_FromUnixAddressFamily (int x, int *r) #else /* def AF_X25 */ {errno = EINVAL; return -1;} #endif /* ndef AF_X25 */ + if (x == Mono_Posix_UnixAddressFamily_Unknown) +#ifdef Unknown + {*r = Unknown; return 0;} +#else /* def Unknown */ + {errno = EINVAL; return -1;} +#endif /* ndef Unknown */ if (x == 0) return 0; errno = EINVAL; return -1; @@ -8068,6 +8282,46 @@ int Mono_Posix_ToUnixAddressFamily (int x, int *r) if (x == AF_X25) {*r = Mono_Posix_UnixAddressFamily_AF_X25; return 0;} #endif /* ndef AF_X25 */ +#ifdef Unknown + if (x == Unknown) + {*r = Mono_Posix_UnixAddressFamily_Unknown; return 0;} +#endif /* ndef Unknown */ + errno = EINVAL; return -1; +} + +int Mono_Posix_FromUnixSocketControlMessage (int x, int *r) +{ + *r = 0; + if (x == Mono_Posix_UnixSocketControlMessage_SCM_CREDENTIALS) +#ifdef SCM_CREDENTIALS + {*r = SCM_CREDENTIALS; return 0;} +#else /* def SCM_CREDENTIALS */ + {errno = EINVAL; return -1;} +#endif /* ndef SCM_CREDENTIALS */ + if (x == Mono_Posix_UnixSocketControlMessage_SCM_RIGHTS) +#ifdef SCM_RIGHTS + {*r = SCM_RIGHTS; return 0;} +#else /* def SCM_RIGHTS */ + {errno = EINVAL; return -1;} +#endif /* ndef SCM_RIGHTS */ + if (x == 0) + return 0; + errno = EINVAL; return -1; +} + +int Mono_Posix_ToUnixSocketControlMessage (int x, int *r) +{ + *r = 0; + if (x == 0) + return 0; +#ifdef SCM_CREDENTIALS + if (x == SCM_CREDENTIALS) + {*r = Mono_Posix_UnixSocketControlMessage_SCM_CREDENTIALS; return 0;} +#endif /* ndef SCM_CREDENTIALS */ +#ifdef SCM_RIGHTS + if (x == SCM_RIGHTS) + {*r = Mono_Posix_UnixSocketControlMessage_SCM_RIGHTS; return 0;} +#endif /* ndef SCM_RIGHTS */ errno = EINVAL; return -1; }