[svace] fix PROC_USE.VULNERABLE accepted/tizen/unified/20230325.044633
authorYelin Jeong <yelini.jeong@samsung.com>
Fri, 24 Mar 2023 01:19:12 +0000 (10:19 +0900)
committer정예린/SoC Architecture팀(SR)/삼성전자 <yelini.jeong@samsung.com>
Fri, 24 Mar 2023 01:59:55 +0000 (10:59 +0900)
This patch fixes svace error.

Signed-off-by: Yelin Jeong <yelini.jeong@samsung.com>
utils/idu_load/idu-load.cc

index 321ba5f7304d5b36379b5e9883f03ad8ea7f9411..d4266a93b2d0a1474a69200628c1dc10d410b2c0 100644 (file)
@@ -29,9 +29,10 @@ int g_dev_fd;
 
 static int
 init (const char *dev) {
+  char buf[256];
   g_dev_fd = open (dev, O_RDWR);
   if (g_dev_fd < 0) {
-    fprintf (stderr, "%s: %s\n", __func__, strerror (errno));
+    fprintf (stderr, "%s: %s\n", __func__, strerror_r (errno, buf, sizeof (buf)));
     return -1;
   }
 
@@ -63,6 +64,7 @@ static int
 dma_alloc (size_t size) {
   int ret;
   struct trinity_ioctl_hwmem hwmem;
+  char buf[256];
 
   assert (g_dev_fd > 0);
 
@@ -71,7 +73,7 @@ dma_alloc (size_t size) {
   hwmem.dbuf_fd = 0;
   ret = ioctl (g_dev_fd, TRINITY_IOCTL_HWMEM_ALLOC, &hwmem);
   if (ret < 0) {
-    fprintf (stderr, "%s: %s\n", __func__, strerror (errno));
+    fprintf (stderr, "%s: %s\n", __func__, strerror_r (errno, buf, sizeof (buf)));
     return -1;
   }
 
@@ -82,13 +84,14 @@ static int
 dma_free (int dbuf) {
   int ret;
   struct trinity_ioctl_hwmem hwmem;
+  char buf[256];
 
   assert (g_dev_fd > 0);
 
   hwmem.dbuf_fd = dbuf;
   ret = ioctl (g_dev_fd, TRINITY_IOCTL_HWMEM_DEALLOC, &hwmem);
   if (ret < 0) {
-    fprintf (stderr, "%s: %s\n", __func__, strerror (errno));
+    fprintf (stderr, "%s: %s\n", __func__, strerror_r (errno, buf, sizeof (buf)));
     return -1;
   }
 
@@ -99,6 +102,7 @@ static ssize_t
 get_size (const char *path) {
   int ret;
   int fd = open (path, O_RDONLY);
+
   if (fd < 0)
     return 0;
 
@@ -110,8 +114,9 @@ get_size (const char *path) {
 
 static int
 check_file (const char *path) {
+  char buf[256];
   if (access (path, R_OK) < 0) {
-    fprintf (stderr, "%s: %s\n", __func__, strerror (errno));
+    fprintf (stderr, "%s: %s\n", __func__, strerror_r (errno, buf, sizeof (buf)));
     return -1;
   }
 
@@ -123,24 +128,25 @@ bin_copy (int dbuf, const char *path, size_t count) {
   ssize_t size;
   void *addr;
   int fd;
+  char buf[256];
 
   fd = open (path, O_RDONLY);
   if (fd < 0) {
-    fprintf (stderr, "%s: %s\n", __func__, strerror (errno));
+    fprintf (stderr, "%s: %s\n", __func__, strerror_r (errno, buf, sizeof (buf)));
     return -1;
   }
 
   lseek (fd, 0, SEEK_SET);
   addr = mmap (NULL, count, PROT_WRITE, MAP_SHARED, dbuf, 0);
   if (addr == MAP_FAILED) {
-    fprintf (stderr, "%s: %s\n", __func__, strerror (errno));
+    fprintf (stderr, "%s: %s\n", __func__, strerror_r (errno, buf, sizeof (buf)));
     close (fd);
     return -1;
   }
 
   size = read (fd, addr, count);
   if (size != count) {
-    fprintf (stderr, "%s: %s\n", __func__, strerror (errno));
+    fprintf (stderr, "%s: %s\n", __func__, strerror_r (errno, buf, sizeof (buf)));
     munmap (addr, count);
     close (fd);
     return -1;
@@ -154,12 +160,13 @@ bin_copy (int dbuf, const char *path, size_t count) {
 static int
 unload (void) {
   int ret;
+  char buf[256];
 
   assert (g_dev_fd);
 
   ret = ioctl (g_dev_fd, TRINITY_IOCTL_IDU_SET, NULL);
   if (ret < 0) {
-    fprintf (stderr, "%s: %s\n", __func__, strerror (errno));
+    fprintf (stderr, "%s: %s\n", __func__, strerror_r (errno, buf, sizeof (buf)));
     return -1;
   }
 
@@ -176,6 +183,8 @@ load (char *bins[]) {
   ssize_t dsp_data_size = get_size (bins[2]);
   ssize_t dsp_code_size = get_size (bins[3]);
 
+  char buf[256];
+
   if (cp_data_size <= 0 || cp_code_size <= 0 || dsp_data_size <= 0 || dsp_code_size <= 0)
     goto out_err;
 
@@ -202,7 +211,7 @@ load (char *bins[]) {
 
   ret = ioctl (g_dev_fd, TRINITY_IOCTL_IDU_SET, &idu);
   if (ret < 0) {
-    fprintf (stderr, "%s: %s\n", __func__, strerror (errno));
+    fprintf (stderr, "%s: %s\n", __func__, strerror_r (errno, buf, sizeof (buf)));
     goto out_err;
   }