X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/f0359dd00d60d72c4b3dec85de8e490692f6015c..0f621785808f8a5104259171c197fe5e384ab6d9:/rsync.h diff --git a/rsync.h b/rsync.h index f9f0fd4f..cb138be2 100644 --- a/rsync.h +++ b/rsync.h @@ -1,6 +1,7 @@ /* - Copyright (C) Andrew Tridgell 1996 + Copyright (C) by Andrew Tridgell 1996, 2000 Copyright (C) Paul Mackerras 1996 + Copyright (C) 2001 by Martin Pool This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -63,7 +64,10 @@ #define MPLEX_BASE 7 -enum logcode {FNONE=0, FERROR=1, FINFO=2, FLOG=3}; +/* Log values. I *think* what these mean is: FLOG goes to the server + * logfile; FERROR and FINFO try to end up on the client, with + * different levels of filtering. */ +enum logcode {FNONE=0, FERROR=1, FINFO=2, FLOG=3 }; #include "errcode.h" @@ -77,12 +81,6 @@ enum logcode {FNONE=0, FERROR=1, FINFO=2, FLOG=3}; #include -#ifdef HAVE_GETOPT_LONG -#include -#else -#include "lib/getopt.h" -#endif - #ifdef HAVE_UNISTD_H #include #endif @@ -305,10 +303,20 @@ struct file_struct { }; +#define ARENA_SIZE (32 * 1024) + +struct string_area { + char *base; + char *end; + char *current; + struct string_area *next; +}; + struct file_list { int count; int malloced; struct file_struct **files; + struct string_area *string_area; }; struct sum_buf { @@ -334,7 +342,6 @@ struct map_struct { }; struct exclude_struct { - char *orig; char *pattern; int regular_exp; int fnmatch_flags; @@ -487,6 +494,14 @@ extern int errno; #endif ; +/* This is just like rprintf, but it also tries to print some + * representation of the error code. Normally errcode = errno. */ +void rsyserr(enum logcode, int, const char *, ...) +#ifdef __GNUC__ + __attribute__ ((format (printf, 3, 4))) +#endif + ; + #ifdef REPLACE_INET_NTOA #define inet_ntoa rep_inet_ntoa #endif @@ -500,4 +515,8 @@ size_t strlcpy(char *d, const char *s, size_t bufsize); size_t strlcat(char *d, const char *s, size_t bufsize); #endif +#ifndef WEXITSTATUS +#define WEXITSTATUS(stat) ((int)(((stat)>>8)&0xFF)) +#endif + #define exit_cleanup(code) _exit_cleanup(code, __FILE__, __LINE__)