WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-unstable] ia64 and ppc: Remove uses of strcpy and s

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] ia64 and ppc: Remove uses of strcpy and strncpy.
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Tue, 30 Jan 2007 06:00:10 -0800
Delivery-date: Tue, 30 Jan 2007 06:00:07 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User kfraser@xxxxxxxxxxxxxxxxxxxxx
# Date 1170082893 0
# Node ID d2784d93e760ad96ab25cb7cacee491177708ce0
# Parent  bef7fbe25a9f380d40623795befacd447b026837
ia64 and ppc: Remove uses of strcpy and strncpy.
Signed-off-by: Christoph Egger <Christoph.Egger@xxxxxxx>
---
 xen/arch/ia64/linux-xen/setup.c      |    5 +--
 xen/arch/ia64/xen/dom_fw.c           |   49 +++++++++++++++++++----------------
 xen/arch/ia64/xen/domain.c           |    3 --
 xen/arch/ia64/xen/gdbstub.c          |    2 -
 xen/arch/ia64/xen/oprofile/perfmon.c |    2 -
 xen/arch/powerpc/domain_build.c      |    2 -
 xen/arch/powerpc/of-devtree.c        |    3 --
 xen/arch/powerpc/ofd_fixup.c         |    2 -
 8 files changed, 35 insertions(+), 33 deletions(-)

diff -r bef7fbe25a9f -r d2784d93e760 xen/arch/ia64/linux-xen/setup.c
--- a/xen/arch/ia64/linux-xen/setup.c   Mon Jan 29 14:59:42 2007 +0000
+++ b/xen/arch/ia64/linux-xen/setup.c   Mon Jan 29 15:01:33 2007 +0000
@@ -424,8 +424,7 @@ setup_arch (char **cmdline_p)
                        else
                                len = strlen (mvec_name);
                        len = min(len, sizeof (str) - 1);
-                       strncpy (str, mvec_name, len);
-                       str[len] = '\0';
+                       strlcpy (str, mvec_name, len);
                        mvec_name = str;
                } else
                        mvec_name = acpi_get_sysname();
@@ -564,7 +563,7 @@ show_cpuinfo (struct seq_file *m, void *
                                *cp++ = sep;
                        sep = ',';
                        *cp++ = ' ';
-                       strcpy(cp, feature_bits[i].feature_name);
+                       strlcpy(cp, feature_bits[i].feature_name, 
sizeof(features));
                        cp += strlen(feature_bits[i].feature_name);
                        mask &= ~feature_bits[i].mask;
                }
