doc
Modules | Data Structures | Macros | Typedefs | Enumerations | Enumerator | Variables
csync internal API

Modules

 csync file lockling internals
 csync logging internals
 csync propagation internals
 csync reconciliation internals
 csync statedb internals
 csync update detection internals

Data Structures

struct  csync_file_stat_s
struct  csync_s
 csync public structure More...

Macros

#define CSYNC_STATUS_DONE
#define CSYNC_STATUS_INIT   1 << 0
#define CSYNC_STATUS_PROPAGATE   1 << 3
#define CSYNC_STATUS_RECONCILE   1 << 2
#define CSYNC_STATUS_UPDATE   1 << 1
#define MAX_DEPTH   50
#define MAX_TIME_DIFFERENCE   10
#define MAX_XFER_BUF_SIZE   (16 * 1024)

Typedefs

typedef struct csync_file_stat_s csync_file_stat_t

Enumerations

enum  csync_ftw_type_e { CSYNC_FTW_TYPE_FILE, CSYNC_FTW_TYPE_SLINK, CSYNC_FTW_TYPE_DIR }
enum  csync_instructions_e {
  CSYNC_INSTRUCTION_NONE, CSYNC_INSTRUCTION_EVAL, CSYNC_INSTRUCTION_REMOVE, CSYNC_INSTRUCTION_RENAME,
  CSYNC_INSTRUCTION_NEW, CSYNC_INSTRUCTION_CONFLICT, CSYNC_INSTRUCTION_IGNORE, CSYNC_INSTRUCTION_SYNC,
  CSYNC_INSTRUCTION_STAT_ERROR, CSYNC_INSTRUCTION_ERROR, CSYNC_INSTRUCTION_DELETED, CSYNC_INSTRUCTION_UPDATED
}
enum  csync_replica_e { LOCAL_REPLICA, REMOTE_REPLCIA }

Variables

