![]()  | 
  
    RTEMS
    5.1
    
   | 
 
NFS Client Implementation for RTEMS. More...
#include <rtems.h>#include <rtems/libio.h>#include <rtems/libio_.h>#include <rtems/seterr.h>#include <rtems/thread.h>#include <string.h>#include <stdio.h>#include <stdint.h>#include <stdlib.h>#include <assert.h>#include <sys/stat.h>#include <dirent.h>#include <netdb.h>#include <ctype.h>#include <netinet/in.h>#include <arpa/inet.h>#include "../proto/nfs_prot.h"#include "../proto/mount_prot.h"#include "rpcio.h"#include "librtemsNfs.h"Data Structures | |
| struct | strbuf | 
| struct | readlinkres_strbuf | 
| struct | DirInfoRec_ | 
| struct | serporidok | 
| struct | serporid | 
| struct | NfsRec_ | 
| struct | NfsNodeRec_ | 
| struct | nfsstats | 
| struct | ResolvePathArgRec_ | 
Macros | |
| #define | CONFIG_AVG_NAMLEN 10 | 
| #define | CONFIG_NFS_SMALL_XACT_SIZE 800 /* size of RPC arguments for non-write ops */ | 
| #define | CONFIG_ATTR_LIFETIME 10/*secs*/ | 
| #define | DEFAULT_NFS_ST_BLKSIZE NFS_MAXDATA | 
| #define | CONFIG_NFS_BIG_XACT_SIZE UDPMSGSIZE /* dont change this */ | 
| #define | NFSCALL_TIMEOUT (&_nfscalltimeout) | 
| #define | MNTCALL_TIMEOUT (&_nfscalltimeout) | 
| #define | DELIM '/' | 
| #define | HOSTDELIM ':' | 
| #define | UPDIR ".." | 
| #define | UIDSEP '@' | 
| #define | NFS_VERSION_2 NFS_VERSION | 
| #define | NFS_MAJOR (nfsGlob.nfs_major) | 
| #define | NFS_MAKE_DEV_T_INO_HACK(node) | 
| #define | NFS_MAKE_DEV_T(node) | 
| #define | DIRENT_HEADER_SIZE | 
| #define | DEBUG_COUNT_NODES (1<<0) | 
| #define | DEBUG_TRACK_NODES (1<<1) | 
| #define | DEBUG_EVALPATH (1<<2) | 
| #define | DEBUG_READDIR (1<<3) | 
| #define | DEBUG_SYSCALLS (1<<4) | 
| #define | STATIC static | 
| #define | LOCK(s) rtems_recursive_mutex_lock(&(s)) | 
| #define | UNLOCK(s) rtems_recursive_mutex_unlock(&(s)) | 
| #define | NFS_GLOBAL_ACQUIRE(lock_context) rtems_interrupt_lock_acquire(&nfs_global_lock, lock_context) | 
| #define | NFS_GLOBAL_RELEASE(lock_context) rtems_interrupt_lock_release(&nfs_global_lock, lock_context) | 
| #define | SERP_ARGS(node) ((node)->serporid.serporid_u.serporid.arg_u) | 
| #define | SERP_ATTR(node) ((node)->serporid.serporid_u.serporid.attributes) | 
| #define | SERP_FILE(node) ((node)->serporid.serporid_u.serporid.file) | 
| #define | READ_LONG_IS_ATOMIC | 
| #define | SATTR_MODE (1<<0) | 
| #define | SATTR_UID (1<<1) | 
| #define | SATTR_GID (1<<2) | 
| #define | SATTR_SIZE (1<<3) | 
| #define | SATTR_ATIME (1<<4) | 
| #define | SATTR_TOUCHA (1<<5) | 
| #define | SATTR_MTIME (1<<6) | 
| #define | SATTR_TOUCHM (1<<7) | 
| #define | SATTR_TOUCH (SATTR_TOUCHM | SATTR_TOUCHA) | 
Typedefs | |
| typedef struct strbuf | strbuf | 
| typedef struct readlinkres_strbuf | readlinkres_strbuf | 
| typedef struct DirInfoRec_ | DirInfoRec | 
| typedef struct DirInfoRec_ * | DirInfo | 
| typedef struct serporidok | serporidok | 
| typedef struct serporid | serporid | 
| typedef uint32_t | TimeStamp | 
| typedef struct NfsRec_ | NfsRec | 
| typedef struct NfsRec_ * | Nfs | 
| typedef struct NfsNodeRec_ | NfsNodeRec | 
| typedef struct NfsNodeRec_ * | NfsNode | 
| typedef struct ResolvePathArgRec_ | ResolvePathArgRec | 
| typedef struct ResolvePathArgRec_ * | ResolvePathArg | 
Functions | |
| int | nfsMountsShow (FILE *) | 
| rtems_status_code | rtems_filesystem_resolve_location (char *buf, int len, rtems_filesystem_location_info_t *loc) | 
| int | nfsInit (int smallPoolDepth, int bigPoolDepth) | 
| int | nfsCleanup (void) | 
| STATIC int | nfscall (RpcUdpServer srvr, int proc, xdrproc_t xargs, void *pargs, xdrproc_t xres, void *pres) | 
| int | rtems_nfs_initialize (rtems_filesystem_mount_table_entry_t *mt_entry, const void *data) | 
| STATIC void | nfs_fsunmount_me (rtems_filesystem_mount_table_entry_t *mt_entry) | 
| int | nfsSetTimeout (uint32_t timeout_ms) | 
| uint32_t | nfsGetTimeout (void) | 
Variables | |
| const struct _rtems_filesystem_operations_table | nfs_fs_ops | 
| int | nfsStBlksize = DEFAULT_NFS_ST_BLKSIZE | 
NFS Client Implementation for RTEMS.
Hooks Into the RTEMS NFS Filesystem
| #define DIRENT_HEADER_SIZE | 
| #define NFS_MAKE_DEV_T | ( | node | ) | 
| #define NFS_MAKE_DEV_T_INO_HACK | ( | node | ) | 
| const struct _rtems_filesystem_operations_table nfs_fs_ops | 
 1.8.15