Revision d5249393 block.c

b/block.c
71 71
    return drv->bdrv_create(filename, size_in_sectors, backing_file, flags);
72 72
}
73 73

  
74
/* XXX: race condition possible */
74
#ifdef _WIN32
75
static void get_tmp_filename(char *filename, int size)
76
{
77
    /* XXX: find a better function */
78
    tmpnam(filename);
79
}
80
#else
75 81
static void get_tmp_filename(char *filename, int size)
76 82
{
77 83
    int fd;
84
    /* XXX: race condition possible */
78 85
    pstrcpy(filename, size, "/tmp/vl.XXXXXX");
79 86
    fd = mkstemp(filename);
80 87
    close(fd);
81 88
}
89
#endif
82 90

  
83 91
static BlockDriver *find_image_format(const char *filename)
84 92
{
......
514 522
            return -1;
515 523
        bs->read_only = 1;
516 524
    }
517
    size = lseek64(fd, 0, SEEK_END);
525
    size = lseek(fd, 0, SEEK_END);
518 526
    bs->total_sectors = size / 512;
519 527
    s->fd = fd;
520 528
    return 0;
......
526 534
    BDRVRawState *s = bs->opaque;
527 535
    int ret;
528 536
    
529
    lseek64(s->fd, sector_num * 512, SEEK_SET);
537
    lseek(s->fd, sector_num * 512, SEEK_SET);
530 538
    ret = read(s->fd, buf, nb_sectors * 512);
531 539
    if (ret != nb_sectors * 512) 
532 540
        return -1;
......
539 547
    BDRVRawState *s = bs->opaque;
540 548
    int ret;
541 549
    
542
    lseek64(s->fd, sector_num * 512, SEEK_SET);
550
    lseek(s->fd, sector_num * 512, SEEK_SET);
543 551
    ret = write(s->fd, buf, nb_sectors * 512);
544 552
    if (ret != nb_sectors * 512) 
545 553
        return -1;
......
564 572
              0644);
565 573
    if (fd < 0)
566 574
        return -EIO;
567
    ftruncate64(fd, total_size * 512);
575
    ftruncate(fd, total_size * 512);
568 576
    close(fd);
569 577
    return 0;
570 578
}

Also available in: Unified diff