- void *(*open)(const char *path);
- long (*size)(void *file);
- void (*close)(void *file);
- void *(*map)(void *file);
- void (*unmap)(void *file);
- long (*read)(void *file, void *buf, long count);
- long (*write)(void *file, void *buf, long count);
+ vi_file *(*open)(const char *path, unsigned int flags);
+ void (*close)(vi_file *file);
+ long (*size)(vi_file *file);
+ void *(*map)(vi_file *file);
+ void (*unmap)(vi_file *file);
+ long (*read)(vi_file *file, void *buf, long count);
+ long (*write)(vi_file *file, void *buf, long count);
+ long (*seek)(vi_file *file, long offs, int whence);