/* * UNFS3 server framework * (C) 2004, Pascal Schmidt * see file LICENSE for license details */ #ifndef UNFS3_DAEMON_H #define UNFS3_DAEMON_H #include "nfs.h" /* exit status for internal errors */ #define CRISIS 99 /* HP-UX does not have seteuid() and setegid() */ #if HAVE_SETEUID == 0 && HAVE_SETRESUID == 1 #define seteuid(u) setresuid(-1, u, -1) #endif #if HAVE_SETEGID == 0 && HAVE_SETRESGID == 1 #define setegid(g) setresgid(-1, g, -1) #endif /* error handling */ void daemon_exit(int); void logmsg(int, const char *, ...); /* remote address */ struct in_addr get_remote(struct svc_req *); short get_port(struct svc_req *); int get_socket_type(struct svc_req *rqstp); /* write verifier */ extern writeverf3 wverf; void regenerate_write_verifier(void); /* readdir cookie */ extern cookie3 rcookie; void change_readdir_cookie(void); /* options */ extern int opt_detach; extern char *opt_exports; extern int opt_cluster; extern char *opt_cluster_path; extern int opt_singleuser; extern int opt_brute_force; extern int opt_readable_executables; #endif