xenpmd: Adjust strncat() length to avoid static buffer overflow.
authorKeir Fraser <keir.fraser@citrix.com>
Tue, 2 Dec 2008 22:17:22 +0000 (22:17 +0000)
committerKeir Fraser <keir.fraser@citrix.com>
Tue, 2 Dec 2008 22:17:22 +0000 (22:17 +0000)
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
tools/xenpmd/xenpmd.c

index 0dcf36561974b805a47ae977b4bc6ed68d22e92c..c98e898316ed7cfbf0990914bc7102706cfa8833 100644 (file)
@@ -373,7 +373,7 @@ void write_battery_info_to_xenstore(struct battery_info *info)
              (unsigned int)strlen(info->serial_number), info->serial_number,
              (unsigned int)strlen(info->battery_type), info->battery_type,
              (unsigned int)strlen(info->oem_info), info->oem_info);
-    strncat(val+73, string_info, 1024);
+    strncat(val+73, string_info, 1024-73-1);
     xs_write(xs, XBT_NULL, "/pm/bif", 
              val, 73+8+strlen(info->model_number)+strlen(info->serial_number)+
              strlen(info->battery_type)+strlen(info->oem_info)+1);