tests: Fix possible format string attack.
authorAndreas Schneider <asn@samba.org>
Tue, 27 May 2014 07:35:00 +0000 (09:35 +0200)
committerAndreas Schneider <asn@samba.org>
Tue, 27 May 2014 07:51:52 +0000 (09:51 +0200)
Well, there is really not attack on a test but we want to silence
Coverity :)

CID 17221

Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
tests/test_ioctl.c

index 1f31c2eaf4bb11b42941d24bda7fd91d50477efb..63337207bfc2c48c25bcb32217481cf8f8f34343 100644 (file)
@@ -31,9 +31,8 @@ static void setup(void **state)
 
 static void teardown(void **state)
 {
-       char remove_cmd[256] = {0};
+       char remove_cmd[1024] = {0};
        const char *swrap_dir = getenv("SOCKET_WRAPPER_DIR");
-       char *s;
        int rc;
 
        (void) state; /* unused */
@@ -42,10 +41,8 @@ static void teardown(void **state)
                return;
        }
 
-       /* Do not use a tainted string in snprintf */
-       s = strdup(swrap_dir);
-       snprintf(remove_cmd, sizeof(remove_cmd), "rm -rf %s", s);
-       free(s);
+       strcpy(remove_cmd, "rm -rf ");
+       strncpy(remove_cmd + 8, swrap_dir, sizeof(remove_cmd) - 9);
 
        rc = system(remove_cmd);
        if (rc < 0) {