RTEMS CPU Kit with SuperCore  4.10.99.0
Data Fields
rtems_filesystem_eval_path_context_t Struct Reference

Path evaluation context. More...

#include <libio.h>

Collaboration diagram for rtems_filesystem_eval_path_context_t:
Collaboration graph
[legend]

Data Fields

const char * path
 The contents of the remaining path to be evaluated.
size_t pathlen
 The length of the remaining path to be evaluated.
const char * token
 The contents of the token to be evaluated with respect to the current location.
size_t tokenlen
 The length of the token to be evaluated with respect to the current location.
int flags
 The path evaluation is controlled by the following flags.
int recursionlevel
 Symbolic link evaluation is a recursive operation.
rtems_filesystem_location_info_t currentloc
 This is the current file system location of the evaluation process.
rtems_filesystem_global_location_trootloc
 The location of the root directory of the user environment during the evaluation start.
rtems_filesystem_global_location_tstartloc
 The start location of the evaluation process.

Detailed Description

Path evaluation context.


Field Documentation

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.

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.

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.

The start location of the evaluation process.

The start location my change during symbolic link evaluation.


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