summaryrefslogtreecommitdiff
path: root/src/libexec/sockip.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libexec/sockip.c')
-rw-r--r--src/libexec/sockip.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/libexec/sockip.c b/src/libexec/sockip.c
index 542a88d..f1f0480 100644
--- a/src/libexec/sockip.c
+++ b/src/libexec/sockip.c
@@ -1,4 +1,5 @@
#include <stdio.h>
+#include <stdlib.h>
#include <sys/socket.h>
#include <netdb.h>
#include <netinet/in.h>
@@ -7,7 +8,7 @@ int main(int argc,char *argv[]) {
struct sockaddr_in6 sa6;
unsigned int sl=sizeof(sa6);
char h[NI_MAXHOST], s[NI_MAXSERV];
- if(getsockname(0,(struct sockaddr *)&sa6,&sl) == -1) return 1;
+ if(getsockname(argc>1?atoi(argv[1]):0,(struct sockaddr *)&sa6,&sl) == -1) return 1;
if(getnameinfo((struct sockaddr *)&sa6,sl,h,sizeof(h),s,sizeof(s),NI_NUMERICHOST|NI_NUMERICSERV)) return 2;
puts(h);
puts(s);