chiark / gitweb /
server/: Introduce accessor functions for reading and writing port numbers.
[tripe] / server / admin.c
index c5fed8b0781cdfa7a0bb986f05e09893f6b0b26b..0ec187ce5e581bd21df335b8063f756313c393f1 100644 (file)
@@ -1030,7 +1030,7 @@ static void a_resolved(struct hostent *h, void *v)
     T( trace(T_ADMIN, "admin: resop %s ok", BGTAG(r)); )
     r->sa.sin.sin_family = AF_INET;
     memcpy(&r->sa.sin.sin_addr, h->h_addr, sizeof(struct in_addr));
-    r->sa.sin.sin_port = htons(r->port);
+    setport(&r->sa, r->port);
     r->func(r, ARES_OK);
   }
   sel_rmtimer(&r->t);
@@ -1113,7 +1113,6 @@ static void a_resolve(admin *a, admin_resop *r, const char *tag,
     a_fail(a, "bad-addr-syntax", "[inet] ADDRESS [PORT]", A_END);
     goto fail;
   }
-  r->sa.sin.sin_family = AF_INET;
   r->addr = xstrdup(av[i]);
   if (!av[i + 1])
     pt = TRIPE_PORT;
@@ -1150,7 +1149,7 @@ static void a_resolve(admin *a, admin_resop *r, const char *tag,
   if (inet_aton(av[i], &r->sa.sin.sin_addr)) {
     T( trace(T_ADMIN, "admin: resop %s done the easy way", BGTAG(r)); )
     r->sa.sin.sin_family = AF_INET;
-    r->sa.sin.sin_port = htons(r->port);
+    setport(&r->sa, r->port);
     func(r, ARES_OK);
     xfree(r->addr);
     a_bgrelease(&r->bg);