21 /*
22 * Copyright 2003 Sun Microsystems, Inc. All rights reserved.
23 * Use is subject to license terms.
24 */
25
26
27 #ifndef _VROOT_H_
28 #define _VROOT_H_
29
30 #include <stdio.h>
31 #include <nl_types.h>
32
33 #define VROOT_DEFAULT ((pathpt)-1)
34
35 typedef struct {
36 char *path;
37 short length;
38 } pathcellt, *pathcellpt, patht;
39 typedef patht *pathpt;
40
41 extern void add_dir_to_path(register char *path, register pathpt *pointer, register int position);
42 extern void flush_path_cache(void);
43 extern void flush_vroot_cache(void);
44 extern char *get_path_name(void);
45 extern char *get_vroot_path(register char **vroot, register char **path, register char **filename);
46 extern char *get_vroot_name(void);
47 extern int open_vroot(char *path, int flags, int mode, pathpt vroot_path, pathpt vroot_vroot);
48 extern pathpt parse_path_string(register char *string, register int remove_slash);
49 extern void scan_path_first(void);
50 extern void scan_vroot_first(void);
51 extern void set_path_style(int style);
52
53 extern int access_vroot(char *path, int mode, pathpt vroot_path, pathpt vroot_vroot);
54
55 extern int execve_vroot(char *path, char **argv, char **environ, pathpt vroot_path, pathpt vroot_vroot);
56
57 extern int lstat_vroot(char *path, struct stat *buffer, pathpt vroot_path, pathpt vroot_vroot);
58 extern int stat_vroot(char *path, struct stat *buffer, pathpt vroot_path, pathpt vroot_vroot);
59 extern int readlink_vroot(char *path, char *buffer, int buffer_size, pathpt vroot_path, pathpt vroot_vroot);
60
61
62 extern nl_catd libvroot_catd;
63 #endif
|
21 /*
22 * Copyright 2003 Sun Microsystems, Inc. All rights reserved.
23 * Use is subject to license terms.
24 */
25
26
27 #ifndef _VROOT_H_
28 #define _VROOT_H_
29
30 #include <stdio.h>
31 #include <nl_types.h>
32
33 #define VROOT_DEFAULT ((pathpt)-1)
34
35 typedef struct {
36 char *path;
37 short length;
38 } pathcellt, *pathcellpt, patht;
39 typedef patht *pathpt;
40
41 extern void add_dir_to_path(const char *path, register pathpt *pointer, register int position);
42 extern void flush_path_cache(void);
43 extern void flush_vroot_cache(void);
44 extern const char *get_path_name(void);
45 extern char *get_vroot_path(register char **vroot, register char **path, register char **filename);
46 extern const char *get_vroot_name(void);
47 extern int open_vroot(char *path, int flags, int mode, pathpt vroot_path, pathpt vroot_vroot);
48 extern pathpt parse_path_string(register char *string, register int remove_slash);
49 extern void scan_path_first(void);
50 extern void scan_vroot_first(void);
51 extern void set_path_style(int style);
52
53 extern int access_vroot(char *path, int mode, pathpt vroot_path, pathpt vroot_vroot);
54
55 extern int execve_vroot(char *path, char **argv, char **environ, pathpt vroot_path, pathpt vroot_vroot);
56
57 extern int lstat_vroot(char *path, struct stat *buffer, pathpt vroot_path, pathpt vroot_vroot);
58 extern int stat_vroot(char *path, struct stat *buffer, pathpt vroot_path, pathpt vroot_vroot);
59 extern int readlink_vroot(char *path, char *buffer, int buffer_size, pathpt vroot_path, pathpt vroot_vroot);
60
61
62 extern nl_catd libvroot_catd;
63 #endif
|