|
|
{ | { |
const char *ptr; | const char *ptr; |
struct sockaddr_un sa; | struct sockaddr_un sa; |
|
struct stat ststat; |
| |
if (DMType == Dunno) { | if (DMType == Dunno) { |
if (!(dpy = ::getenv( "DISPLAY" ))) | if (!(dpy = ::getenv( "DISPLAY" ))) |
|
|
if ((fd = ::socket( PF_UNIX, SOCK_STREAM, 0 )) < 0) | if ((fd = ::socket( PF_UNIX, SOCK_STREAM, 0 )) < 0) |
return; | return; |
sa.sun_family = AF_UNIX; | sa.sun_family = AF_UNIX; |
if (DMType == GDM) |
if (DMType == GDM) { |
strcpy( sa.sun_path, "/tmp/.gdm_socket" ); |
if (stat("/var/run/gdm_socket"i, ststat)==0) { |
|
strcpy( sa.sun_path, "/var/run/gdm_socket"); |
|
} else { |
|
strcpy( sa.sun_path, "/tmp/.gdm_socket" ); |
|
} |
|
} |
else { | else { |
if ((ptr = strchr( dpy, ':' ))) | if ((ptr = strchr( dpy, ':' ))) |
ptr = strchr( ptr, '.' ); | ptr = strchr( ptr, '.' ); |