diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2006-11-07 19:05:43 +0000 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2006-11-07 19:05:43 +0000 |
commit | 8528151658927bcb4822f2956b93d352cf5ad2e6 (patch) | |
tree | 2a0bc89c187db4a406e382edf4b4f1605018e20b | |
parent | 6476cc108969cb44cad868d8df2c17ee2f953cc2 (diff) | |
download | busybox-w32-8528151658927bcb4822f2956b93d352cf5ad2e6.tar.gz busybox-w32-8528151658927bcb4822f2956b93d352cf5ad2e6.tar.bz2 busybox-w32-8528151658927bcb4822f2956b93d352cf5ad2e6.zip |
small ipv6 doc changes; nslookup a tiny bit smaller
-rw-r--r-- | docs/ipv4_ipv6.txt | 3 | ||||
-rw-r--r-- | networking/nc.c | 2 | ||||
-rw-r--r-- | networking/nslookup.c | 5 |
3 files changed, 6 insertions, 4 deletions
diff --git a/docs/ipv4_ipv6.txt b/docs/ipv4_ipv6.txt index 5a63aa776..76d8279c1 100644 --- a/docs/ipv4_ipv6.txt +++ b/docs/ipv4_ipv6.txt | |||
@@ -212,7 +212,8 @@ structure the code differently. | |||
212 | Here's the corresponding server C code for a dual-stack platform: | 212 | Here's the corresponding server C code for a dual-stack platform: |
213 | 213 | ||
214 | int ServSock, csock; | 214 | int ServSock, csock; |
215 | struct sockaddr addr, from; | 215 | /* struct sockaddr is too small! */ |
216 | struct sockaddr_storage addr, from; | ||
216 | ... | 217 | ... |
217 | ServSock = socket(AF_INET6, SOCK_STREAM, PF_INET6); | 218 | ServSock = socket(AF_INET6, SOCK_STREAM, PF_INET6); |
218 | bind(ServSock, &addr, sizeof(addr)); | 219 | bind(ServSock, &addr, sizeof(addr)); |
diff --git a/networking/nc.c b/networking/nc.c index a940d8a5d..2f8a36bee 100644 --- a/networking/nc.c +++ b/networking/nc.c | |||
@@ -25,7 +25,6 @@ int nc_main(int argc, char **argv) | |||
25 | SKIP_NC_EXTRA (const int execparam = 0;) | 25 | SKIP_NC_EXTRA (const int execparam = 0;) |
26 | USE_NC_EXTRA (char **execparam = NULL;) | 26 | USE_NC_EXTRA (char **execparam = NULL;) |
27 | struct sockaddr_in address; | 27 | struct sockaddr_in address; |
28 | struct hostent *hostinfo; | ||
29 | fd_set readfds, testfds; | 28 | fd_set readfds, testfds; |
30 | int opt; /* must be signed (getopt returns -1) */ | 29 | int opt; /* must be signed (getopt returns -1) */ |
31 | 30 | ||
@@ -116,6 +115,7 @@ int nc_main(int argc, char **argv) | |||
116 | 115 | ||
117 | if (!execparam) close(sfd); | 116 | if (!execparam) close(sfd); |
118 | } else { | 117 | } else { |
118 | struct hostent *hostinfo; | ||
119 | hostinfo = xgethostbyname(argv[0]); | 119 | hostinfo = xgethostbyname(argv[0]); |
120 | 120 | ||
121 | address.sin_addr = *(struct in_addr *) *hostinfo->h_addr_list; | 121 | address.sin_addr = *(struct in_addr *) *hostinfo->h_addr_list; |
diff --git a/networking/nslookup.c b/networking/nslookup.c index dd49e2669..89a2d6481 100644 --- a/networking/nslookup.c +++ b/networking/nslookup.c | |||
@@ -82,9 +82,10 @@ static int print_host(const char *hostname, const char *header) | |||
82 | while (cur) { | 82 | while (cur) { |
83 | sockaddr_to_dotted(cur->ai_addr, str, sizeof(str)); | 83 | sockaddr_to_dotted(cur->ai_addr, str, sizeof(str)); |
84 | printf("%s %s\nAddress: %s", header, hostname, str); | 84 | printf("%s %s\nAddress: %s", header, hostname, str); |
85 | if (getnameinfo(cur->ai_addr, cur->ai_addrlen, str, sizeof(str), NULL, 0, NI_NAMEREQD)) | 85 | s[0] = ' '; |
86 | if (getnameinfo(cur->ai_addr, cur->ai_addrlen, str+1, sizeof(str)-1, NULL, 0, NI_NAMEREQD)) | ||
86 | str[0] = '\0'; | 87 | str[0] = '\0'; |
87 | printf(" %s\n", str); | 88 | puts(str); |
88 | cur = cur->ai_next; | 89 | cur = cur->ai_next; |
89 | } | 90 | } |
90 | } else { | 91 | } else { |