ia64, ppc: Remove uses of sprintf().
authorKeir Fraser <keir@xensource.com>
Tue, 30 Jan 2007 16:14:16 +0000 (16:14 +0000)
committerKeir Fraser <keir@xensource.com>
Tue, 30 Jan 2007 16:14:16 +0000 (16:14 +0000)
Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
xen/arch/ia64/linux-xen/perfmon.c
xen/arch/ia64/linux-xen/setup.c
xen/arch/ia64/linux-xen/sn/kernel/io_init.c
xen/arch/ia64/linux-xen/unaligned.c
xen/arch/ia64/xen/domain.c
xen/arch/ia64/xen/gdbstub.c
xen/arch/ia64/xen/xensetup.c
xen/arch/powerpc/domain_build.c

index cc776c631ae2d3be416705a494c08759d78f7981..6ee588e26c6757526fd247fc92fb04bec741b77e 100644 (file)
@@ -2305,7 +2305,7 @@ pfm_alloc_fd(struct file **cfile)
        inode->i_uid  = current->fsuid;
        inode->i_gid  = current->fsgid;
 
-       sprintf(name, "[%lu]", inode->i_ino);
+       snprintf(name, sizeof(name), "[%lu]", inode->i_ino);
        this.name = name;
        this.len  = strlen(name);
        this.hash = inode->i_ino;
index 438b331f5c1d759e9e62a33265a46697ca170e7a..548419b9669e8194f47acf682eff8f9c428ffb3c 100644 (file)
@@ -550,7 +550,7 @@ show_cpuinfo (struct seq_file *m, void *v)
        switch (c->family) {
              case 0x07:        memcpy(family, "Itanium", 8); break;
              case 0x1f:        memcpy(family, "Itanium 2", 10); break;
-             default:          sprintf(family, "%u", c->family); break;
+             default:          snprintf(family, sizeof(family), "%u", c->family); break;
        }
 
        /* build the feature string: */
@@ -572,7 +572,7 @@ show_cpuinfo (struct seq_file *m, void *v)
                /* print unknown features as a hex value: */
                if (sep)
                        *cp++ = sep;
