This is a large patch (sorry). Migrate from struct in_addr
[abartlet/samba.git/.git] / source3 / utils / netlookup.c
index 315a89d5a8c0f3983f7dcd2cc6b2e5f9ad9c6506..90f99e4c8b06661730dd7d3edc16f536ae23db74 100644 (file)
@@ -56,11 +56,15 @@ static int cs_destructor(struct con_struct *p)
 static struct con_struct *create_cs(TALLOC_CTX *ctx, NTSTATUS *perr)
 {
        NTSTATUS nt_status;
-       struct in_addr loopback_ip;
+       struct sockaddr_storage loopback_ss;
 
-       loopback_ip.s_addr = htonl(INADDR_LOOPBACK);
        *perr = NT_STATUS_OK;
 
+       if (!interpret_string_addr(&loopback_ss, "127.0.0.1", AI_NUMERICHOST)) {
+               *perr = NT_STATUS_INVALID_PARAMETER;
+               return NULL;
+       }
+
        if (cs) {
                if (cs->failed_connect) {
                        *perr = cs->err;
@@ -90,7 +94,7 @@ static struct con_struct *create_cs(TALLOC_CTX *ctx, NTSTATUS *perr)
 #endif
 
        nt_status = cli_full_connection(&cs->cli, global_myname(), global_myname(),
-                                       &loopback_ip, 0,
+                                       &loopback_ss, 0,
                                        "IPC$", "IPC",
 #if 0
                                        opt_user_name,