aboutsummaryrefslogtreecommitdiffstats
path: root/tools/libxc/xc_dom_boot.c
diff options
context:
space:
mode:
authorKeir Fraser <keir@xensource.com>2007-10-23 14:42:06 +0100
committerKeir Fraser <keir@xensource.com>2007-10-23 14:42:06 +0100
commit093d6da712d5ad5a3f8158bb967cc119c2408aa1 (patch)
treedea5e17c150b6a5cad9833298f53c24289e2e8e7 /tools/libxc/xc_dom_boot.c
parent907e0a6046567e32113433fddea5b55c67961391 (diff)
downloadxen-093d6da712d5ad5a3f8158bb967cc119c2408aa1.tar.gz
xen-093d6da712d5ad5a3f8158bb967cc119c2408aa1.tar.bz2
xen-093d6da712d5ad5a3f8158bb967cc119c2408aa1.zip
libxc: check length on string copy (strcpy -> strncpy).
Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
Diffstat (limited to 'tools/libxc/xc_dom_boot.c')
-rw-r--r--tools/libxc/xc_dom_boot.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/tools/libxc/xc_dom_boot.c b/tools/libxc/xc_dom_boot.c
index e26941f737..30906ee993 100644
--- a/tools/libxc/xc_dom_boot.c
+++ b/tools/libxc/xc_dom_boot.c
@@ -92,7 +92,9 @@ int xc_dom_compat_check(struct xc_dom_image *dom)
char *item, *ptr;
int match, found = 0;
- strcpy(xen_caps, dom->xen_caps);
+ strncpy(xen_caps, dom->xen_caps, XEN_CAPABILITIES_INFO_LEN - 1);
+ xen_caps[XEN_CAPABILITIES_INFO_LEN - 1] = '\0';
+
for ( item = strtok_r(xen_caps, " ", &ptr);
item != NULL ; item = strtok_r(NULL, " ", &ptr) )
{