From df11280ad09d9a9fe2dc7c7650324a6f0cd39e5d Mon Sep 17 00:00:00 2001 From: Sangyoon Jang Date: Wed, 19 Jul 2017 20:49:14 +0900 Subject: [PATCH] Fix misusing of strncat Change-Id: Ide549ba856ca38c9a8a9016d7e4fefef50f53f21 Signed-off-by: Sangyoon Jang --- src/request.c | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/src/request.c b/src/request.c index fe31de8..f68a4e2 100644 --- a/src/request.c +++ b/src/request.c @@ -290,7 +290,6 @@ static int __handle_request_install(uid_t caller_uid, GVariant *value; int i = 0; int len = 0; - size_t s = 0; g_variant_get(parameters, "(u&s&s@as)", &target_uid, &arg_pkgtype, &pkgpath, &value); @@ -309,12 +308,9 @@ static int __handle_request_install(uid_t caller_uid, } for (i = 0; i < args_count; i++) { - strncat(args, tmp_args[i], len - s - 1); - s += strlen(tmp_args[i]); - if (i != args_count - 1) { - strncat(args, " ", len - s - 1); - s += strlen(" "); - } + strncat(args, tmp_args[i], len - strlen(args) - 1); + if (i != args_count - 1) + strncat(args, " ", len - strlen(args) - 1); } if (target_uid == (uid_t)-1 || pkgpath == NULL) { @@ -384,7 +380,6 @@ static int __handle_request_mount_install(uid_t caller_uid, GVariant *value; int i = 0; int len = 0; - size_t s = 0; g_variant_get(parameters, "(u&s&s@as)", &target_uid, &arg_pkgtype, &pkgpath, &value); @@ -403,12 +398,9 @@ static int __handle_request_mount_install(uid_t caller_uid, } for (i = 0; i < args_count; i++) { - strncat(args, tmp_args[i], len - s - 1); - s += strlen(tmp_args[i]); - if (i != args_count - 1) { - strncat(args, " ", len - s - 1); - s += strlen(" "); - } + strncat(args, tmp_args[i], len - strlen(args) - 1); + if (i != args_count - 1) + strncat(args, " ", len - strlen(args) - 1); } if (target_uid == (uid_t)-1 || pkgpath == NULL) { -- 2.7.4