csync_auth_callback csync_s::auth_callback
char *   csync_s::config_dir
enum csync_replica_e csync_s::current
sqlite3 *   csync_s::db
int   csync_s::disabled
uid_t   csync_s::euid
c_strlist_tcsync_s::excludes
int   csync_s::exists
char *   csync_s::file
csync_vio_method_finish_fn   csync_s::finish_fn
gid_t csync_file_stat_s::gid
void *   csync_s::handle
ino_t csync_file_stat_s::inode
enum csync_instructions_e csync_file_stat_s::instruction
c_list_t *   csync_s::list
c_list_t *   csync_s::list
struct {
   c_list_t *   csync_s::list
   c_rbtree_t *   csync_s::tree
   enum csync_replica_e   csync_s::type
   char *   csync_s::uri
csync_s::local
int   csync_s::max_depth
int   csync_s::max_time_difference
csync_vio_method_t *   csync_s::method
mode_t csync_file_stat_s::mode
time_t csync_file_stat_s::modtime
struct {
   csync_vio_method_finish_fn   csync_s::finish_fn
   void *   csync_s::handle
   csync_vio_method_t *   csync_s::method
csync_s::module
int csync_file_stat_s::nlink
struct {
   char *   csync_s::config_dir
   int   csync_s::max_depth
   int   csync_s::max_time_difference
   int   csync_s::sync_symbolic_links
   int   csync_s::unix_extensions
csync_s::options
char csync_file_stat_s::path [1]
size_t csync_file_stat_s::pathlen
uint64_t csync_file_stat_s::phash
struct {
   uid_t   csync_s::euid
   uid_t   csync_s::uid
csync_s::pwd
struct {
   c_list_t *   csync_s::list
   c_rbtree_t *   csync_s::tree
   enum csync_replica_e   csync_s::type
   char *   csync_s::uri
csync_s::remote
enum csync_replica_e csync_s::replica
off_t csync_file_stat_s::size
struct {
   sqlite3 *   csync_s::db
   int   csync_s::disabled
   int   csync_s::exists
   char *   csync_s::file
csync_s::statedb
int csync_s::status
int   csync_s::sync_symbolic_links
c_rbtree_t *   csync_s::tree
c_rbtree_t *   csync_s::tree
enum csync_replica_e   csync_s::type
enum csync_replica_e   csync_s::type
int csync_file_stat_s::type
uid_t   csync_s::uid
uid_t csync_file_stat_s::uid
int   csync_s::unix_extensions
char *   csync_s::uri
char *   csync_s::uri
void * csync_s::userdata

Detailed Description


Macro Definition Documentation

#define CSYNC_STATUS_DONE
Value:
CSYNC_STATUS_UPDATE | \
CSYNC_STATUS_RECONCILE | \
CSYNC_STATUS_PROPAGATE)

Definition at line 66 of file csync_private.h.

#define CSYNC_STATUS_INIT   1 << 0

Definition at line 61 of file csync_private.h.

#define CSYNC_STATUS_PROPAGATE   1 << 3

Definition at line 64 of file csync_private.h.

#define CSYNC_STATUS_RECONCILE   1 << 2

Definition at line 63 of file csync_private.h.

#define CSYNC_STATUS_UPDATE   1 << 1

Definition at line 62 of file csync_private.h.

#define MAX_DEPTH   50

How deep to scan directories.

Definition at line 47 of file csync_private.h.

#define MAX_TIME_DIFFERENCE   10

Maximum time difference between two replicas in seconds.

Definition at line 52 of file csync_private.h.

#define MAX_XFER_BUF_SIZE   (16 * 1024)

Maximum size of a buffer for transfer.

Definition at line 58 of file csync_private.h.


Typedef Documentation


Enumeration Type Documentation

Enumerator:
CSYNC_FTW_TYPE_FILE 
CSYNC_FTW_TYPE_SLINK 
CSYNC_FTW_TYPE_DIR 

Definition at line 133 of file csync_private.h.

Enumerator:
CSYNC_INSTRUCTION_NONE 
CSYNC_INSTRUCTION_EVAL 
CSYNC_INSTRUCTION_REMOVE 
CSYNC_INSTRUCTION_RENAME 
CSYNC_INSTRUCTION_NEW 
CSYNC_INSTRUCTION_CONFLICT 
CSYNC_INSTRUCTION_IGNORE 
CSYNC_INSTRUCTION_SYNC 
CSYNC_INSTRUCTION_STAT_ERROR 
CSYNC_INSTRUCTION_ERROR 
CSYNC_INSTRUCTION_DELETED 
CSYNC_INSTRUCTION_UPDATED 

Definition at line 139 of file csync_private.h.

Enumerator:
LOCAL_REPLICA 
REMOTE_REPLCIA 

Definition at line 71 of file csync_private.h.


Variable Documentation

csync_auth_callback csync_s::auth_callback

Definition at line 80 of file csync_private.h.

char* csync_s::config_dir

Definition at line 116 of file csync_private.h.

char* { ... } ::config_dir

Definition at line 116 of file csync_private.h.

enum csync_replica_e csync_s::current

Definition at line 125 of file csync_private.h.

sqlite3* csync_s::db

Definition at line 86 of file csync_private.h.

sqlite3* { ... } ::db

Definition at line 86 of file csync_private.h.

int csync_s::disabled

Definition at line 88 of file csync_private.h.

int { ... } ::disabled

Definition at line 88 of file csync_private.h.

uid_t csync_s::euid

Definition at line 121 of file csync_private.h.

uid_t { ... } ::euid

Definition at line 121 of file csync_private.h.

c_strlist_t* csync_s::excludes

Definition at line 82 of file csync_private.h.

int { ... } ::exists

Definition at line 87 of file csync_private.h.

int csync_s::exists

Definition at line 87 of file csync_private.h.

char* csync_s::file

Definition at line 85 of file csync_private.h.

char* { ... } ::file

Definition at line 85 of file csync_private.h.

csync_vio_method_finish_fn { ... } ::finish_fn

Definition at line 108 of file csync_private.h.

csync_vio_method_finish_fn csync_s::finish_fn

Definition at line 108 of file csync_private.h.

gid_t csync_file_stat_s::gid

Definition at line 158 of file csync_private.h.

void* csync_s::handle

Definition at line 106 of file csync_private.h.

void* { ... } ::handle

Definition at line 106 of file csync_private.h.

ino_t csync_file_stat_s::inode

Definition at line 156 of file csync_private.h.

enum csync_instructions_e csync_file_stat_s::instruction

Definition at line 164 of file csync_private.h.

c_list_t* csync_s::list

Definition at line 94 of file csync_private.h.

c_list_t* { ... } ::list

Definition at line 94 of file csync_private.h.

c_list_t* { ... } ::list

Definition at line 101 of file csync_private.h.

struct { ... } csync_s::local
int csync_s::max_depth

Definition at line 112 of file csync_private.h.

int { ... } ::max_depth

Definition at line 112 of file csync_private.h.

int csync_s::max_time_difference

Definition at line 113 of file csync_private.h.

int { ... } ::max_time_difference

Definition at line 113 of file csync_private.h.

csync_vio_method_t* csync_s::method

Definition at line 107 of file csync_private.h.

csync_vio_method_t* { ... } ::method

Definition at line 107 of file csync_private.h.

mode_t csync_file_stat_s::mode

Definition at line 159 of file csync_private.h.

time_t csync_file_stat_s::modtime

Definition at line 162 of file csync_private.h.

struct { ... } csync_s::module
int csync_file_stat_s::nlink

Definition at line 161 of file csync_private.h.

struct { ... } csync_s::options
char csync_file_stat_s::path[1]

Definition at line 167 of file csync_private.h.

size_t csync_file_stat_s::pathlen

Definition at line 166 of file csync_private.h.

uint64_t csync_file_stat_s::phash

Definition at line 165 of file csync_private.h.

struct { ... } csync_s::pwd
struct { ... } csync_s::remote
enum csync_replica_e csync_s::replica

Definition at line 128 of file csync_private.h.

off_t csync_file_stat_s::size

Definition at line 160 of file csync_private.h.

struct { ... } csync_s::statedb
int csync_s::status

Definition at line 130 of file csync_private.h.

int { ... } ::sync_symbolic_links

Definition at line 114 of file csync_private.h.

int csync_s::sync_symbolic_links

Definition at line 114 of file csync_private.h.

c_rbtree_t* { ... } ::tree

Definition at line 93 of file csync_private.h.

c_rbtree_t* csync_s::tree

Definition at line 93 of file csync_private.h.

c_rbtree_t* { ... } ::tree

Definition at line 100 of file csync_private.h.

enum { ... } ::type

Definition at line 95 of file csync_private.h.

enum csync_replica_e csync_s::type

Definition at line 95 of file csync_private.h.

enum { ... } ::type

Definition at line 102 of file csync_private.h.

int csync_file_stat_s::type

Definition at line 163 of file csync_private.h.

uid_t { ... } ::uid

Definition at line 120 of file csync_private.h.

uid_t csync_s::uid

Definition at line 120 of file csync_private.h.

uid_t csync_file_stat_s::uid

Definition at line 157 of file csync_private.h.

int csync_s::unix_extensions

Definition at line 115 of file csync_private.h.

int { ... } ::unix_extensions

Definition at line 115 of file csync_private.h.

char* csync_s::uri

Definition at line 92 of file csync_private.h.

char* { ... } ::uri

Definition at line 92 of file csync_private.h.

char* { ... } ::uri

Definition at line 99 of file csync_private.h.

void* csync_s::userdata

Definition at line 81 of file csync_private.h.