c3c6a82d13
By separating the VFS from Noux, we become able to reuse the VFS for libc-using programs. The most substantial change is the removal of Noux::Sysio data structures from the VFS. Instead, the Noux::Sysio refers to the VFS types now. The new VFS library is located at 'os/include/vfs/'. Furthermore, the patch removes various code duplications related to pseudo file systems that provide a single file (block, zero, random, terminal, null). The new 'Single_file_system' holds the common boilerplate code for those. Issue #999
55 lines
1.2 KiB
C++
55 lines
1.2 KiB
C++
/*
|
|
* \brief Types used by VFS
|
|
* \author Norman Feske
|
|
* \date 2014-04-07
|
|
*/
|
|
|
|
/*
|
|
* Copyright (C) 2014 Genode Labs GmbH
|
|
*
|
|
* This file is part of the Genode OS framework, which is distributed
|
|
* under the terms of the GNU General Public License version 2.
|
|
*/
|
|
|
|
#ifndef _INCLUDE__VFS__TYPES_H_
|
|
#define _INCLUDE__VFS__TYPES_H_
|
|
|
|
#include <util/list.h>
|
|
#include <util/misc_math.h>
|
|
#include <util/xml_node.h>
|
|
#include <util/string.h>
|
|
#include <base/lock.h>
|
|
#include <base/env.h>
|
|
#include <base/signal.h>
|
|
#include <base/printf.h>
|
|
#include <dataspace/client.h>
|
|
#include <os/path.h>
|
|
|
|
namespace Vfs {
|
|
|
|
enum { MAX_PATH_LEN = 512 };
|
|
|
|
using Genode::Ram_dataspace_capability;
|
|
using Genode::Dataspace_capability;
|
|
using Genode::Dataspace_client;
|
|
using Genode::env;
|
|
using Genode::min;
|
|
using Genode::ascii_to;
|
|
using Genode::strncpy;
|
|
using Genode::strcmp;
|
|
using Genode::strlen;
|
|
using Genode::off_t;
|
|
using Genode::memcpy;
|
|
using Genode::memset;
|
|
using Genode::size_t;
|
|
using Genode::Lock;
|
|
using Genode::List;
|
|
using Genode::Xml_node;
|
|
using Genode::Signal_context_capability;
|
|
using Genode::static_cap_cast;
|
|
|
|
typedef Genode::Path<MAX_PATH_LEN> Absolute_path;
|
|
}
|
|
|
|
#endif /* _INCLUDE__VFS__TYPES_H_ */
|