view cos/kernel/fs.c @ 160:10330be89bc2

Started from scratch with code edit
author Windel Bouwman
date Sat, 09 Mar 2013 11:56:48 +0100
parents 3a6a9b929db0
children
line wrap: on
line source


#include "kernel.h"

uint64_t read_fs(fs_node_t *node, uint64_t offset, uint64_t size, uint8_t *buffer)
{
   if (node->read != 0)
   {
      return node->read(node, offset, size, buffer);
   }
   else
   {
      return 0;
   }
}

uint64_t write_fs(fs_node_t *node, uint64_t offset, uint64_t size, uint8_t *buffer)
{
   if (node->write != 0)
   {
      return node->write(node, offset, size, buffer);
   }
   else
   {
      return 0;
   }
}

void open_fs(fs_node_t *node)
{
   if (node->open != 0)
   {
      node->open(node);
   }
}

void close_fs(fs_node_t *node)
{
   if (node->close != 0)
   {
      node->close(node);
   }
}

// TODO: why not return an fs_node_t* ?
fs_dirent_t* readdir_fs(fs_node_t *node, int i)
{
   if (node->readdir != 0)
   {
      return node->readdir(node, i);
   }
   else
   {
      return 0;
   }
}