inetfs.c File Reference

#include <inet.h>

Defines

#define MAX_INT_SIZE   11

Functions

int is_binary_filename (const char *filename)
static int binary_read (pid_t pid, t_of *of, char *ubuf, size_t usize)
static int binary_write (pid_t pid, t_of *of, char *ubuf, size_t usize)
static int string_read (pid_t pid, t_of *of, char *ubuf, size_t usize)
static int uint32_read (pid_t pid, t_of *of, char *ubuf, size_t usize)
static int uint32_write (pid_t pid, t_of *of, char *ubuf, size_t usize)
int macaddr_read (pid_t pid, struct s_of *of, char *ubuf, size_t usize)
int ipaddr_read (pid_t pid, t_of *of, char *ubuf, size_t usize)
int ipaddr_write (pid_t pid, t_of *of, char *ubuf, size_t usize)
t_entryinetfs_add_entry (t_entry *e_father, const char *e_name, int e_type, void *e_data, void *e_data_bin, size_t e_size, t_change_fun e_change_fun)
int entry_access (t_entry *entry, struct s_ucred *ucred, int how)
int nami (char *path, struct s_ucred *ucred, t_entry **pentry)
static int inetfs_dostat (t_entry *entry, struct stat *st, int bin)
void sysinetfs_close (t_tcb *caller)
void sysinetfs_open (t_tcb *caller)
void sysinetfs_stat (t_tcb *caller)
void sysinetfs_fstat (t_tcb *caller)
void sysinetfs_getdents (t_tcb *caller)
void sysinetfs_read (t_tcb *caller)
void sysinetfs_write (t_tcb *caller)
void sysinetfs_lseek (t_tcb *caller)
static int sysinet_poll_of (struct s_of *of, t_pollrec *pollrec)
void sysinetfs_poll (t_tcb *caller)
void sysinetfs_ioctl (t_tcb *caller)
void sysinetfs_dump (t_tcb *caller)
t_ofinetfs_find_of (u_int32_t fd)

Variables

const t_entry_type_op inetfs_entry_types_op []
t_inetfs_syscall inetfs_syscalls []

Define Documentation

#define MAX_INT_SIZE   11
 


Function Documentation

static int binary_read pid_t  pid,
t_of of,
char *  ubuf,
size_t  usize
[static]
 

static int binary_write pid_t  pid,
t_of of,
char *  ubuf,
size_t  usize
[static]
 

int entry_access t_entry entry,
struct s_ucred ucred,
int  how
 

t_entry* inetfs_add_entry t_entry e_father,
const char *  e_name,
int  e_type,
void *  e_data,
void *  e_data_bin,
size_t  e_size,
t_change_fun  e_change_fun
 

static int inetfs_dostat t_entry entry,
struct stat st,
int  bin
[static]
 

t_of* inetfs_find_of u_int32_t  fd  ) 
 

int ipaddr_read pid_t  pid,
t_of of,
char *  ubuf,
size_t  usize
 

int ipaddr_write pid_t  pid,
t_of of,
char *  ubuf,
size_t  usize
 

int is_binary_filename const char *  filename  ) 
 

int macaddr_read pid_t  pid,
struct s_of of,
char *  ubuf,
size_t  usize
 

int nami char *  path,
struct s_ucred ucred,
t_entry **  pentry
 

static int string_read pid_t  pid,
t_of of,
char *  ubuf,
size_t  usize
[static]
 

static int sysinet_poll_of struct s_of of,
t_pollrec pollrec
[static]
 

void sysinetfs_close t_tcb caller  ) 
 

void sysinetfs_dump t_tcb caller  ) 
 

void sysinetfs_fstat t_tcb caller  ) 
 

void sysinetfs_getdents t_tcb caller  ) 
 

void sysinetfs_ioctl t_tcb caller  ) 
 

void sysinetfs_lseek t_tcb caller  ) 
 

void sysinetfs_open t_tcb caller  ) 
 

void sysinetfs_poll t_tcb caller  ) 
 

void sysinetfs_read t_tcb caller  ) 
 

void sysinetfs_stat t_tcb caller  ) 
 

void sysinetfs_write t_tcb caller  ) 
 

static int uint32_read pid_t  pid,
t_of of,
char *  ubuf,
size_t  usize
[static]
 

static int uint32_write pid_t  pid,
t_of of,
char *  ubuf,
size_t  usize
[static]
 


Variable Documentation

const t_entry_type_op inetfs_entry_types_op[]
 

Initial value:

{
  { ENTRY_TYPE_DIR, NULL, NULL, NULL, NULL },
  { ENTRY_TYPE_ROUTE_DIR, NULL, NULL, route_create_entry, NULL },
  { ENTRY_TYPE_IFACE_DIR, NULL, NULL, iface_create_entry, NULL },

  { ENTRY_TYPE_UINT32, uint32_read, uint32_write, NULL, NULL },
  { ENTRY_TYPE_STRING, string_read, NULL, NULL, NULL },
  { ENTRY_TYPE_IPADDR, ipaddr_read, ipaddr_write, NULL, NULL },
  { ENTRY_TYPE_MACADDR, macaddr_read, NULL, NULL, NULL },
  { ENTRY_TYPE_ROUTE, route_read, route_write, NULL },
  { ENTRY_TYPE_SOCKET_TCP, tcp_inetfs_read, NULL, NULL, NULL },
  { -1, NULL, NULL, NULL, NULL }
}

t_inetfs_syscall inetfs_syscalls[]
 

Initial value:


Generated on Wed May 24 23:06:03 2006 for LSE/OS by  doxygen 1.4.6