Index: dcop/dcopserver.cpp
===================================================================
RCS file: /home/kde/kdelibs/dcop/dcopserver.cpp,v
retrieving revision 1.145.2.6
diff -u -p -r1.145.2.6 dcopserver.cpp
--- dcop/dcopserver.cpp 19 Mar 2003 18:51:25 -0000      1.145.2.6
+++ dcop/dcopserver.cpp 2 Mar 2005 13:29:16 -0000
@@ -992,7 +992,7 @@ DCOPServer::DCOPServer(bool _only_local,
       }

    char errormsg[256];
-    int orig_umask = umask(0); /*old libICE's don't reset the umask() they set */
+    int orig_umask = umask(077); /*old libICE's don't reset the umask() they set */
    if (!IceListenForConnections (&numTransports, &listenObjs,
                                 256, errormsg))
       {
Index: dcop/KDE-ICE/Xtranssock.c
===================================================================
RCS file: /home/kde/kdelibs/dcop/KDE-ICE/Xtranssock.c,v
retrieving revision 1.8.4.1
diff -u -p -r1.8.4.1 Xtranssock.c
--- dcop/KDE-ICE/Xtranssock.c   19 Mar 2003 18:34:59 -0000      1.8.4.1
+++ dcop/KDE-ICE/Xtranssock.c   2 Mar 2005 13:29:16 -0000
@@ -937,6 +937,7 @@ TRANS(SocketUNIXCreateListener) (XtransC
#endif

    unlink (sockname.sun_path);
+    (void) umask (oldUmask);

    if ((status = TRANS(SocketCreateListener) (ciptr,
       (struct sockaddr *) &sockname, namelen)) < 0)
@@ -944,7 +945,6 @@ TRANS(SocketUNIXCreateListener) (XtransC
       PRMSG (1,
    "SocketUNIXCreateListener: ...SocketCreateListener() failed\n",
           0, 0, 0);
-       (void) umask (oldUmask);
       return status;
    }

@@ -962,7 +962,6 @@ TRANS(SocketUNIXCreateListener) (XtransC
        PRMSG (1,
        "SocketUNIXCreateListener: Can't allocate space for the addr\n",
           0, 0, 0);
-       (void) umask (oldUmask);
        return TRANS_CREATE_LISTENER_FAILED;
    }

@@ -970,8 +969,6 @@ TRANS(SocketUNIXCreateListener) (XtransC
    ciptr->addrlen = namelen;
    memcpy (ciptr->addr, &sockname, ciptr->addrlen);

-    (void) umask (oldUmask);
-
    return 0;
}