tools: acrnctl restrict length of vmname to 32 bytes

When run 'acrnctl add launch_script.sh', vmname will be detected from
the launch script and stored in vmmngr_struct.name[MAX_VM_OS_NAME_LEN],
so vmname should not be longer than MAX_VM_OS_NAME_LEN.

Tracked-On: #2851
Signed-off-by: Tao Yuhong <yuhong.tao@intel.com>
Reviewed-by: Yin Fengwei <fengwei.yin@intel.com>
This commit is contained in:
yuhong.tao@intel.com
2019-03-11 20:02:48 +08:00
committed by wenlingz
parent 8109c2e94c
commit b2f2d95246
4 changed files with 13 additions and 8 deletions

View File

@@ -23,7 +23,7 @@
/* acrnd worker timer */
struct work_arg {
char name[VMNAME_LEN];
char name[MAX_VM_OS_NAME_LEN];
};
struct acrnd_work {
@@ -356,7 +356,7 @@ static void handle_timer_req(struct mngr_msg *msg, int client_fd, void *param)
}
strncpy(arg.name, msg->data.acrnd_timer.name, sizeof(arg.name) - 1);
if (sizeof(arg.name) - 1 < strnlen(msg->data.acrnd_timer.name, VMNAME_LEN)) {
if (sizeof(arg.name) - 1 < strnlen(msg->data.acrnd_timer.name, MAX_VM_OS_NAME_LEN)) {
perror("timer name was truncated\n");
goto reply_ack;
}