diff options
Diffstat (limited to 'dcop')
-rw-r--r-- | dcop/KDE-ICE/Xtranssock.c | 5 | ||||
-rw-r--r-- | dcop/dcopc.c | 4 | ||||
-rw-r--r-- | dcop/dcopclient.cpp | 4 | ||||
-rw-r--r-- | dcop/dcopserver_shutdown.c | 4 |
4 files changed, 14 insertions, 3 deletions
diff --git a/dcop/KDE-ICE/Xtranssock.c b/dcop/KDE-ICE/Xtranssock.c index 100d218b1..7b14ca9ab 100644 --- a/dcop/KDE-ICE/Xtranssock.c +++ b/dcop/KDE-ICE/Xtranssock.c @@ -1444,6 +1444,7 @@ UnixHostReallyLocal (char *host) { char hostnamebuf[256]; + char* xauthlocalname = getenv("XAUTHLOCALHOSTNAME"); TRANS(GetHostname) (hostnamebuf, sizeof (hostnamebuf)); @@ -1451,6 +1452,10 @@ UnixHostReallyLocal (char *host) { return (1); } + else if(xauthlocalname && strcmp (xauthlocalname, host) == 0) + { + return (1); + } else { /* diff --git a/dcop/dcopc.c b/dcop/dcopc.c index 39083d4f5..9667eb624 100644 --- a/dcop/dcopc.c +++ b/dcop/dcopc.c @@ -684,7 +684,9 @@ dcop_connect() } hostName[0] = '\0'; - if (gethostname(hostName, sizeof(hostName))) + if (getenv("XAUTHLOCALHOSTNAME")) + strlcpy(hostName, getenv("XAUTHLOCALHOSTNAME"),sizeof(hostName)-1); + else if (gethostname(hostName, sizeof(hostName))) strcpy(hostName, "localhost"); else hostName[sizeof(hostName)-1] = '\0'; diff --git a/dcop/dcopclient.cpp b/dcop/dcopclient.cpp index e446801c9..8006ecd52 100644 --- a/dcop/dcopclient.cpp +++ b/dcop/dcopclient.cpp @@ -277,7 +277,9 @@ static TQCString dcopServerFile(const TQCString &hostname, bool old) { char hostName[256]; hostName[0] = '\0'; - if (gethostname(hostName, sizeof(hostName))) + if (getenv("XAUTHLOCALHOSTNAME")) + fName += getenv("XAUTHLOCALHOSTNAME"); + else if (gethostname(hostName, sizeof(hostName))) { fName += "localhost"; } diff --git a/dcop/dcopserver_shutdown.c b/dcop/dcopserver_shutdown.c index 46a847660..fb25a86fa 100644 --- a/dcop/dcopserver_shutdown.c +++ b/dcop/dcopserver_shutdown.c @@ -95,7 +95,9 @@ static void getDCOPFile(char *dcop_file, char *dcop_file_old, int max_length) strncat(dcop_file, "/.DCOPserver_", n); n -= strlen("/.DCOPserver_"); - if (gethostname(dcop_file+strlen(dcop_file), n) != 0) + if (getenv("XAUTHLOCALHOSTNAME")) + strncat(dcop_file+strlen(dcop_file), getenv("XAUTHLOCALHOSTNAME"), n); + else if (gethostname(dcop_file+strlen(dcop_file), n) != 0) { perror("Error. Could not determine hostname: "); dcop_file[0] = '\0'; |