usb: gadget: avoid variable name clipping in cb_getvar
Hi, A kind reminder to look at this patch (already reviewed by Marek and acked by Lukasz), and if possible to put it in the next pull list, or the one after is timing is too short. Thanks in advance for your time Best Regards Nicolas -----Original Message----- From: Nicolas LE BAYON Sent: mardi 25 avril 2017 10:18 To: Nicolas LE BAYON <nicolas.le.bayon@st.com>; u-boot@lists.denx.de; lukma@denx.de; marex@denx.de Cc: nlebayon@gmail.com; Patrice CHOTARD <patrice.chotard@st.com>; Jean-philippe ROMAIN <jean-philippe.romain@st.com> Subject: [U-Boot][PATCH v7] usb: gadget: avoid variable name clipping in cb_getvar From: Nicolas Le Bayon <nicolas.le.bayon@st.com> Instead of using a fixed-size array to store variable name, preferring a dynamic allocation treats correctly all variable name lengths. Variable names are growing through releases and features. By this way, name clipping is prevented. Signed-off-by: Nicolas Le Bayon <nicolas.le.bayon@st.com> Reviewed-by: Marek Vasut <marex@denx.de> Acked-by: Lukasz Majewski <lukma@denx.de>
This commit is contained in:
parent
1f5541c881
commit
b1f2a17c78
@ -432,9 +432,15 @@ static void cb_getvar(struct usb_ep *ep, struct usb_request *req)
|
||||
else
|
||||
strcpy(response, "FAILValue not set");
|
||||
} else {
|
||||
char envstr[32];
|
||||
char *envstr;
|
||||
|
||||
snprintf(envstr, sizeof(envstr) - 1, "fastboot.%s", cmd);
|
||||
envstr = malloc(strlen("fastboot.") + strlen(cmd) + 1);
|
||||
if (!envstr) {
|
||||
fastboot_tx_write_str("FAILmalloc error");
|
||||
return;
|
||||
}
|
||||
|
||||
sprintf(envstr, "fastboot.%s", cmd);
|
||||
s = getenv(envstr);
|
||||
if (s) {
|
||||
strncat(response, s, chars_left);
|
||||
@ -442,6 +448,8 @@ static void cb_getvar(struct usb_ep *ep, struct usb_request *req)
|
||||
printf("WARNING: unknown variable: %s\n", cmd);
|
||||
strcpy(response, "FAILVariable not implemented");
|
||||
}
|
||||
|
||||
free(envstr);
|
||||
}
|
||||
fastboot_tx_write_str(response);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user