Ignore:
Timestamp:
Jun 3, 2009, 7:10:19 PM (15 years ago)
Author:
Bruno Cornec
Message:

r3089@localhost: bruno | 2009-05-18 06:41:05 +0200

  • move call to asprintf to call to mr_asprintf (suppress a compiler warning)
  • remove all the most obvious bad call to strcat and replace by mr_strcat as appropriate
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2.2.9/mondo/src/common/libmondo-devices.c

    r2205 r2211  
    99
    1010#include "my-stuff.h"
     11#include "mr_mem.h"
    1112#include "mondostructures.h"
    1213#include "libmondo-files-EXT.h"
     
    327328    char *program;
    328329    char *incoming;
    329     char *searchstr;
     330    char *searchstr = NULL;
    330331    char *tmp;
    331332
     
    10401041bool is_this_a_valid_disk_format(char *format)
    10411042{
    1042     char *good_formats;
     1043    char *good_formats = NULL;
    10431044    char *command;
    10441045    char *format_sz;
     
    12881289{
    12891290    /*@ buffer ****************************************************** */
    1290     char *command;
    1291     char *dev;
    1292     char *options;
     1291    char *command = NULL;
    12931292    int retval;
    12941293
    1295     malloc_string(command);
    1296     malloc_string(dev);
    1297     malloc_string(options);
    12981294    assert_string_is_neither_NULL_nor_zerolength(device);
    12991295    assert_string_is_neither_NULL_nor_zerolength(mountpoint);
    13001296
    13011297    make_hole_for_dir(mountpoint);
    1302     strcpy(options, "ro");
     1298
     1299#ifndef __FreeBSD__
     1300    char *dev = NULL;
     1301    char *options = NULL;
     1302    mr_asprintf(&options, "ro");
     1303#endif
     1304
    13031305    if (isdigit(device[0])) {
    13041306        find_cdrom_device(device, FALSE);
    1305     } else {
    1306         strcpy(dev, device);
    13071307    }
    13081308    if (g_ISO_restore_mode) {
    13091309
    13101310#ifdef __FreeBSD__
    1311         strcpy(dev, make_vn(device));
     1311        mr_asprintf(&dev, make_vn(device));
    13121312        if (!dev) {
    1313             sprintf(command, "Unable to mount ISO (make_vn(%s) failed)",
    1314                     device);
     1313            mr_asprintf(&command, "Unable to mount ISO (make_vn(%s) failed)", device);
    13151314            fatal_error(command);
    13161315        }
    13171316        strcpy(device, dev);
     1317        paranoid_free(dev);
    13181318#else
    1319         strcat(options, ",loop");
     1319        mr_strcat(options, ",loop");
    13201320#endif
    13211321
     
    13261326
    13271327#ifdef __FreeBSD__
    1328     sprintf(command, "mount_cd9660 -r %s %s 2>> %s",
     1328    mr_asprintf(&command, "mount_cd9660 -r %s %s 2>> %s",
    13291329            device, mountpoint, MONDO_LOGFILE);
    13301330
    13311331#else
    1332     sprintf(command, "mount %s -o %s -t iso9660 %s 2>> %s",
     1332    mr_asprintf(&command, "mount %s -o %s -t iso9660 %s 2>> %s",
    13331333            device, options, mountpoint, MONDO_LOGFILE);
     1334    paranoid_free(options);
    13341335#endif
    13351336
     
    13401341    retval = system(command);
    13411342    log_msg(1, "system(%s) returned %d", command, retval);
    1342 
    13431343    paranoid_free(command);
    1344     paranoid_free(dev);
    1345     paranoid_free(options);
     1344
    13461345    return (retval);
    13471346}
     
    21832182void sensibly_set_tmpdir_and_scratchdir()
    21842183{
    2185     char *tmp, *command, *sz;
    2186 
    2187     malloc_string(tmp);
     2184    char *tmp = NULL;
     2185    char *command, *sz;
     2186
    21882187    malloc_string(command);
    21892188    malloc_string(sz);
     
    21912190
    21922191#ifdef __FreeBSD__
    2193     strcpy(tmp,
     2192    mr_asprintf(&tmp,
    21942193           call_program_and_get_last_line_of_output
    21952194           ("LANGUAGE=C df -m -P -t nonfs,msdosfs,ntfs,ntfs-3g,smbfs,smb,cifs,afs,gfs,ocfs,ocfs2,mvfs,nsspool,nssvol | tr -s '\t' ' ' | grep -vE \"none|Filesystem\" | awk '{printf \"%s %s\\n\", $4, $6;}' | sort -n | tail -n1 | awk '{print $NF;}'"));
    21962195#else
    2197     strcpy(tmp,
     2196    mr_asprintf(&tmp,
    21982197           call_program_and_get_last_line_of_output
    21992198           ("LANGUAGE=C df -m -P -x nfs -x nfs4 -x vfat -x ntfs -x ntfs-3g -x smbfs -x smb -x cifs -x afs -x gfs -x ocfs -x ocfs2 -x mvfs -x nsspool -x nssvol -x iso9660| sed 's/                  /devdev/' | tr -s '\t' ' ' | grep -vE \"none|Filesystem|/dev/shm\" | awk '{printf \"%s %s\\n\", $4, $6;}' | sort -n | tail -n1 | awk '{print $NF;}'"));
     
    22022201    if (tmp[0] != '/') {
    22032202        strcpy(sz, tmp);
    2204         strcpy(tmp, "/");
    2205         strcat(tmp, sz);
     2203        paranoid_free(tmp);
     2204        mr_asprintf(&tmp, "/%s", sz);
    22062205    }
    22072206    if (!tmp[0]) {
     
    22162215
    22172216    sprintf(command, "rm -Rf %s/tmp.mondo.* %s/mondo.scratch.*", tmp, tmp);
     2217    paranoid_free(tmp);
     2218
    22182219    paranoid_system(command);
    2219     paranoid_free(tmp);
    22202220    paranoid_free(command);
    22212221    paranoid_free(sz);
     
    22822282{
    22832283    int cd_number = -1;
    2284     char *mountdev;
    2285     char *tmp;
    2286 
    2287     malloc_string(mountdev);
    2288     malloc_string(tmp);
     2284    char *mountdev = NULL;
     2285    char *tmp = NULL;
     2286
    22892287    assert(bkpinfo != NULL);
    22902288//  log_it("Asking what_number_cd_is_this");
    22912289    if (g_ISO_restore_mode) {
    2292         sprintf(tmp, "mount | grep iso9660 | awk '{print $3;}'");
    2293 //      log_it("tmp = %s", tmp);
    2294 
    2295         strcpy(mountdev, call_program_and_get_last_line_of_output(tmp));
    2296         strcat(mountdev, "/archives/THIS-CD-NUMBER");
    2297 //      log_it("mountdev = %s", mountdev);
     2290        mr_asprintf(&tmp, "mount | grep iso9660 | awk '{print $3;}'");
     2291
     2292        mr_asprintf(&mountdev, "%s%s", call_program_and_get_last_line_of_output(tmp), "/archives/THIS-CD-NUMBER");
    22982293        cd_number = atoi(last_line_of_file(mountdev));
    2299 //      log_it("cd_number = %d", cd_number);
    23002294        paranoid_free(mountdev);
    23012295        paranoid_free(tmp);
     2296
    23022297        return (cd_number);
    23032298    }
    23042299
    2305     strcpy(mountdev, bkpinfo->media_device);
     2300    mr_asprintf(&mountdev, bkpinfo->media_device);
    23062301    if (!mountdev[0]) {
    23072302        log_it
     
    23162311        }
    23172312    }
    2318     cd_number =
    2319         atoi(last_line_of_file(MNT_CDROM "/archives/THIS-CD-NUMBER"));
    2320 //  log_it("cd_number..later.. = %d", cd_number);
    23212313    paranoid_free(mountdev);
    2322     paranoid_free(tmp);
     2314
     2315    cd_number = atoi(last_line_of_file(MNT_CDROM "/archives/THIS-CD-NUMBER"));
    23232316    return (cd_number);
    23242317}
Note: See TracChangeset for help on using the changeset viewer.