1 /* source: xio-process.h */
2 /* Copyright Gerhard Rieger and contributors (see file CHANGES) */
3 /* Published under the GNU General Public License V.2, see file COPYING */
5 #ifndef __xio_process_h_included
6 #define __xio_process_h_included 1
8 extern const struct optdesc opt_setgid_early
;
9 extern const struct optdesc opt_setgid
;
10 extern const struct optdesc opt_setuid_early
;
11 extern const struct optdesc opt_setuid
;
12 extern const struct optdesc opt_substuser_early
;
13 extern const struct optdesc opt_substuser
;
14 #if defined(HAVE_SETGRENT) && defined(HAVE_GETGRENT) && defined(HAVE_ENDGRENT)
15 extern const struct optdesc opt_substuser_delayed
;
17 extern const struct optdesc opt_chroot_early
;
18 extern const struct optdesc opt_chroot
;
19 extern const struct optdesc opt_setsid
;
20 extern const struct optdesc opt_setpgid
;
22 /* for option substuser-delayed, save info for later application */
23 extern bool delayeduser
;
24 extern uid_t delayeduser_uid
; /* numeric user id to switch to */
25 extern gid_t delayeduser_gid
; /* numeric group id to switch to */
26 extern gid_t delayeduser_gids
[NGROUPS
]; /* num.supplementary group ids */
27 extern int delayeduser_ngids
; /* number of suppl. gids */
28 extern char *delayeduser_name
; /* name of user to switch to */
29 extern char *delayeduser_dir
; /* home directory of user to switch to */
30 extern char *delayeduser_shell
; /* login shell of user to switch to */
32 extern int _xioopen_setdelayeduser(void);
34 #endif /* !defined(__xio_process_h_included) */