9 #define HARD_FAIL(x) (((x) != 0 ) && ((x) != SMS_NO_CHANGE))
10 #define SOFT_FAIL(x) (((x) == SMS_NO_MEM) || ((x) == SMS_CANT_CONNECT) || ((x) == SMS_CCONFIG) || ((x) == SMS_DEADLOCK))
14 extern char *malloc(), *calloc(), *realloc();
19 #define DBG_VERBOSE 02
22 #define strrel(s,op,t) (strcmp((s), (t)) op 0)
23 #define strnrel(s,op,t,n) (strncmp((s), (t), (n)) op 0)
25 #define streq(a,b) (strcmp(a,b) == 0)
31 #define NULL (char *) 0
35 extern int dbg; /* utils.c: set by main() */
37 #define CHECK_UPCALL_ARGS(num, upcall_name)\
39 fprintf(stderr, "%s upcall with %d arguments instead of %d\n",\
40 upcall_name, argc, num);\
77 extern void init_sms();
78 extern void dcm_com_err_hook();
81 extern char *strsave();
82 extern long file_last_mod_time();
83 extern long current_time();
84 #define file_exists(file) (access((file), F_OK) == 0)
87 extern void perform_update();
88 extern int maybe_lock_update();