mosh-server warning on unattached servers checks that device exists

This commit is contained in:
Keith Winstein
2012-11-26 03:00:12 -05:00
parent 2f8a67acc7
commit 1c2b48abc6
+9 -1
View File
@@ -773,6 +773,13 @@ bool motd_hushed( void )
return (0 == lstat( ".hushlogin", &buf )); return (0 == lstat( ".hushlogin", &buf ));
} }
bool device_exists( const char *ut_line )
{
string device_name = string( "/dev/" ) + string( ut_line );
struct stat buf;
return (0 == lstat( device_name.c_str(), &buf ));
}
string mosh_read_line( FILE *file ) string mosh_read_line( FILE *file )
{ {
string ret; string ret;
@@ -808,7 +815,8 @@ void warn_unattached( const string & ignore_entry )
/* does line show unattached mosh session */ /* does line show unattached mosh session */
string text( entry->ut_host ); string text( entry->ut_host );
if ( (text.substr( 0, 5 ) == "mosh ") if ( (text.substr( 0, 5 ) == "mosh ")
&& (text != ignore_entry) ) { && (text != ignore_entry)
&& device_exists( entry->ut_line ) ) {
unattached_mosh_servers.push_back( text ); unattached_mosh_servers.push_back( text );
} }
} }