X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=authbind.git;a=blobdiff_plain;f=helper.c;h=3615d77fa69cc9935dff4c486505895e8760e98f;hp=409ed7bc2744c95abdac8b0aeaaf77e506fc0177;hb=59d14c88d280ffc962ee93e535ae87567316c544;hpb=a942b07a4483cfa4a5f0a8307e3b6239f7f44998 diff --git a/helper.c b/helper.c index 409ed7b..3615d77 100644 --- a/helper.c +++ b/helper.c @@ -72,7 +72,8 @@ int main(int argc, const char *const *argv) { if (argc != 3) badusage(); addr= strtoul(argv[1],&ep,16); if (*ep || addr&~0x0ffffffffUL) badusage(); port= strtoul(argv[2],&ep,16); if (*ep || port&~0x0ffffUL) badusage(); - if (port >= IPPORT_RESERVED/2) _exit(EPERM); + hport= htons(port); + if (hport >= IPPORT_RESERVED/2) _exit(EPERM); if (chdir(CONFIGDIR)) perrorfail("chdir " CONFIGDIR); @@ -81,7 +82,6 @@ int main(int argc, const char *const *argv) { saddr.sin_family= AF_INET; saddr.sin_port= port; saddr.sin_addr.s_addr= addr; - hport= htons(port); snprintf(fnbuf,sizeof(fnbuf)-1,"byport/%u",hport); if (!access(fnbuf,X_OK)) authorised();