summaryrefslogtreecommitdiffstats
path: root/crypto
diff options
context:
space:
mode:
authorshin <shin@FreeBSD.org>2000-02-07 00:52:49 +0000
committershin <shin@FreeBSD.org>2000-02-07 00:52:49 +0000
commit67ff6efc68d0c0596659fc9ac95df21a77ff603b (patch)
tree3f6178a3e4683b2137c9367bb59e33e9b4473dfc /crypto
parent517ce54f0eea87f8e9fe3037fe61bbfc93be9c2a (diff)
downloadFreeBSD-src-67ff6efc68d0c0596659fc9ac95df21a77ff603b.zip
FreeBSD-src-67ff6efc68d0c0596659fc9ac95df21a77ff603b.tar.gz
Fix telnet core dump at invalid service name specified.
Added an error check to avoid it. Approved by: jkh Submitted by: Robert Muir <rmuir@gibralter.net>
Diffstat (limited to 'crypto')
-rw-r--r--crypto/telnet/telnet/commands.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/crypto/telnet/telnet/commands.c b/crypto/telnet/telnet/commands.c
index 8380c29..bd671f8 100644
--- a/crypto/telnet/telnet/commands.c
+++ b/crypto/telnet/telnet/commands.c
@@ -2475,6 +2475,12 @@ tn(argc, argv)
(void) strncpy(_hostname, hostp, sizeof(_hostname) - 1);
_hostname[sizeof(_hostname)-1] = '\0';
hostname = _hostname;
+ } else if (error != 0) {
+ fprintf(stderr, "%s: %s\n", hostname, gai_strerror(error));
+ if (error == EAI_SYSTEM)
+ fprintf(stderr, "%s: %s\n", hostname, strerror(errno));
+ setuid(getuid());
+ return 0;
}
if (srcroute != 0) {
srp = 0;
OpenPOWER on IntegriCloud