X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=utils%2Fstatd%2Fstatd.h;h=e89e666d9cae977e5cad8f07c0144ecb3f6b4d98;hb=9a5293a10551c03b4fb976503dd24da569fcadb3;hp=5e2b6fd0679491e106d7458a6e9c9d295f126f25;hpb=9bea78d8f36cd5ab75d18e32224f0b90a635128c;p=nfs-utils.git diff --git a/utils/statd/statd.h b/utils/statd/statd.h index 5e2b6fd..e89e666 100644 --- a/utils/statd/statd.h +++ b/utils/statd/statd.h @@ -5,32 +5,13 @@ * NSM for Linux. */ -#include "config.h" -#include "sm_inter.h" -#include "system.h" -#include "log.h" - -/* - * Paths and filenames. - */ -#if defined(NFS_STATEDIR) -# define DEFAULT_DIR_BASE NFS_STATEDIR "/" -#else -# define DEFAULT_DIR_BASE "/var/lib/nfs/" +#ifdef HAVE_CONFIG_H +#include #endif -#define DEFAULT_SM_DIR DEFAULT_DIR_BASE "sm" -#define DEFAULT_SM_BAK_DIR DEFAULT_DIR_BASE "sm.bak" -#define DEFAULT_SM_STAT_PATH DEFAULT_DIR_BASE "state" - -/* Added to support run-time specification of state directory path. - * j_carlos_gomez@yahoo.com - */ - -extern char * DIR_BASE; -extern char * SM_DIR; -extern char * SM_BAK_DIR; -extern char * SM_STAT_PATH; +#include "sm_inter.h" +#include "system.h" +#include "xlog.h" /* * Status definitions. @@ -41,16 +22,21 @@ extern char * SM_STAT_PATH; /* * Function prototypes. */ -extern void change_state(void); -extern void do_regist(u_long, void (*)()); +extern _Bool statd_matchhostname(const char *hostname1, const char *hostname2); +extern _Bool statd_present_address(const struct sockaddr *sap, char *buf, + const size_t buflen); +__attribute_malloc__ +extern char * statd_canonical_name(const char *hostname); + extern void my_svc_run(void); extern void notify_hosts(void); extern void shuffle_dirs(void); +extern int statd_get_socket(void); extern int process_notify_list(void); extern int process_reply(FD_SET_TYPE *); extern char * xstrdup(const char *); extern void * xmalloc(size_t); -extern void xunlink (char *, char *, short int); +extern void load_state(void); /* * Host status structure and macros. @@ -73,15 +59,10 @@ stat_chge SM_stat_chge; extern int run_mode; #define MODE_NODAEMON 1 /* No-daemon/foreground mode. */ #define MODE_LOG_STDERR 2 /* in foreground mode, log to stderr */ -/*#define MODE_NOTIFY_ONLY 4*/ /* Send SM_NOTIFY to everyone monitored on +#define MODE_NOTIFY_ONLY 4 /* Send SM_NOTIFY to everyone monitored on a single interface/alias */ /* LH - notify_only mode would be for notifying hosts on an IP alias * that just came back up, for ex, when failing over a HA service to * another host.... */ - -/* - * Program name and version pointers -- See statd.c for the reasoning - * as to why they're global. - */ -extern char *name_p; /* program basename */ -extern char *version_p; /* program version */ +#define STATIC_HOSTNAME 8 /* Always use the hostname set by -n */ +#define MODE_NO_NOTIFY 16 /* Don't notify peers of a reboot */