diff options
Diffstat (limited to 'meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6')
-rw-r--r-- | meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/socklen_t.patch | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/socklen_t.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/socklen_t.patch new file mode 100644 index 0000000000..8e46df8e1e --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/socklen_t.patch @@ -0,0 +1,59 @@ +commit 88b6984ef0bf3b703c1c851092662b95e91db1ff +Author: farrah rashid <farrah.rashid@windriver.com> +Date: Tue Feb 12 09:53:50 2013 -0500 + + tcp-wrappers Support for building with glibc + + Added support for socklen_t type to len argument passed to socket related + calls. This fixes a bug that causes tcp wrappers to fail when using sshd. + + Upstream-Status: Pending + + Signed-off-by: farrah rashid <farrah.rashid@windriver.com> + +diff --git a/fix_options.c b/fix_options.c +index 7473adf..fe2b442 100644 +--- a/fix_options.c ++++ b/fix_options.c +@@ -38,7 +38,12 @@ struct request_info *request; + #ifdef IP_OPTIONS + unsigned char optbuf[BUFFER_SIZE / 3], *cp; + char lbuf[BUFFER_SIZE], *lp; +- int optsize = sizeof(optbuf), ipproto; ++#ifdef __GLIBC__ ++ socklen_t optsize = sizeof(optbuf); ++#else ++ int optsize = sizeof(optbuf); ++#endif ++ int ipproto; + struct protoent *ip; + int fd = request->fd; + unsigned int opt; +diff --git a/socket.c b/socket.c +index 4b2c575..a0d2987 100644 +--- a/socket.c ++++ b/socket.c +@@ -95,7 +95,11 @@ struct request_info *request; + static struct sockaddr_in client; + static struct sockaddr_in server; + #endif ++#ifdef __GLIBC__ ++ socklen_t len; ++#else + int len; ++#endif + char buf[BUFSIZ]; + int fd = request->fd; + +@@ -426,7 +430,11 @@ int fd; + #else + struct sockaddr_in sin; + #endif ++#ifdef __GLIBC__ ++ socklen_t size = sizeof(sin); ++#else + int size = sizeof(sin); ++#endif + + /* + * Eat up the not-yet received datagram. Some systems insist on a |