diff -r bef7fbe25a9f -r d2784d93e760 xen/arch/ia64/xen/dom_fw.c
--- a/xen/arch/ia64/xen/dom_fw.c        Mon Jan 29 14:59:42 2007 +0000
+++ b/xen/arch/ia64/xen/dom_fw.c        Mon Jan 29 15:01:33 2007 +0000
@@ -333,13 +333,13 @@ dom_fw_fake_acpi(struct domain *d, struc
        memset(tables, 0, sizeof(struct fake_acpi_tables));
 
        /* setup XSDT (64bit version of RSDT) */
-       strncpy(xsdt->signature, XSDT_SIG, 4);
+       strlcpy(xsdt->signature, XSDT_SIG, sizeof(xsdt->signature));
        /* XSDT points to both the FADT and the MADT, so add one entry */
        xsdt->length = sizeof(struct xsdt_descriptor_rev2) + sizeof(u64);
        xsdt->revision = 1;
-       strcpy(xsdt->oem_id, "XEN");
-       strcpy(xsdt->oem_table_id, "Xen/ia64");
-       strcpy(xsdt->asl_compiler_id, "XEN");
+       strlcpy(xsdt->oem_id, "XEN", sizeof(xsdt->oem_id));
+       strlcpy(xsdt->oem_table_id, "Xen/ia64", sizeof(xsdt->oem_table_id));
+       strlcpy(xsdt->asl_compiler_id, "XEN", sizeof(xsdt->asl_compiler_id));
        xsdt->asl_compiler_revision = (xen_major_version() << 16) |
                xen_minor_version();
 
@@ -349,16 +349,16 @@ dom_fw_fake_acpi(struct domain *d, struc
        xsdt->checksum = generate_acpi_checksum(xsdt, xsdt->length);
 
        /* setup FADT */
-       strncpy(fadt->signature, FADT_SIG, 4);
+       strlcpy(fadt->signature, FADT_SIG, sizeof(fadt->signature));
        fadt->length = sizeof(struct fadt_descriptor_rev2);
        fadt->revision = FADT2_REVISION_ID;
-       strcpy(fadt->oem_id, "XEN");
-       strcpy(fadt->oem_table_id, "Xen/ia64");
-       strcpy(fadt->asl_compiler_id, "XEN");
+       strlcpy(fadt->oem_id, "XEN", sizeof(fadt->oem_id));
+       strlcpy(fadt->oem_table_id, "Xen/ia64", sizeof(fadt->oem_table_id));
+       strlcpy(fadt->asl_compiler_id, "XEN", sizeof(fadt->asl_compiler_id));
        fadt->asl_compiler_revision = (xen_major_version() << 16) |
                xen_minor_version();
 
-       strncpy(facs->signature, FACS_SIG, 4);
+       strlcpy(facs->signature, FACS_SIG, sizeof(facs->signature));
        facs->version = 1;
        facs->length = sizeof(struct facs_descriptor_rev2);
 
@@ -386,8 +386,8 @@ dom_fw_fake_acpi(struct domain *d, struc
        fadt->checksum = generate_acpi_checksum(fadt, fadt->length);
 
        /* setup RSDP */
-       strncpy(rsdp->signature, RSDP_SIG, 8);
-       strcpy(rsdp->oem_id, "XEN");
+       strlcpy(rsdp->signature, RSDP_SIG, sizeof(rsdp->signature));
+       strlcpy(rsdp->oem_id, "XEN", sizeof(rsdp->oem_id));
        rsdp->revision = 2; /* ACPI 2.0 includes XSDT */
        rsdp->length = sizeof(struct acpi20_table_rsdp);
        rsdp->xsdt_address = ACPI_TABLE_MPA(xsdt);
@@ -397,11 +397,11 @@ dom_fw_fake_acpi(struct domain *d, struc
        rsdp->ext_checksum = generate_acpi_checksum(rsdp, rsdp->length);
 
        /* setup DSDT with trivial namespace. */ 
-       strncpy(dsdt->signature, DSDT_SIG, 4);
+       strlcpy(dsdt->signature, DSDT_SIG, sizeof(dsdt->signature));
        dsdt->revision = 1;
-       strcpy(dsdt->oem_id, "XEN");
-       strcpy(dsdt->oem_table_id, "Xen/ia64");
-       strcpy(dsdt->asl_compiler_id, "XEN");
+       strlcpy(dsdt->oem_id, "XEN", sizeof(dsdt->oem_id));
+       strlcpy(dsdt->oem_table_id, "Xen/ia64", sizeof(dsdt->oem_table_id));
+       strlcpy(dsdt->asl_compiler_id, "XEN", sizeof(dsdt->asl_compiler_id));
        dsdt->asl_compiler_revision = (xen_major_version() << 16) |
                xen_minor_version();
 
@@ -409,7 +409,7 @@ dom_fw_fake_acpi(struct domain *d, struc
        tables->aml[0] = 0x10; /* Scope */
        tables->aml[1] = 0x40; /* length/offset to next object (patched) */
        tables->aml[2] = 0x00;
-       strncpy((char *)&tables->aml[3], "_SB_", 4);
+       strlcpy((char *)&tables->aml[3], "_SB_", 5);
 
        /* The processor object isn't absolutely necessary, revist for SMP */
        aml_len = 7;
@@ -437,11 +437,14 @@ dom_fw_fake_acpi(struct domain *d, struc
        dsdt->checksum = generate_acpi_checksum(dsdt, dsdt->length);
 
        /* setup MADT */
-       strncpy(madt->header.signature, APIC_SIG, 4);
+       strlcpy(madt->header.signature, APIC_SIG, 
sizeof(madt->header.signature));
        madt->header.revision = 2;
-       strcpy(madt->header.oem_id, "XEN");
-       strcpy(madt->header.oem_table_id, "Xen/ia64");
-       strcpy(madt->header.asl_compiler_id, "XEN");
+       strlcpy(madt->header.oem_id, "XEN",
+               sizeof(madt->header.oem_id));
+       strlcpy(madt->header.oem_table_id, "Xen/ia64",
+               sizeof(madt->header.oem_table_id));
+       strlcpy(madt->header.asl_compiler_id, "XEN",
+               sizeof(madt->header.asl_compiler_id));
        madt->header.asl_compiler_revision = (xen_major_version() << 16) |
                xen_minor_version();
 
@@ -760,8 +763,10 @@ dom_fw_init(struct domain *d,
        tables->sal_systab.sal_rev_major = 0;
        tables->sal_systab.entry_count = 2;
 
-       strcpy((char *)tables->sal_systab.oem_id, "Xen/ia64");
-       strcpy((char *)tables->sal_systab.product_id, "Xen/ia64");
+       strlcpy((char *)tables->sal_systab.oem_id, "Xen/ia64",
+               sizeof(tables->sal_systab.oem_id));
+       strlcpy((char *)tables->sal_systab.product_id, "Xen/ia64",
+               sizeof(tables->sal_systab.product_id));
 
        /* PAL entry point: */
        tables->sal_ed.type = SAL_DESC_ENTRY_POINT;
diff -r bef7fbe25a9f -r d2784d93e760 xen/arch/ia64/xen/domain.c
--- a/xen/arch/ia64/xen/domain.c        Mon Jan 29 14:59:42 2007 +0000
+++ b/xen/arch/ia64/xen/domain.c        Mon Jan 29 15:01:33 2007 +0000
@@ -1148,8 +1148,7 @@ int construct_dom0(struct domain *d,
        dom_fw_setup(d, bp_mpa, max_pages * PAGE_SIZE);
 
        /* Fill boot param.  */
-       strncpy((char *)si->cmd_line, dom0_command_line, sizeof(si->cmd_line));
-       si->cmd_line[sizeof(si->cmd_line)-1] = 0;
+       strlcpy((char *)si->cmd_line, dom0_command_line, sizeof(si->cmd_line));
 
        bp = (struct ia64_boot_param *)((unsigned char *)si +
                                        sizeof(start_info_t));
diff -r bef7fbe25a9f -r d2784d93e760 xen/arch/ia64/xen/gdbstub.c
--- a/xen/arch/ia64/xen/gdbstub.c       Mon Jan 29 14:59:42 2007 +0000
+++ b/xen/arch/ia64/xen/gdbstub.c       Mon Jan 29 15:01:33 2007 +0000
@@ -639,7 +639,7 @@ kgdb_get_reg(int regnum, struct unw_fram
                outbuffer[size*2] = 0;
        }
        else
-               strcpy(outbuffer, "E0");
+               strlcpy(outbuffer, "E0", sizeof("E0"));
 
        return;
 #else
diff -r bef7fbe25a9f -r d2784d93e760 xen/arch/ia64/xen/oprofile/perfmon.c
--- a/xen/arch/ia64/xen/oprofile/perfmon.c      Mon Jan 29 14:59:42 2007 +0000
+++ b/xen/arch/ia64/xen/oprofile/perfmon.c      Mon Jan 29 15:01:33 2007 +0000
@@ -119,7 +119,7 @@ xenoprof_arch_init(int *num_events, int 
 xenoprof_arch_init(int *num_events, int *is_primary, char *cpu_type)
 {
     *num_events = 0;
-    strncpy(cpu_type, get_cpu_type(), XENOPROF_CPU_TYPE_SIZE - 1);
+    strlcpy(cpu_type, get_cpu_type(), XENOPROF_CPU_TYPE_SIZE);
     cpu_type[XENOPROF_CPU_TYPE_SIZE - 1] = '\0';
 
     *is_primary = 0;
diff -r bef7fbe25a9f -r d2784d93e760 xen/arch/powerpc/domain_build.c
--- a/xen/arch/powerpc/domain_build.c   Mon Jan 29 14:59:42 2007 +0000
+++ b/xen/arch/powerpc/domain_build.c   Mon Jan 29 15:01:33 2007 +0000
@@ -290,7 +290,7 @@ int construct_dom0(struct domain *d,
 
     memset(si->cmd_line, 0, sizeof(si->cmd_line));
     if ( cmdline != NULL )
-        strncpy((char *)si->cmd_line, cmdline, sizeof(si->cmd_line)-1);
+        strlcpy((char *)si->cmd_line, cmdline, sizeof(si->cmd_line));
 
     v->arch.ctxt.msr = msr;
     v->arch.ctxt.pc = pc;
diff -r bef7fbe25a9f -r d2784d93e760 xen/arch/powerpc/of-devtree.c
--- a/xen/arch/powerpc/of-devtree.c     Mon Jan 29 14:59:42 2007 +0000
+++ b/xen/arch/powerpc/of-devtree.c     Mon Jan 29 15:01:33 2007 +0000
@@ -358,8 +358,7 @@ static ofdn_t ofd_node_create(
     n->on_io = 0;
     n->on_pathlen = pathlen;
     n->on_last = ofd_pathsplit_left(path, '/', pathlen);
-    strncpy(n->on_path, path, pathlen);
-    n->on_path[n->on_pathlen] = 0;
+    strlcpy(n->on_path, path, pathlen);
 
     return pos;
 }
diff -r bef7fbe25a9f -r d2784d93e760 xen/arch/powerpc/ofd_fixup.c
--- a/xen/arch/powerpc/ofd_fixup.c      Mon Jan 29 14:59:42 2007 +0000
+++ b/xen/arch/powerpc/ofd_fixup.c      Mon Jan 29 15:01:33 2007 +0000
@@ -267,7 +267,7 @@ static ofdn_t ofd_chosen_props(void *m, 
                      &path[1], sizeof (path) - 1);
     }
 
-    strcpy(bootargs, cmdline);
+    strlcpy(bootargs, cmdline, sizeof(bootargs));
     bsz = strlen(bootargs) + 1;
     rm = sizeof (bootargs) - bsz;
 

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] ia64 and ppc: Remove uses of strcpy and strncpy., Xen patchbot-unstable <=