Go to the documentation of this file.
21 #ifndef __CLSYNC_CTX_H
22 #define __CLSYNC_CTX_H
25 #ifdef CAPABILITIES_SUPPORT
26 # include <sys/capability.h>
29 #define MAX_BLOCKTHREADS (1<<4)
31 #define register_blockthread(thread) {\
32 critical_on (ctx_p->blockthread_count >= MAX_BLOCKTHREADS);\
33 ctx_p->blockthread[ctx_p->blockthread_count++] = pthread_self();\
34 debug(3, "register_blockthread(): ctx_p->blockthread_count -> %i", ctx_p->blockthread_count);\
37 #define OPTION_FLAGS (1<<10)
38 #define OPTION_LONGOPTONLY (1<<9)
39 #define OPTION_CONFIGONLY (1<<8)
40 #define NOTOPTION (3<<8)
257 #define STATE_STARTING(state_p) (state_p == NULL)
313 #define CAP_PRESERVE_TRY (1<<16)
327 #ifdef CAPABILITIES_SUPPORT
357 #ifdef CGROUP_SUPPORT
364 #ifdef CLUSTER_SUPPORT
366 char *cluster_mcastipaddr;
367 char *cluster_nodename;
368 uint32_t cluster_nodename_len;
369 uint16_t cluster_mcastipport;
370 uint16_t cluster_hash_dl_min;
371 uint16_t cluster_hash_dl_max;
372 uint16_t cluster_scan_dl_max;
373 unsigned int cluster_timeout;
403 #ifdef CAPABILITIES_SUPPORT
405 int permitted_hookfiles;
408 #ifdef UNSHARE_SUPPORT
409 # ifdef GETMNTENT_SUPPORT
417 #endif // ifndef LIBCLSYNC
const char * config_block
int(* api_funct_init)(struct ctx *, struct indexes *)
int(* api_funct_rsync)(const char *inclist, const char *exclist)
int(* api_funct_deinit)()
int(* wait)(struct ctx *ctx_p, struct indexes *indexes_p, struct timeval *tv_p)
int(* add_watch_dir)(struct ctx *ctx_p, struct indexes *indexes_p, const char *const accpath)
#define OPTION_LONGOPTONLY
shflags_t synchandler_argf
int(* api_funct_sync)(int n, api_eventinfo_t *)
unsigned int collectdelay
char * flags_values_raw[(1<< 10)]
char * customsignal[MAXSIGNALNUM+1]
enum detachnetwork_way detachnetwork_way_t
enum capsinherit capsinherit_t
struct notifyenginefuncts notifyenginefunct
char isignoredexitcode[(1<< 8)]
pthread_t blockthread[(1<< 4)]
enum ruleaction_enum ruleaction_t
int(* handle)(struct ctx *ctx_p, struct indexes *indexes_p)
short int watchdir_dirlevel
enum pivotroot_way pivotroot_way_t
queueinfo_t _queues[QUEUE_MAX]
enum ruleactionsign_enum ruleactionsign_t
static char *const status_descr[]
#define MAXPERMITTEDHOOKFILES
size_t watchdirwslashsize
pid_t child_pid[MAXCHILDREN]
api_functs_t handler_funct
char isexpanded[MAXARGUMENTS]
unsigned int rsyncinclimit
@ FTS_EXPERIMENTAL_OPTIMIZATION
#define STATE_STARTING(state_p)