csync public API


Defines

#define CSYNC_CONF_DIR   ".csync"
#define CSYNC_CONF_FILE   "csync.conf"
#define CSYNC_EXCLUDE_FILE   "csync_exclude.conf"
#define CSYNC_LOCK_FILE   "lock"
#define CSYNC_LOG_FILE   "csync_log.conf"
#define CSYNC_STRINGIFY(s)   CSYNC_TOSTRING(s)
#define CSYNC_TOSTRING(s)   #s
#define CSYNC_VERSION(a, b, c)   CSYNC_VERSION_DOT(a, b, c)
#define CSYNC_VERSION_DOT(a, b, c)   a ##.## b ##.## c
#define CSYNC_VERSION_INT(a, b, c)   ((a) << 16 | (b) << 8 | (c))
#define LIBCSYNC_VERSION
#define LIBCSYNC_VERSION_INT
#define LIBCSYNC_VERSION_MAJOR   0
#define LIBCSYNC_VERSION_MICRO   0
#define LIBCSYNC_VERSION_MINOR   42

Typedefs

typedef struct csync_s CSYNC
typedef int(* csync_auth_callback )(const char *prompt, char *buf, size_t len, int echo, int verify, void *userdata)

Functions

int csync_add_exclude_list (CSYNC *ctx, const char *path)
int csync_create (CSYNC **csync, const char *local, const char *remote)
int csync_destroy (CSYNC *ctx)
int csync_disable_statedb (CSYNC *ctx)
int csync_enable_statedb (CSYNC *ctx)
csync_auth_callback csync_get_auth_callback (CSYNC *ctx)
const char * csync_get_config_dir (CSYNC *ctx)
const char * csync_get_statedb_file (CSYNC *ctx)
int csync_get_status (CSYNC *ctx)
void * csync_get_userdata (CSYNC *ctx)
int csync_init (CSYNC *ctx)
int csync_is_statedb_disabled (CSYNC *ctx)
int csync_propagate (CSYNC *ctx)
int csync_reconcile (CSYNC *ctx)
int csync_remove_config_dir (CSYNC *ctx)
int csync_set_auth_callback (CSYNC *ctx, csync_auth_callback cb)
int csync_set_config_dir (CSYNC *ctx, const char *path)
int csync_set_status (CSYNC *ctx, int status)
int csync_set_userdata (CSYNC *ctx, void *userdata)
int csync_update (CSYNC *ctx)
const char * csync_version (int req_version)


Define Documentation

#define CSYNC_CONF_DIR   ".csync"

Definition at line 63 of file csync.h.

#define CSYNC_CONF_FILE   "csync.conf"

Definition at line 64 of file csync.h.

#define CSYNC_EXCLUDE_FILE   "csync_exclude.conf"

Definition at line 66 of file csync.h.

#define CSYNC_LOCK_FILE   "lock"

Definition at line 67 of file csync.h.

#define CSYNC_LOG_FILE   "csync_log.conf"

Definition at line 65 of file csync.h.

#define CSYNC_STRINGIFY (  )     CSYNC_TOSTRING(s)

Definition at line 40 of file csync.h.

#define CSYNC_TOSTRING (  )     #s

Definition at line 41 of file csync.h.

#define CSYNC_VERSION ( a,
b,
 )     CSYNC_VERSION_DOT(a, b, c)

Definition at line 46 of file csync.h.

#define CSYNC_VERSION_DOT ( a,
b,
 )     a ##.## b ##.## c

Definition at line 45 of file csync.h.

#define CSYNC_VERSION_INT ( a,
b,
 )     ((a) << 16 | (b) << 8 | (c))

Definition at line 44 of file csync.h.

#define LIBCSYNC_VERSION

#define LIBCSYNC_VERSION_INT

#define LIBCSYNC_VERSION_MAJOR   0

Definition at line 49 of file csync.h.

#define LIBCSYNC_VERSION_MICRO   0

Definition at line 51 of file csync.h.

#define LIBCSYNC_VERSION_MINOR   42

Definition at line 50 of file csync.h.


Typedef Documentation

typedef struct csync_s CSYNC

csync handle

Definition at line 75 of file csync.h.

typedef int(* csync_auth_callback)(const char *prompt, char *buf, size_t len, int echo, int verify, void *userdata)

Definition at line 69 of file csync.h.


Function Documentation

int csync_add_exclude_list ( CSYNC ctx,
const char *  path 
)

