Remove cmdline when founding a process with db lock 42/310742/1
authorIlho Kim <ilho159.kim@samsung.com>
Tue, 7 May 2024 11:11:39 +0000 (20:11 +0900)
committerIlho Kim <ilho159.kim@samsung.com>
Tue, 7 May 2024 11:11:39 +0000 (20:11 +0900)
Reading cmdline can cause smack deny

Change-Id: I336a56d270cc37ccf417d19def75aa4b76600590
Signed-off-by: Ilho Kim <ilho159.kim@samsung.com>
src/server/database/abstract_db_handler.cc

index 45f5e156024dd1b70f1da80d787f3f0ee9e695c4..9f5f7aefbd4ceb76edc7ee532d96d8a707bb5875 100644 (file)
@@ -46,7 +46,6 @@ void __check_db_lock(const char* dbpath) {
   unsigned int min;
   unsigned long long ino;
   char cmdline[BUFSIZE];
-  char name[BUFSIZE];
   char type[1024];
 
   if (stat(dbpath, &sb) == -1) {
@@ -66,22 +65,7 @@ void __check_db_lock(const char* dbpath) {
         ino != sb.st_ino || pid == getpid())
       continue;
 
-    snprintf(cmdline, sizeof(cmdline), "/proc/%d/cmdline", pid);
-    FILE* fp_cmdline = fopen(cmdline, "r");
-    name[0] = '\0';
-    if (fp_cmdline != NULL) {
-      size_t len = fread(name, sizeof(char), sizeof(name) - 1,
-          fp_cmdline);
-      if (len > 0) {
-        if (name[len - 1] == '\n')
-          name[len - 1] = '\0';
-        else
-          name[len] = '\0';
-      }
-      fclose(fp_cmdline);
-    }
-
-    LOG(WARNING) << name << "(" << pid << ")" << "has lock("
+    LOG(WARNING) << "(" << pid << ")" << "has lock ("
         << type << ") on pkgmgr db(" << dbpath << ")";
   }