--- xen-4.10.0/tools/libxc/xc_pm.c.orig 2017-12-13 11:37:59.000000000 +0000
+++ xen-4.10.0/tools/libxc/xc_pm.c 2018-02-10 21:33:02.116856335 +0000
@@ -305,7 +305,7 @@
sysctl.cmd = XEN_SYSCTL_pm_op;
sysctl.u.pm_op.cmd = SET_CPUFREQ_GOV;
sysctl.u.pm_op.cpuid = cpuid;
- strncpy(scaling_governor, govname, CPUFREQ_NAME_LEN);
+ strncpy(scaling_governor, govname, CPUFREQ_NAME_LEN - 1);
scaling_governor[CPUFREQ_NAME_LEN - 1] = '\0';
return xc_sysctl(xch, &sysctl);
--- xen-4.10.0/tools/misc/xenperf.c.orig 2017-12-13 11:37:59.000000000 +0000
+++ xen-4.10.0/tools/misc/xenperf.c 2018-02-10 21:46:09.154694376 +0000
@@ -176,7 +176,7 @@
continue;
if ( (j < 64) && hypercall_name_table[j] )
strncpy(hypercall_name, hypercall_name_table[j],
- sizeof(hypercall_name));
+ sizeof(hypercall_name)-1);
else
snprintf(hypercall_name, sizeof(hypercall_name), "[%d]", j);
hypercall_name[sizeof(hypercall_name)-1]='\0';
--- xen-4.10.0/tools/misc/xen-lowmemd.c.orig 2017-12-13 11:37:59.000000000 +0000
+++ xen-4.10.0/tools/misc/xen-lowmemd.c 2018-02-10 22:12:45.366114605 +0000
@@ -41,7 +41,7 @@
xc_dominfo_t dom0_info;
xc_physinfo_t info;
unsigned long long free_pages, dom0_pages, diff, dom0_target;
- char data[BUFSZ], error[BUFSZ];
+ char data[BUFSZ], error[BUFSZ + 36];
if (xc_physinfo(xch, &info) < 0)
{
@@ -77,7 +77,7 @@
if (!xs_write(xs_handle, XBT_NULL,
"/local/domain/0/memory/target", data, strlen(data)))
{
- snprintf(error, BUFSZ,"Failed to write target %s to xenstore", data);
+ snprintf(error, BUFSZ + 36,"Failed to write target %s to xenstore", data);
perror(error);
}
}
--- xen-4.10.0/tools/xenpmd/xenpmd.c.orig 2017-12-13 11:37:59.000000000 +0000
+++ xen-4.10.0/tools/xenpmd/xenpmd.c 2018-02-10 23:02:16.162049075 +0000
@@ -186,25 +186,25 @@
if ( strstr(attrib_name, "model number") )
{
- strncpy(info->model_number, attrib_value, 32);
+ strncpy(info->model_number, attrib_value, 31);
return;
}
if ( strstr(attrib_name, "serial number") )
{
- strncpy(info->serial_number, attrib_value, 32);
+ strncpy(info->serial_number, attrib_value, 31);
return;
}
if ( strstr(attrib_name, "battery type") )
{
- strncpy(info->battery_type, attrib_value, 32);
+ strncpy(info->battery_type, attrib_value, 31);
return;
}
if ( strstr(attrib_name, "OEM info") )
{
- strncpy(info->oem_info, attrib_value, 32);
+ strncpy(info->oem_info, attrib_value, 31);
return;
}
--- xen-4.10.0/tools/debugger/gdbsx/gx/gx_main.c.orig 2017-12-13 11:37:59.000000000 +0000
+++ xen-4.10.0/tools/debugger/gdbsx/gx/gx_main.c 2018-02-10 23:39:39.211459635 +0000
@@ -382,7 +382,7 @@
/* TBD: check if we stopped because of watchpoint */
if (watchpoint_stop()) {
- strncpy(buf, "watch:", 6);
+ strncpy(buf, "watch:", 7);
buf += 6;
/* TBD: **/
}
--- xen-4.10.0/tools/ocaml/libs/xc/xenctrl_stubs.c.orig 2018-02-22 19:09:08.609546441 +0000
+++ xen-4.10.0/tools/ocaml/libs/xc/xenctrl_stubs.c 2018-02-22 19:24:25.622166925 +0000
@@ -54,7 +54,7 @@
static void Noreturn failwith_xc(xc_interface *xch)
{
- char error_str[1028];
+ char error_str[1029];
if (xch) {
const xc_error *error = xc_get_last_error(xch);
if (error->code == XC_ERROR_NONE)
--- xen-4.10.0/tools/libxl/libxl_arm_acpi.c.orig 2017-12-13 11:37:59.000000000 +0000
+++ xen-4.10.0/tools/libxl/libxl_arm_acpi.c 2018-02-28 12:37:08.887221211 +0000
@@ -190,7 +190,7 @@
struct acpi_table_rsdp *rsdp = (void *)dom->acpi_modules[0].data + offset;
memcpy(rsdp->signature, "RSD PTR ", sizeof(rsdp->signature));
- memcpy(rsdp->oem_id, ACPI_OEM_ID, sizeof(rsdp->oem_id));
+ memcpy(rsdp->oem_id, ACPI_OEM_ID, sizeof(ACPI_OEM_ID));
rsdp->length = acpitables[RSDP].size;
rsdp->revision = 0x02;
rsdp->xsdt_physical_address = acpitables[XSDT].addr;
@@ -205,11 +205,11 @@
memcpy(h->signature, sig, 4);
h->length = len;
h->revision = rev;
- memcpy(h->oem_id, ACPI_OEM_ID, sizeof(h->oem_id));
- memcpy(h->oem_table_id, ACPI_OEM_TABLE_ID, sizeof(h->oem_table_id));
+ memcpy(h->oem_id, ACPI_OEM_ID, sizeof(ACPI_OEM_ID));
+ memcpy(h->oem_table_id, ACPI_OEM_TABLE_ID, sizeof(ACPI_OEM_TABLE_ID));
h->oem_revision = 0;
memcpy(h->asl_compiler_id, ACPI_ASL_COMPILER_ID,
- sizeof(h->asl_compiler_id));
+ sizeof(ACPI_ASL_COMPILER_ID));
h->asl_compiler_revision = 0;
h->checksum = 0;
}
--- xen-4.10.0/tools/xenpmd/xenpmd.c.orig 2018-02-28 16:18:50.377726049 +0000
+++ xen-4.10.0/tools/xenpmd/xenpmd.c 2018-02-28 16:20:31.502426829 +0000
@@ -352,7 +352,7 @@
strlen(info->model_number) +
strlen(info->serial_number) +
strlen(info->battery_type) +
- strlen(info->oem_info) + 4));
+ strlen(info->oem_info) + 4) & 0xff);
write_ulong_lsb_first(val+2, info->present);
write_ulong_lsb_first(val+10, info->design_capacity);
write_ulong_lsb_first(val+18, info->last_full_capacity);