Filesystem: Export most generic path eval function

Add path length parameter to
rtems_filesystem_eval_path_start_with_root_and_current() so that users
may pass paths without a '\0' termination.

Update #2558.
This commit is contained in:
Sebastian Huber
2016-02-02 08:00:34 +01:00
parent 2145853b00
commit d85db176e7
3 changed files with 6 additions and 22 deletions

View File

@@ -328,6 +328,7 @@ rtems_filesystem_location_info_t *
rtems_filesystem_eval_path_start_with_root_and_current(
rtems_filesystem_eval_path_context_t *ctx,
const char *path,
size_t pathlen,
int eval_flags,
rtems_filesystem_global_location_t *const *global_root_ptr,
rtems_filesystem_global_location_t *const *global_current_ptr

View File

@@ -44,6 +44,7 @@ int chroot( const char *path )
rtems_filesystem_eval_path_start_with_root_and_current(
&ctx,
path,
strlen( path ),
eval_flags,
&rtems_global_user_env.root_directory,
&rtems_global_user_env.current_directory

View File

@@ -136,8 +136,8 @@ void rtems_filesystem_eval_path_continue(
}
}
static rtems_filesystem_location_info_t *
eval_path_start(
rtems_filesystem_location_info_t *
rtems_filesystem_eval_path_start_with_root_and_current(
rtems_filesystem_eval_path_context_t *ctx,
const char *path,
size_t pathlen,
@@ -166,25 +166,6 @@ eval_path_start(
return &ctx->currentloc;
}
rtems_filesystem_location_info_t *
rtems_filesystem_eval_path_start_with_root_and_current(
rtems_filesystem_eval_path_context_t *ctx,
const char *path,
int eval_flags,
rtems_filesystem_global_location_t *const *global_root_ptr,
rtems_filesystem_global_location_t *const *global_current_ptr
)
{
return eval_path_start(
ctx,
path,
strlen(path),
eval_flags,
global_root_ptr,
global_current_ptr
);
}
rtems_filesystem_location_info_t *
rtems_filesystem_eval_path_start(
rtems_filesystem_eval_path_context_t *ctx,
@@ -195,6 +176,7 @@ rtems_filesystem_eval_path_start(
return rtems_filesystem_eval_path_start_with_root_and_current(
ctx,
path,
strlen(path),
eval_flags,
&rtems_filesystem_root,
&rtems_filesystem_current
@@ -229,7 +211,7 @@ rtems_filesystem_eval_path_start_with_parent(
}
}
currentloc = eval_path_start(
currentloc = rtems_filesystem_eval_path_start_with_root_and_current(
ctx,
parentpath,
parentpathlen,