s3:rpcclient: fix build without HAVE_IPV6
authorGregor Beck <gbeck@sernet.de>
Wed, 26 Mar 2014 08:30:24 +0000 (09:30 +0100)
committerJeremy Allison <jra@samba.org>
Mon, 31 Mar 2014 20:52:12 +0000 (22:52 +0200)
Signed-off-by: Gregor Beck <gbeck@sernet.de>
Reviewed-by: Michael Adam <obnox@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
source3/rpcclient/cmd_witness.c

index f9e4c9e17bed0b0e1f5f6d108973e572fe4d233e..1812449c3a01d8c54377ef301947c01198aacde2 100644 (file)
@@ -366,8 +366,7 @@ static bool AsyncNotify_Move(TALLOC_CTX *mem_ctx, const uint8_t **ptr)
        for (n=0; n<num; n++) {
                uint32_t flags = IVAL(pos,0);
                struct in_addr ipv4;
-               struct in6_addr ipv6;
-               struct sockaddr_storage sas4, sas6;
+               struct sockaddr_storage sas4;
                char *str4, *str6;
                pos += 4;
 
@@ -376,9 +375,19 @@ static bool AsyncNotify_Move(TALLOC_CTX *mem_ctx, const uint8_t **ptr)
                str4 = print_canonical_sockaddr(mem_ctx, &sas4);
                pos += 4;
 
-               memcpy(&ipv6.s6_addr, pos, 16);
-               in6_addr_to_sockaddr_storage(&sas6, ipv6);
-               str6 = print_canonical_sockaddr(mem_ctx, &sas6);
+               {
+#ifdef HAVE_IPV6
+                       struct in6_addr ipv6;
+                       struct sockaddr_storage sas6;
+
+                       memcpy(&ipv6.s6_addr, pos, 16);
+                       in6_addr_to_sockaddr_storage(&sas6, ipv6);
+                       str6 = print_canonical_sockaddr(mem_ctx, &sas6);
+#else
+                       DATA_BLOB ipv6 = data_blob(pos, 16);
+                       str6 = data_blob_hex_string_upper(mem_ctx, &ipv6);
+#endif
+               }
                pos += 16;
 
                d_printf("Flags 0x%08x", flags);