Ignore:
Timestamp:
Aug 18, 2009, 5:28:18 PM (15 years ago)
Author:
Bruno Cornec
Message:

r3369@localhost: bruno | 2009-08-18 16:57:27 +0200

  • Transform bout 100 strcpy in dyn. allocation. Quality is improving
  • function figure_out_kernel_path_interactively_if_necessary now return a dynamically allocated string
  • mondoarchive checked with valgrind in text an newt modes
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2.2.10/mondo/src/common/libmondo-raid.c

    r2324 r2334  
    334334#ifdef __FreeBSD__
    335335    int i, j;
     336    char *org = NULL;
    336337
    337338    fprintf(fout, "\nvolume %s\n", raidrec->volname);
    338339    for (i = 0; i < raidrec->plexes; ++i) {
    339         char org[24];
    340340        switch (raidrec->plex[i].raidlevel) {
    341341        case -1:
    342             strcpy(org, "concat");
     342            mr_asprintf(org, "concat");
    343343            break;
    344344        case 0:
    345             strcpy(org, "striped");
     345            mr_asprintf(org, "striped");
    346346            break;
    347347        case 5:
    348             strcpy(org, "raid5");
     348            mr_asprintf(org, "raid5");
    349349            break;
    350350        }
    351351        fprintf(fout, "  plex org %s", org);
     352        mr_free(org);
     353
    352354        if (raidrec->plex[i].raidlevel != -1) {
    353355            fprintf(fout, " %ik", raidrec->plex[i].stripesize);
     
    356358
    357359        for (j = 0; j < raidrec->plex[i].subdisks; ++j) {
    358             fprintf(fout, "    sd drive %s size 0\n",
    359                     raidrec->plex[i].sd[j].which_device);
     360            fprintf(fout, "    sd drive %s size 0\n", raidrec->plex[i].sd[j].which_device);
    360361        }
    361362    }
     
    501502
    502503            if (get_option_state(argc, argv, "hotspare")) {
    503                 strcpy(raidlist->spares.el[raidlist->spares.entries].name,
    504                        drivename);
    505                 strcpy(raidlist->spares.el[raidlist->spares.entries].
    506                        device, devname);
     504                strcpy(raidlist->spares.el[raidlist->spares.entries].name, drivename);
     505                strcpy(raidlist->spares.el[raidlist->spares.entries].  device, devname);
    507506                raidlist->spares.el[raidlist->spares.entries].index =
    508507                    raidlist->disks.entries;
    509508                raidlist->spares.entries++;
    510509            } else {
    511                 strcpy(raidlist->disks.el[raidlist->disks.entries].name,
    512                        drivename);
    513                 strcpy(raidlist->disks.el[raidlist->disks.entries].device,
    514                        devname);
     510                strcpy(raidlist->disks.el[raidlist->disks.entries].name, drivename);
     511                strcpy(raidlist->disks.el[raidlist->disks.entries].device, devname);
    515512                raidlist->disks.el[raidlist->disks.entries].index =
    516513                    raidlist->disks.entries;
Note: See TracChangeset for help on using the changeset viewer.