]> andersk Git - openssh.git/commitdiff
- (tim) [addrmatch.c configure.ac] Some platforms do not have sin6_scope_id
authortim <tim>
Wed, 19 Nov 2008 05:26:41 +0000 (05:26 +0000)
committertim <tim>
Wed, 19 Nov 2008 05:26:41 +0000 (05:26 +0000)
   member of sockaddr_in6. Also reported in Bug 1491 by David Leonard. OK and
   feedback by djm@

ChangeLog
addrmatch.c
configure.ac

index 58d12908139a97ddd517bc6677345e6289c98377..3f6d6324b7a196ff060a55d5ec4265802bbae3f6 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+20081118
+ - (tim) [addrmatch.c configure.ac] Some platforms do not have sin6_scope_id
+   member of sockaddr_in6. Also reported in Bug 1491 by David Leonard. OK and
+   feedback by djm@
+
 20081111
  - (dtucker) OpenBSD CVS Sync
    - jmc@cvs.openbsd.org 2008/11/05 11:22:54
index 2086afe84f4b41e3fecab25c190ab05a5131c67d..f3c861a1f3b4fbfcd165394d7c0a4f1ea6030eb7 100644 (file)
@@ -97,7 +97,9 @@ addr_sa_to_xaddr(struct sockaddr *sa, socklen_t slen, struct xaddr *xa)
                        return -1;
                xa->af = AF_INET6;
                memcpy(&xa->v6, &in6->sin6_addr, sizeof(xa->v6));
+#ifdef HAVE_STRUCT_SOCKADDR_IN6_SIN6_SCOPE_ID
                xa->scope_id = in6->sin6_scope_id;
+#endif
                break;
        default:
                return -1;
index 26820850088b82faff37eea81a70ce1bc74d0292..4c1dfad6c7c8a4b19263f7f0281397eecf185f47 100644 (file)
@@ -2824,6 +2824,15 @@ AC_CACHE_CHECK([for struct in6_addr], ac_cv_have_struct_in6_addr, [
 if test "x$ac_cv_have_struct_in6_addr" = "xyes" ; then
        AC_DEFINE(HAVE_STRUCT_IN6_ADDR, 1,
                [define if you have struct in6_addr data type])
+
+dnl Now check for sin6_scope_id
+       AC_CHECK_MEMBERS([struct sockaddr_in6.sin6_scope_id],,,
+               [
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#include <netinet/in.h>
+               ])
 fi
 
 AC_CACHE_CHECK([for struct addrinfo], ac_cv_have_struct_addrinfo, [
This page took 0.106969 seconds and 5 git commands to generate.