Add an additional exclude list.

Parameters:
ctx The context to add the exclude list.
path The path pointing to the file.
Returns:
0 on success, less than 0 if an error occured.

int csync_create ( CSYNC **  csync,
const char *  local,
const char *  remote 
)

Allocate a csync context.

Parameters:
csync The context variable to allocate.
Returns:
0 on success, less than 0 if an error occured.

int csync_destroy ( CSYNC ctx  ) 

Destroy the csync context.

Writes the statedb, unlocks csync and frees the memory.

Parameters:
ctx The context to destroy.
Returns:
0 on success, less than 0 if an error occured.

int csync_disable_statedb ( CSYNC ctx  ) 

Disable the usage of the statedb.

It is enabled by default.

Parameters:
ctx The csync context.
Returns:
0 on success, less than 0 if an error occured.

int csync_enable_statedb ( CSYNC ctx  ) 

Enable the usage of the statedb.

It is enabled by default.

Parameters:
ctx The csync context.
Returns:
0 on success, less than 0 if an error occured.

csync_auth_callback csync_get_auth_callback ( CSYNC ctx  ) 

Get the authentication callback set.

Parameters:
ctx The csync context.
Returns:
The authentication callback set or NULL if an error occured.

const char* csync_get_config_dir ( CSYNC ctx  ) 

Get the config directory.

Parameters:
ctx The csync context.
Returns:
The path of the config directory or NULL on error.

const char* csync_get_statedb_file ( CSYNC ctx  ) 

Get the path of the statedb file used.

Parameters:
ctx The csync context.
Returns:
The path to the statedb file, NULL if an error occured.

int csync_get_status ( CSYNC ctx  ) 

void* csync_get_userdata ( CSYNC ctx  ) 

Get the userdata saved in the context.

Parameters:
ctx The csync context.
Returns:
The userdata saved in the context, NULL if an error occured.

int csync_init ( CSYNC ctx  ) 

Initialize the file synchronizer.

This function loads the configuration, the statedb and locks the client.

Parameters:
ctx The context to initialize.
Returns:
0 on success, less than 0 if an error occured.

int csync_is_statedb_disabled ( CSYNC ctx  ) 

Check if the statedb usage is enabled.

Parameters:
ctx The csync context.
Returns:
1 if it is enabled, 0 if it is disabled.

int csync_propagate ( CSYNC ctx  ) 

Propagation.

Parameters:
ctx The context to run the propagation on.
Returns:
0 on success, less than 0 if an error occured.

int csync_reconcile ( CSYNC ctx  ) 

Reconciliation.

Parameters:
ctx The context to run the reconciliation on.
Returns:
0 on success, less than 0 if an error occured.

int csync_remove_config_dir ( CSYNC ctx  ) 

Remove the complete config directory.

Parameters:
ctx The csync context.
Returns:
0 on success, less than 0 if an error occured.

int csync_set_auth_callback ( CSYNC ctx,
csync_auth_callback  cb 
)

Set the authentication callback.

Parameters:
ctx The csync context.
cb The authentication callback.
Returns:
0 on success, less than 0 if an error occured.

int csync_set_config_dir ( CSYNC ctx,
const char *  path 
)

Change the config directory.

Parameters:
ctx The csync context.
path The path to the new config directory.
Returns:
0 on success, less than 0 if an error occured.

int csync_set_status ( CSYNC ctx,
int  status 
)

int csync_set_userdata ( CSYNC ctx,
void *  userdata 
)

Save userdata to the context which is passed to the auth callback function.

Parameters:
ctx The csync context.
userdata The userdata to be stored in the context.
Returns:
0 on success, less than 0 if an error occured.

int csync_update ( CSYNC ctx  ) 

Update detection.

Parameters:
ctx The context to run the update detection on.
Returns:
0 on success, less than 0 if an error occured.

const char* csync_version ( int  req_version  ) 

Check if csync is the required version or get the version string.

Parameters:
req_version The version required.
Returns:
If the version of csync is newer than the version required it will return a version string. NULL if the version is older.
Example:

  if (csync_version(CSYNC_VERSION_INT(0,42,1)) == NULL) {
    fprintf(stderr, "libcsync version is too old!\n");
    exit(1);
  }

  if (debug) {
    printf("csync %s\n", csync_version(0));
  }


Generated on Mon May 4 17:43:40 2009 for doc by  doxygen 1.5.6