From 02b3ce2d7f7b32a292188328fa0573f73ec46224 Mon Sep 17 00:00:00 2001 From: Bartlomiej Grzelewski Date: Thu, 18 Jul 2013 17:35:24 +0200 Subject: [PATCH] Add configuration for systemd. List of changes: * change socket name for get-get api * add systemd configuration for get-object-name api * remove some useless logs from services [Issue#] N/A [Bug/Feature] Remove deprecated logs. [Cause] N/A [Solution] N/A [Verification] Build, install, run tests. Change-Id: I5eed0ab203dee6d3d777f64c6bd495ea01dbd4fb --- packaging/security-server.spec | 3 +++ src/server2/common/protocols.cpp | 2 +- src/server2/service/data-share.cpp | 2 -- src/server2/service/exec-path.cpp | 2 -- src/server2/service/get-gid.cpp | 4 +--- src/server2/service/get-object-name.cpp | 4 +--- src/server2/service/privilege-by-pid.cpp | 3 --- systemd/CMakeLists.txt | 1 + systemd/security-server-get-object-name.socket | 10 ++++++++++ systemd/security-server-privilege-by-pid.socket | 2 +- systemd/security-server.service | 1 + 11 files changed, 19 insertions(+), 15 deletions(-) create mode 100644 systemd/security-server-get-object-name.socket diff --git a/packaging/security-server.spec b/packaging/security-server.spec index fbd76fd..3d737b5 100644 --- a/packaging/security-server.spec +++ b/packaging/security-server.spec @@ -83,6 +83,7 @@ ln -s ../security-server-data-share.socket %{buildroot}/usr/lib/systemd/system/s ln -s ../security-server-get-gid.socket %{buildroot}/usr/lib/systemd/system/sockets.target.wants/security-server-get-gid.socket ln -s ../security-server-privilege-by-pid.socket %{buildroot}/usr/lib/systemd/system/sockets.target.wants/security-server-privilege-by-pid.socket ln -s ../security-server-exec-path.socket %{buildroot}/usr/lib/systemd/system/sockets.target.wants/security-server-exec-path.socket +ln -s ../security-server-get-object-name.socket %{buildroot}/usr/lib/systemd/system/sockets.target.wants/security-server-get-object-name.socket %clean rm -rf %{buildroot} @@ -121,6 +122,8 @@ systemctl daemon-reload %attr(-,root,root) /usr/lib/systemd/system/security-server-privilege-by-pid.socket %attr(-,root,root) /usr/lib/systemd/system/sockets.target.wants/security-server-exec-path.socket %attr(-,root,root) /usr/lib/systemd/system/security-server-exec-path.socket +%attr(-,root,root) /usr/lib/systemd/system/sockets.target.wants/security-server-get-object-name.socket +%attr(-,root,root) /usr/lib/systemd/system/security-server-get-object-name.socket %{_datadir}/license/%{name} diff --git a/src/server2/common/protocols.cpp b/src/server2/common/protocols.cpp index 347d4c6..91564da 100644 --- a/src/server2/common/protocols.cpp +++ b/src/server2/common/protocols.cpp @@ -33,7 +33,7 @@ char const * const SERVICE_SOCKET_ECHO = char const * const SERVICE_SOCKET_GET_GID = "/tmp/.security-server-api-get-gid.sock"; char const * const SERVICE_SOCKET_PRIVILEGE_BY_PID = - "/tmp/.security-server-api-privilege-by-pid"; + "/tmp/.security-server-api-privilege-by-pid.sock"; char const * const SERVICE_SOCKET_EXEC_PATH = "/tmp/.security-server-api-exec-path.sock"; char const * const SERVICE_SOCKET_GET_OBJECT_NAME = diff --git a/src/server2/service/data-share.cpp b/src/server2/service/data-share.cpp index c6f32f8..6351f24 100644 --- a/src/server2/service/data-share.cpp +++ b/src/server2/service/data-share.cpp @@ -88,7 +88,6 @@ bool SharedMemoryService::readOne(const ConnectionID &conn, SocketBuffer &buffer struct smack_accesses *smack = NULL; if (!buffer.Ready()) { - LogDebug("Got part of message. Service is waiting for the rest."); return false; } @@ -151,7 +150,6 @@ void SharedMemoryService::read(const ReadEvent &event) { auto &buffer = m_socketBufferMap[event.connectionID.counter]; buffer.Push(event.rawBuffer); - LogDebug("Pushed to buffer ptr: " << (void*)&buffer); // We can get several requests in one package. // Extract and process them all while(readOne(event.connectionID, buffer)); diff --git a/src/server2/service/exec-path.cpp b/src/server2/service/exec-path.cpp index 4ecb2b3..6fdbd85 100644 --- a/src/server2/service/exec-path.cpp +++ b/src/server2/service/exec-path.cpp @@ -87,7 +87,6 @@ bool ExecPathService::processOne(const ConnectionID &conn, SocketBuffer &buffer) char *exe; if (!buffer.Ready()) { - LogDebug("Got part of message. Service is waiting for the rest."); return false; } @@ -132,7 +131,6 @@ void ExecPathService::read(const ReadEvent &event) { auto &buffer = m_socketBufferMap[event.connectionID.counter]; buffer.Push(event.rawBuffer); - LogDebug("Pushed to buffer ptr: " << (void*)&buffer); // We can get several requests in one package. // Extract and process them all while(processOne(event.connectionID, buffer)); diff --git a/src/server2/service/get-gid.cpp b/src/server2/service/get-gid.cpp index ba9ebe6..3adb8c0 100644 --- a/src/server2/service/get-gid.cpp +++ b/src/server2/service/get-gid.cpp @@ -118,8 +118,8 @@ bool GetGidService::readOne(const ConnectionID &conn, SocketBuffer &buffer) { LogDebug("Iteration begin"); std::string objectName; int retCode = SECURITY_SERVER_API_ERROR_SERVER_ERROR; + if (!buffer.Ready()) { - LogDebug("Got part of message. Service is waiting for the rest."); return false; } @@ -150,8 +150,6 @@ void GetGidService::read(const ReadEvent &event) { auto &buffer = m_socketBufferMap[event.connectionID.counter]; buffer.Push(event.rawBuffer); - LogDebug("Pushed to buffer ptr: " << (void*)&buffer); - // We can get several requests in one package. // Extract and process them all while(readOne(event.connectionID, buffer)); diff --git a/src/server2/service/get-object-name.cpp b/src/server2/service/get-object-name.cpp index fdcb2fc..b88ad89 100644 --- a/src/server2/service/get-object-name.cpp +++ b/src/server2/service/get-object-name.cpp @@ -122,8 +122,8 @@ bool GetObjectNameService::readOne(const ConnectionID &conn, SocketBuffer &buffe LogDebug("Iteration begin"); gid_t gid; int retCode = SECURITY_SERVER_API_ERROR_SERVER_ERROR; + if (!buffer.Ready()) { - LogDebug("Got part of message. Service is waiting for the rest."); return false; } @@ -154,8 +154,6 @@ void GetObjectNameService::read(const ReadEvent &event) { auto &buffer = m_socketBufferMap[event.connectionID.counter]; buffer.Push(event.rawBuffer); - LogDebug("Pushed to buffer ptr: " << (void*)&buffer); - // We can get several requests in one package. // Extract and process them all while(readOne(event.connectionID, buffer)); diff --git a/src/server2/service/privilege-by-pid.cpp b/src/server2/service/privilege-by-pid.cpp index b7bc28a..826b54f 100644 --- a/src/server2/service/privilege-by-pid.cpp +++ b/src/server2/service/privilege-by-pid.cpp @@ -84,7 +84,6 @@ void PrivilegeByPidService::write(const WriteEvent &event) { bool PrivilegeByPidService::readOne(const ConnectionID &conn, SocketBuffer &buffer) { LogDebug("Iteration begin"); - int retval; int pid; std::string object; @@ -95,7 +94,6 @@ bool PrivilegeByPidService::readOne(const ConnectionID &conn, SocketBuffer &buff if (!buffer.Ready()) { - LogDebug("Got part of message. Service is waiting for the rest."); return false; } @@ -154,7 +152,6 @@ void PrivilegeByPidService::read(const ReadEvent &event) { auto &buffer = m_socketBufferMap[event.connectionID.counter]; buffer.Push(event.rawBuffer); - LogDebug("Pushed to buffer ptr: " << (void*)&buffer); // We can get several requests in one package. // Extract and process them all while(readOne(event.connectionID, buffer)); diff --git a/systemd/CMakeLists.txt b/systemd/CMakeLists.txt index 4f6e9ca..267a5da 100644 --- a/systemd/CMakeLists.txt +++ b/systemd/CMakeLists.txt @@ -5,6 +5,7 @@ INSTALL(FILES ${CMAKE_SOURCE_DIR}/systemd/security-server-get-gid.socket ${CMAKE_SOURCE_DIR}/systemd/security-server-privilege-by-pid.socket ${CMAKE_SOURCE_DIR}/systemd/security-server-exec-path.socket + ${CMAKE_SOURCE_DIR}/systemd/security-server-get-object-name.socket DESTINATION /usr/lib/systemd/system ) diff --git a/systemd/security-server-get-object-name.socket b/systemd/security-server-get-object-name.socket new file mode 100644 index 0000000..0ef30ca --- /dev/null +++ b/systemd/security-server-get-object-name.socket @@ -0,0 +1,10 @@ +[Socket] +ListenStream=/tmp/.security-server-api-get-object-name.sock +SocketMode=0777 +SmackLabelIPIn=* +SmackLabelIPOut=@ + +Service=security-server.service + +[Install] +WantedBy=sockets.target diff --git a/systemd/security-server-privilege-by-pid.socket b/systemd/security-server-privilege-by-pid.socket index 1a29b6a..6806d50 100644 --- a/systemd/security-server-privilege-by-pid.socket +++ b/systemd/security-server-privilege-by-pid.socket @@ -1,5 +1,5 @@ [Socket] -ListenStream=/tmp/.security-server-api-privilege-by-pid +ListenStream=/tmp/.security-server-api-privilege-by-pid.sock SocketMode=0777 SmackLabelIPIn=* SmackLabelIPOut=@ diff --git a/systemd/security-server.service b/systemd/security-server.service index a7e230c..7480b30 100644 --- a/systemd/security-server.service +++ b/systemd/security-server.service @@ -9,6 +9,7 @@ Sockets=security-server-data-share.socket Sockets=security-server-get-gid.socket Sockets=security-server-privilege-by-pid.socket Sockets=security-server-exec-path.socket +Sockets=security-server-get-object-name.socket [Install] WantedBy=multi-user.target -- 2.7.4