diff options
| author | Jiri Moskovcak <jmoskovc@redhat.com> | 2009-06-15 15:43:50 +0200 |
|---|---|---|
| committer | Jiri Moskovcak <jmoskovc@redhat.com> | 2009-06-15 15:43:50 +0200 |
| commit | 1424c0420d5d1c5468c48860a754839cbbecb6b8 (patch) | |
| tree | 3d547b6cacf94c014ccae99aaebf67baeaa0d74b /lib/CommLayer/CommLayerServerSocket.cpp | |
| parent | 091b9f6d3c1613e32e08e7f4663726344408d4a3 (diff) | |
| parent | e7b5a3a7eb78a6d79572b2362707c5bbe9c32aa4 (diff) | |
| download | abrt-1424c0420d5d1c5468c48860a754839cbbecb6b8.tar.gz abrt-1424c0420d5d1c5468c48860a754839cbbecb6b8.tar.xz abrt-1424c0420d5d1c5468c48860a754839cbbecb6b8.zip | |
Merge branch 'master' of ssh://git.fedorahosted.org/git/abrt
Diffstat (limited to 'lib/CommLayer/CommLayerServerSocket.cpp')
| -rw-r--r-- | lib/CommLayer/CommLayerServerSocket.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/lib/CommLayer/CommLayerServerSocket.cpp b/lib/CommLayer/CommLayerServerSocket.cpp index 12db88c9..38571942 100644 --- a/lib/CommLayer/CommLayerServerSocket.cpp +++ b/lib/CommLayer/CommLayerServerSocket.cpp @@ -170,13 +170,14 @@ CCommLayerServerSocket::CCommLayerServerSocket() int len; struct sockaddr_un local; + unlink(SOCKET_PATH); if ((m_nSocket = socket(AF_UNIX, SOCK_STREAM, 0)) == -1) { throw CABRTException(EXCEP_FATAL, "CCommLayerServerSocket::CCommLayerServerSocket(): Can not create socket."); } + fcntl(m_nSocket, F_SETFD, FD_CLOEXEC); local.sun_family = AF_UNIX; strcpy(local.sun_path, SOCKET_PATH); - unlink(local.sun_path); len = strlen(local.sun_path) + sizeof(local.sun_family); if (bind(m_nSocket, (struct sockaddr *)&local, len) == -1) { @@ -186,9 +187,7 @@ CCommLayerServerSocket::CCommLayerServerSocket() { throw CABRTException(EXCEP_FATAL, "CCommLayerServerSocket::CCommLayerServerSocket(): Can not listen on the socket."); } - - fcntl(m_nSocket, F_SETFD, FD_CLOEXEC); - fchmod(m_nSocket, SOCKET_PERMISSION); + chmod(SOCKET_PATH, SOCKET_PERMISSION); m_pGSocket = g_io_channel_unix_new(m_nSocket); if (!g_io_add_watch(m_pGSocket, |
