cpdup - Add -F<ssh-opt>, add code to remove need for FreeBSD ports patch
[dragonfly.git] / bin / cpdup / cpdup.h
1 /*
2  * CPDUP.H
3  *
4  * $DragonFly: src/bin/cpdup/cpdup.h,v 1.9 2008/04/14 05:40:51 dillon Exp $
5  */
6
7 #include <sys/param.h>
8 #include <sys/time.h>
9 #include <sys/stat.h>
10 #include <sys/file.h>
11
12 #include <fcntl.h>
13 #include <stdio.h>
14 #include <stdlib.h>
15 #include <stdarg.h>
16 #include <stddef.h>
17 #include <stdint.h>
18 #include <string.h>
19 #include <errno.h>
20 #include <unistd.h>
21 #include <utime.h>
22 #include <dirent.h>
23 #include <signal.h>
24 #include <pwd.h>
25 #include <assert.h>
26 #ifndef NOMD5
27 #include <md5.h>
28 #endif
29 #if USE_PTHREADS
30 #include <pthread.h>
31 #endif
32
33 void logstd(const char *ctl, ...);
34 void logerr(const char *ctl, ...);
35 char *mprintf(const char *ctl, ...);
36 void fatal(const char *ctl, ...);
37 char *fextract(FILE *fi, int n, int *pc, int skip);
38
39 int fsmid_check(int64_t fsmid, const char *dpath);
40 void fsmid_flush(void);
41 #ifndef NOMD5
42 int md5_check(const char *spath, const char *dpath);
43 void md5_flush(void);
44 #endif
45
46 extern const char *MD5CacheFile;
47 extern const char *FSMIDCacheFile;
48
49 extern int SummaryOpt;
50 extern int CompressOpt;
51 extern int CurParallel;
52 extern int RunningAsUser;
53 extern int RunningAsRoot;
54
55 extern int ssh_argc;
56 extern const char *ssh_argv[];
57
58 extern int64_t CountSourceBytes;
59 extern int64_t CountSourceItems;
60 extern int64_t CountCopiedItems;
61 extern int64_t CountSourceReadBytes;
62 extern int64_t CountTargetReadBytes;
63 extern int64_t CountWriteBytes;
64 extern int64_t CountRemovedItems;
65
66 #if USE_PTHREADS
67 extern pthread_mutex_t MasterMutex;
68 #endif
69
70 #ifdef DEBUG_MALLOC
71 void *debug_malloc(size_t bytes, const char *file, int line);
72 void debug_free(void *ptr);
73
74 #define malloc(bytes)   debug_malloc(bytes, __FILE__, __LINE__)
75 #define free(ptr)       debug_free(ptr)
76 #endif