Fix static issues 78/268878/5
authorChanggyu Choi <changyu.choi@samsung.com>
Tue, 4 Jan 2022 06:12:01 +0000 (15:12 +0900)
committerChanggyu Choi <changyu.choi@samsung.com>
Tue, 4 Jan 2022 09:47:41 +0000 (18:47 +0900)
Change-Id: I5ecfd65def7b4c99bcccd04a86902154aec0e5e1
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
parser/exec-checker/src/exec_checker.cc
test/unit_tests/test_launch_with_result.cc

index a20ec27..08cd9ec 100644 (file)
@@ -103,6 +103,9 @@ bool FindMainSymbolFromEhdr(FILE* fp, Ehdr* ehdr) {
   if (Read(fp, &shdr_tab, ehdr->e_shoff, shdr_tab_size) < 0)
     return false;
 
+  if (ehdr->e_shstrndx >= shdr_tab_size)
+    return false;
+
   char* shdr_names = GetDataFromFile(fp, shdr_tab[ehdr->e_shstrndx].sh_offset,
       shdr_tab[ehdr->e_shstrndx].sh_size);
   if (shdr_names == nullptr)
index b13ae72..333510a 100644 (file)
@@ -68,29 +68,33 @@ class LaunchWithResultTest : public TestFixture {
     aul_launch_fini();
   }
 
-  std::unique_ptr<app_pkt_t, decltype(free)*> MakePacket(
-      tizen_base::Bundle b) {
+  std::shared_ptr<app_pkt_t> MakePacket(tizen_base::Bundle b) {
     auto raw = b.ToRaw();
     app_pkt_t* pkt =
         static_cast<app_pkt_t*>(calloc(1, sizeof(app_pkt_t) + raw.second));
+    if (pkt == nullptr)
+      return nullptr;
+
     pkt->opt = AUL_SOCK_BUNDLE;
     pkt->cmd = AUL_R_OK;
     pkt->len = raw.second;
     memcpy(pkt->data, raw.first.get(), raw.second);
 
-    return std::unique_ptr<app_pkt_t, decltype(free)*>(pkt, free);
+    return std::shared_ptr<app_pkt_t>(pkt, free);
   }
 
-  std::unique_ptr<app_pkt_t, decltype(free)*> MakePacket(
-      std::string str) {
-    app_pkt_t* pkt =
-        static_cast<app_pkt_t*>(calloc(1, sizeof(app_pkt_t) + str.length() + 1));
+  std::shared_ptr<app_pkt_t> MakePacket(std::string str) {
+    app_pkt_t* pkt = static_cast<app_pkt_t*>(
+        calloc(1, sizeof(app_pkt_t) + str.length() + 1));
+    if (pkt == nullptr)
+      return nullptr;
+
     pkt->opt = AUL_SOCK_NONE;
     pkt->cmd = APP_GET_INFO_OK;
     pkt->len = str.length() + 1;
     memcpy(pkt->data, str.c_str(), str.length());
 
-    return std::unique_ptr<app_pkt_t, decltype(free)*>(pkt, free);
+    return std::shared_ptr<app_pkt_t>(pkt, free);
   }
 };
 
@@ -116,6 +120,7 @@ TEST_F(LaunchWithResultTest, aul_send_launch_request_sync_for_uid) {
   int cmd = -1;
   tizen_base::Bundle b = { {"Key1", "Val1"} };
   auto pkt = MakePacket(b);
+  EXPECT_NE(pkt, nullptr);
 
   EXPECT_CALL(GetMock<SocketMock>(), send(_, _, _, _))
       .Times(1)
@@ -377,6 +382,7 @@ TEST_F(LaunchWithResultTest, aul_send_result) {
       { AUL_K_CALLER_PID, "100" }
   };
   auto pkt = MakePacket("test-appid");
+  EXPECT_NE(pkt, nullptr);
 
   EXPECT_CALL(GetMock<SocketMock>(), send(_, _, _, _))
       .Times(2)
@@ -432,4 +438,4 @@ TEST_F(LaunchWithResultTest, aul_add_caller_cb) {
   EXPECT_EQ(ret, AUL_R_OK);
   ret = aul_remove_caller_cb(ret_pid, &dummy);
   EXPECT_EQ(ret, AUL_R_OK);
-}
\ No newline at end of file
+}