Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/app/tester/vfs/vfs1.c

    r6118ccaf r2d11a7d8  
    3030#include <stdio.h>
    3131#include <stdlib.h>
    32 #include <str.h>
     32#include <string.h>
    3333#include <vfs/vfs.h>
    3434#include <unistd.h>
     
    4040#include "../tester.h"
    4141
    42 #define TEST_DIRECTORY  "/tmp/testdir"
     42#define FS_TYPE      "tmpfs"
     43#define MOUNT_POINT  "/tmp"
     44#define OPTIONS      ""
     45#define FLAGS        0
     46
     47#define TEST_DIRECTORY  MOUNT_POINT "/testdir"
    4348#define TEST_FILE       TEST_DIRECTORY "/testfile"
    4449#define TEST_FILE2      TEST_DIRECTORY "/nextfile"
     
    4954static char text[] = "Lorem ipsum dolor sit amet, consectetur adipisicing elit";
    5055
    51 static const char *read_root(void)
     56static char *read_root(void)
    5257{
    5358        TPRINTF("Opening the root directory...");
     
    6873}
    6974
    70 const char *test_vfs1(void)
     75char *test_vfs1(void)
    7176{
    72         int rc;
    73         if ((rc = mkdir(TEST_DIRECTORY, 0)) != 0) {
    74                 TPRINTF("rc=%d\n", rc);
     77        if (mkdir(MOUNT_POINT, 0) != 0)
    7578                return "mkdir() failed";
     79        TPRINTF("Created directory %s\n", MOUNT_POINT);
     80       
     81        char null[MAX_DEVICE_NAME];
     82        int null_id = devmap_null_create();
     83       
     84        if (null_id == -1)
     85                return "Unable to create null device";
     86       
     87        snprintf(null, MAX_DEVICE_NAME, "null%d", null_id);
     88        int rc = mount(FS_TYPE, MOUNT_POINT, null, OPTIONS, FLAGS);
     89        switch (rc) {
     90        case EOK:
     91                TPRINTF("Mounted /dev/%s as %s on %s\n", null, FS_TYPE, MOUNT_POINT);
     92                break;
     93        case EBUSY:
     94                TPRINTF("(INFO) Filesystem already mounted on %s\n", MOUNT_POINT);
     95                break;
     96        default:
     97                TPRINTF("(ERR) IPC returned errno %d (is tmpfs loaded?)\n", rc);
     98                return "mount() failed";
    7699        }
     100       
     101        if (mkdir(TEST_DIRECTORY, 0) != 0)
     102                return "mkdir() failed";
    77103        TPRINTF("Created directory %s\n", TEST_DIRECTORY);
    78104       
     
    86112        if (cnt < 0)
    87113                return "write() failed";
    88         TPRINTF("Written %zd bytes\n", cnt);
     114        TPRINTF("Written %d bytes\n", cnt);
    89115       
    90116        if (lseek(fd0, 0, SEEK_SET) != 0)
     
    97123                        return "read() failed";
    98124               
    99                 int _cnt = (int) cnt;
    100                 if (_cnt != cnt) {
    101                         /* Count overflow, just to be sure. */
    102                         TPRINTF("Read %zd bytes\n", cnt);
    103                 } else {
    104                         TPRINTF("Read %zd bytes: \"%.*s\"\n", cnt, _cnt, buf);
    105                 }
     125                TPRINTF("Read %d bytes: \".*s\"\n", cnt, cnt, buf);
    106126        }
    107127       
    108128        close(fd0);
    109129       
    110         const char *rv = read_root();
     130        char *rv = read_root();
    111131        if (rv != NULL)
    112132                return rv;
Note: See TracChangeset for help on using the changeset viewer.