Blob Blame History Raw
--- 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);