From 11abe6e81e27cf989b2939a9e7fcaf6544b9d3b1 Mon Sep 17 00:00:00 2001 From: Kaige Fu Date: Mon, 28 May 2018 11:53:09 +0800 Subject: [PATCH] tools: acrnctl: fix possibility of buffer overflow Replace strcpy with strncpy to avoid possibility of buffer overflow Signed-off-by: Kaige Fu Reviewed-by: Kevin Tian --- tools/acrn-manager/acrnctl.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tools/acrn-manager/acrnctl.c b/tools/acrn-manager/acrnctl.c index 2607b1680..ccc60eed2 100644 --- a/tools/acrn-manager/acrnctl.c +++ b/tools/acrn-manager/acrnctl.c @@ -45,6 +45,7 @@ #include "monitor_msg.h" #define ACRNCTL_OPT_ROOT "/opt/acrn/conf" +#define MAX_NAME_LEN (128) /* helper functions */ static int shell_cmd(const char *cmd, char *outbuf, int len) @@ -88,7 +89,7 @@ static void process_msg(struct vmm_msg *msg) #define ACRN_DM_SOCK_ROOT "/run/acrn" struct vmm_struct { - char name[128]; + char name[MAX_NAME_LEN]; unsigned long state; LIST_ENTRY(vmm_struct) list; }; @@ -121,7 +122,7 @@ static struct vmm_struct *vmm_list_add(char *name) return NULL; } - strcpy(s->name, name); + strncpy(s->name, name, MAX_NAME_LEN - 1); LIST_INSERT_HEAD(&vmm_head, s, list); return s;