-               sprintf(cp, " 0x%lx", mask);
+               snprintf(cp, sizeof(features) - (cp - features), " 0x%lx", mask);
        }
 
        seq_printf(m,
index 3f1f5b7a3c27aa50678019bd5faf41cc4394c5dc..72a3b18f85e328167394eb6906317e0370f10b71 100644 (file)
@@ -754,7 +754,7 @@ void sn_generate_path(struct pci_bus *pci_bus, char *address)
        geoid = cnodeid_get_geoid(cnode);
        moduleid = geo_module(geoid);
 
-       sprintf(address, "module_%c%c%c%c%.2d",
+       snprintf(address, 15, "module_%c%c%c%c%.2d",
                '0'+RACK_GET_CLASS(MODULE_GET_RACK(moduleid)),
                '0'+RACK_GET_GROUP(MODULE_GET_RACK(moduleid)),
                '0'+RACK_GET_NUM(MODULE_GET_RACK(moduleid)),
@@ -764,7 +764,7 @@ void sn_generate_path(struct pci_bus *pci_bus, char *address)
        bricktype = MODULE_GET_BTYPE(moduleid);
        if ((bricktype == L1_BRICKTYPE_191010) ||
            (bricktype == L1_BRICKTYPE_1932))
-                       sprintf(address, "%s^%d", address, geo_slot(geoid));
+                       snprintf(address, 15+8, "%s^%d", address, geo_slot(geoid));
 }
 #endif
 
index 2cf6e806dcfc35d67edf6df46bf2d6a99c8282a1..b56867a5138b8dd889d1b14aa510d940b2259764 100644 (file)
@@ -1792,7 +1792,7 @@ printk("ia64_handle_unaligned: called, not working yet\n");
                        char buf[200];  /* comm[] is at most 16 bytes... */
                        size_t len;
 
-                       len = sprintf(buf, "%s(%d): unaligned access to 0x%016lx, "
+                       len = snprintf(buf, sizeof(buf), "%s(%d): unaligned access to 0x%016lx, "
                                      "ip=0x%016lx\n\r", current->comm, current->pid,
                                      ifa, regs->cr_iip + ipsr->ri);
                        /*
index 275d7a9dc488292b273cffe510338ba2019833b3..e62b259c4b61edd17ea98d27e7bf8a6b1bbc6988 100644 (file)
@@ -1124,7 +1124,7 @@ int construct_dom0(struct domain *d,
                panic("can't allocate start info page");
        si = page_to_virt(start_info_page);
        memset(si, 0, PAGE_SIZE);
-       sprintf(si->magic, "xen-%i.%i-ia64",
+       snprintf(si->magic, sizeof(si->magic), "xen-%i.%i-ia64",
                xen_major_version(), xen_minor_version());
        si->nr_pages     = max_pages;
        si->flags = SIF_INITDOMAIN|SIF_PRIVILEGED;
index 3fc748233ecb0c2a52903cb51d76eb198329ca51..548ec6e51a9dbd25c1a5cf47f2e16333e40146b0 100644 (file)
@@ -289,13 +289,13 @@ gdb_arch_read_reg(unsigned long regnum, struct cpu_user_regs *regs,
        }
 
        dbg_printk("Register read regnum = 0x%lx, val = 0x%lx\n", regnum, reg); 
-       sprintf(buf, "%.08lx", swab64(reg));
+       snprintf(buf, sizeof(buf), "%.08lx", swab64(reg));
 out:
        return gdb_send_reply(buf, ctx);
 
 out_err:
        dbg_printk("Register read unsupported regnum = 0x%lx\n", regnum);
-       sprintf(buf, "%s", "x");
+       safe_strcpy(buf, "x");
        goto out;
 }
 #else
@@ -756,19 +756,19 @@ gdb_arch_read_reg(unsigned long regnum, struct cpu_user_regs *regs,
        if (arg.error > 0) {
                // notify gdb that this register is not supported.
                // see fetch_register_using_p() in gdb/remote.c.
-               sprintf(buf, "%s", "x");
+               safe_strcpy(buf, "x");
        } else if (IA64_FR0_REGNUM <= regnum && regnum <= IA64_FR0_REGNUM + 127) {
-               sprintf(buf, "%.016lx", swab64(freg.u.bits[0]));
-               sprintf(buf + 16, "%.016lx", swab64(freg.u.bits[1]));
+               snprintf(buf, sizeof(buf), "%.016lx", swab64(freg.u.bits[0]));
+               snprintf(buf + 16, sizeof(buf) - 16, "%.016lx", swab64(freg.u.bits[1]));
        } else {
-               sprintf(buf, "%.016lx", swab64(reg));
+               snprintf(buf, sizeof(buf), "%.016lx", swab64(reg));
        }
 out:
        return gdb_send_reply(buf, ctx);
 
 out_err:
        dbg_printk("Register read unsupported regnum = 0x%lx\n", regnum);
-       sprintf(buf, "%s", "E0");
+       safe_strcpy(buf, "E0");
        goto out;
 }
 #endif
index 0d1eaf23dda7de4d397a16b4f3aad95cbf9ab6d4..3692440240c0bbf9ba3930b87655d7f40a4d6b6c 100644 (file)
@@ -551,10 +551,10 @@ void arch_get_xen_caps(xen_capabilities_info_t info)
     int major = xen_major_version();
     int minor = xen_minor_version();
 
-    p += sprintf(p,"xen-%d.%d-ia64 ", major, minor);
+    p += snprintf(p,sizeof(info), "xen-%d.%d-ia64 ", major, minor);
 
     if (vmx_enabled)
-        p += sprintf(p,"hvm-%d.%d-ia64 ", major, minor);
+        p += snprintf(p,sizeof(info) - (p - info),"hvm-%d.%d-ia64 ", major, minor);
 
     *(p-1) = 0;
 
index 26dca89b83c9e63daf0025344e8eca6cc8596861..080c1ab1b6342dddc6929f91b35088bf9d84acb5 100644 (file)
@@ -185,7 +185,7 @@ int construct_dom0(struct domain *d,
     si = (start_info_t *)(rma_addr(&d->arch, RMA_START_INFO) + rma);
     printk("xen_start_info: %p\n", si);
 
-    sprintf(si->magic, "xen-%i.%i-powerpc%d%s",
+    snprintf(si->magic, sizeof(si->magic), "xen-%i.%i-powerpc%d%s",
             xen_major_version(), xen_minor_version(), BITS_PER_LONG, "HV");
     si->flags = SIF_PRIVILEGED | SIF_INITDOMAIN;