9 #define HARD_FAIL(x) (((x) != 0 ) && ((x) != MR_NO_CHANGE))
10 #define SOFT_FAIL(x) (((x) == MR_NO_MEM) || ((x) == MR_CANT_CONNECT) || ((x) == MR_CCONFIG) || ((x) == MR_DEADLOCK) || ((x) == MR_BUSY))
13 #define DEADLOCK_WAIT (3 * 60) /* number of seconds to wait after
14 a deadlock before trying again. */
15 #define DEADLOCK_TRIES 40 /* how many times to try (2 hours) */
22 #define DBG_VERBOSE 02
25 #define strrel(s,op,t) (strcmp((s), (t)) op 0)
26 #define strnrel(s,op,t,n) (strncmp((s), (t), (n)) op 0)
28 #define streq(a,b) (strcmp(a,b) == 0)
34 #define NULL (char *) 0
38 extern int dbg; /* utils.c: set by main() */
40 #define CHECK_UPCALL_ARGS(num, upcall_name)\
42 fprintf(stderr, "%s upcall with %d arguments instead of %d\n",\
43 upcall_name, argc, num);\
80 extern void init_mr();
81 extern void dcm_com_err_hook();
84 extern char *strsave();
85 extern long file_last_mod_time();
86 extern long current_time();
88 #define file_exists(file) (access((file), F_OK) == 0)
91 extern void perform_update();
92 extern int maybe_lock_update();