diff options
Diffstat (limited to 'util-linux/rdate.c')
-rw-r--r-- | util-linux/rdate.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/util-linux/rdate.c b/util-linux/rdate.c index 8d156cc78..a822f42ff 100644 --- a/util-linux/rdate.c +++ b/util-linux/rdate.c | |||
@@ -47,17 +47,16 @@ static void socket_timeout(int sig) | |||
47 | static time_t askremotedate(const char *host) | 47 | static time_t askremotedate(const char *host) |
48 | { | 48 | { |
49 | unsigned long int nett, localt; | 49 | unsigned long int nett, localt; |
50 | const char *port="37"; | 50 | struct sockaddr_in addr s_in; |
51 | int fd; | 51 | int fd; |
52 | 52 | ||
53 | if (getservbyname("time", "tcp") != NULL) | 53 | bb_lookup_host(&s_in, host, "time"); |
54 | port="time"; | ||
55 | 54 | ||
56 | /* Add a timeout for dead or non accessable servers */ | 55 | /* Add a timeout for dead or non accessable servers */ |
57 | alarm(10); | 56 | alarm(10); |
58 | signal(SIGALRM, socket_timeout); | 57 | signal(SIGALRM, socket_timeout); |
59 | 58 | ||
60 | fd = xconnect(host, port); | 59 | fd = xconnect(s_in); |
61 | 60 | ||
62 | if (safe_read(fd, (void *)&nett, 4) != 4) /* read time from server */ | 61 | if (safe_read(fd, (void *)&nett, 4) != 4) /* read time from server */ |
63 | bb_error_msg_and_die("%s did not send the complete time", host); | 62 | bb_error_msg_and_die("%s did not send the complete time", host); |