Similar to tty_name(), add tty_driver_name() helper to safely
dereference tty->driver->name (otherwise return empty string).
Signed-off-by: Peter Hurley <peter@hurleysoftware.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 
 EXPORT_SYMBOL(tty_name);
 
+const char *tty_driver_name(const struct tty_struct *tty)
+{
+       if (!tty || !tty->driver)
+               return "";
+       return tty->driver->name;
+}
+
 static int tty_paranoia_check(struct tty_struct *tty, struct inode *inode,
                              const char *routine)
 {
 
 }
 
 extern const char *tty_name(const struct tty_struct *tty);
+extern const char *tty_driver_name(const struct tty_struct *tty);
 extern void tty_wait_until_sent(struct tty_struct *tty, long timeout);
 extern int __tty_check_change(struct tty_struct *tty, int sig);
 extern int tty_check_change(struct tty_struct *tty);