From: Todd C. Miller Date: Thu, 12 Jan 2012 12:50:40 +0000 (-0500) Subject: Add a check for devname() returning a fully-qualified pathname. X-Git-Tag: SUDO_1_8_4~59^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=1c038be41329071ec4f6cc7fb6b675e22d8f29d7;p=sudo Add a check for devname() returning a fully-qualified pathname. None of the devname() implementations do this today but you never know when this might change. --- diff --git a/src/sudo.c b/src/sudo.c index bb515f1d5..87b388e87 100644 --- a/src/sudo.c +++ b/src/sudo.c @@ -479,12 +479,15 @@ get_process_tty(void) sudo_debug_printf(SUDO_DEBUG_WARN, "unable to map device number %u to name", ki_proc->sudo_kp_tdev); - } else { + } else if (*dev != '/') { /* devname() doesn't use the /dev/ prefix, add one... */ size_t len = sizeof(_PATH_DEV) + strlen(dev); tty = emalloc(len); strlcpy(tty, _PATH_DEV, len); strlcat(tty, dev, len); + } else { + /* Should not happen but just in case... */ + tty = estrdup(dev); } } else { sudo_debug_printf(SUDO_DEBUG_WARN,