RTEMS
Public Attributes | List of all members
rtems_filesystem_eval_path_context_t Struct Reference

Path evaluation context. More...

#include <libio.h>

Public Attributes

const char * path
 
size_t pathlen
 
const char * token
 
size_t tokenlen
 
int flags
 
int recursionlevel
 
rtems_filesystem_location_info_t currentloc
 
rtems_filesystem_global_location_trootloc
 
rtems_filesystem_global_location_tstartloc
 

Detailed Description

Path evaluation context.

Definition at line 84 of file libio.h.

Member Data Documentation

◆ currentloc

rtems_filesystem_location_info_t rtems_filesystem_eval_path_context_t::currentloc

This is the current file system location of the evaluation process. Tokens are evaluated with respect to the current location. The token interpretation may change the current location. The purpose of the path evaluation is to change the start location into a final current location according to the path.

Definition at line 135 of file libio.h.

◆ flags

int rtems_filesystem_eval_path_context_t::flags

The path evaluation is controlled by the following flags

  • RTEMS_FS_PERMS_READ,
  • RTEMS_FS_PERMS_WRITE,
  • RTEMS_FS_PERMS_EXEC,
  • RTEMS_FS_FOLLOW_HARD_LINK,
  • RTEMS_FS_FOLLOW_SYM_LINK,
  • RTEMS_FS_MAKE,
  • RTEMS_FS_EXCLUSIVE,
  • RTEMS_FS_ACCEPT_RESIDUAL_DELIMITERS, and
  • RTEMS_FS_REJECT_TERMINAL_DOT.

Definition at line 119 of file libio.h.

◆ path

const char* rtems_filesystem_eval_path_context_t::path

The contents of the remaining path to be evaluated.

Definition at line 88 of file libio.h.

◆ pathlen

size_t rtems_filesystem_eval_path_context_t::pathlen

The length of the remaining path to be evaluated.

Definition at line 93 of file libio.h.

◆ recursionlevel

int rtems_filesystem_eval_path_context_t::recursionlevel

Symbolic link evaluation is a recursive operation. This field helps to limit the recursion level and thus prevents a stack overflow. The recursion level is limited by RTEMS_FILESYSTEM_SYMLOOP_MAX.

Definition at line 126 of file libio.h.

◆ rootloc

rtems_filesystem_global_location_t* rtems_filesystem_eval_path_context_t::rootloc

The location of the root directory of the user environment during the evaluation start.

Definition at line 141 of file libio.h.

◆ startloc

rtems_filesystem_global_location_t* rtems_filesystem_eval_path_context_t::startloc

The start location of the evaluation process. The start location my change during symbolic link evaluation.

Definition at line 147 of file libio.h.

◆ token

const char* rtems_filesystem_eval_path_context_t::token

The contents of the token to be evaluated with respect to the current location.

Definition at line 99 of file libio.h.

◆ tokenlen

size_t rtems_filesystem_eval_path_context_t::tokenlen

The length of the token to be evaluated with respect to the current location.

Definition at line 105 of file libio.h.


The documentation for this struct was generated from the following file: