Improve address type error handling

This patch detects numeric address types to avoid unnecessary
warnings/errors.  It also cleans up error printing to not print error
messages on stderr in the deamon case.

Signed-off-by: Karsten Keil <kkeil@suse.de>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
This commit is contained in:
Karsten Keil 2008-07-31 13:18:11 +02:00 committed by H. Peter Anvin
parent bdb90cf176
commit 18fd18bd5c
4 changed files with 56 additions and 20 deletions

View file

@ -416,6 +416,8 @@ void setpeer(int argc, char *argv[])
peeraddr.sa.sa_family = ai_fam;
err = set_sock_addr(argv[1], &peeraddr, &hostname);
if (err) {
printf("Error: %s\n", gai_strerror(err));
printf("%s: unknown host\n", argv[1]);
connected = 0;
return;
}
@ -557,6 +559,8 @@ void put(int argc, char *argv[])
peeraddr.sa.sa_family = ai_fam;
err = set_sock_addr(cp, &peeraddr,&hostname);
if (err) {
printf("Error: %s\n", gai_strerror(err));
printf("%s: unknown host\n", argv[1]);
connected = 0;
return;
}
@ -645,8 +649,11 @@ void get(int argc, char *argv[])
*src++ = 0;
peeraddr.sa.sa_family = ai_fam;
err = set_sock_addr(argv[n], &peeraddr, &hostname);
if (err)
if (err) {
printf("Warning: %s\n", gai_strerror(err));
printf("%s: unknown host\n", argv[1]);
continue;
}
ai_fam = peeraddr.sa.sa_family;
connected = 1;
}