X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/90b13cf60687c4d2e18964423cd44abab6500167..e7c67065c060d500eba8d073da9568db2c658aad:/rsync.h diff --git a/rsync.h b/rsync.h index b6038f73..3e5217c1 100644 --- a/rsync.h +++ b/rsync.h @@ -1,23 +1,23 @@ /* - Copyright (C) by Andrew Tridgell 1996, 2000 - Copyright (C) Paul Mackerras 1996 - Copyright (C) 2001, 2002 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 - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -*/ - + * Copyright (C) 1996, 2000 Andrew Tridgell + * Copyright (C) 1996 Paul Mackerras + * Copyright (C) 2001, 2002 Martin Pool + * Copyright (C) 2003, 2004, 2005, 2006 Wayne Davison + * + * 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 + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. + */ #define False 0 #define True 1 @@ -135,13 +135,15 @@ #define FNAMECMP_FUZZY 0x83 /* For use by the itemize_changes code */ +#define ITEM_REPORT_ATIME (1<<0) #define ITEM_REPORT_CHECKSUM (1<<1) #define ITEM_REPORT_SIZE (1<<2) #define ITEM_REPORT_TIME (1<<3) #define ITEM_REPORT_PERMS (1<<4) #define ITEM_REPORT_OWNER (1<<5) #define ITEM_REPORT_GROUP (1<<6) -#define ITEM_REPORT_XATTRS (1<<7) +#define ITEM_REPORT_ACL (1<<7) +#define ITEM_REPORT_XATTR (1<<8) #define ITEM_BASIS_TYPE_FOLLOWS (1<<11) #define ITEM_XNAME_FOLLOWS (1<<12) #define ITEM_IS_NEW (1<<13) @@ -560,6 +562,7 @@ struct sum_buf { OFF_T offset; /**< offset in file of this chunk */ int32 len; /**< length of chunk of file */ uint32 sum1; /**< simple checksum */ + int32 chain; /**< next hash-table collision */ short flags; /**< flag bits */ char sum2[SUM_LENGTH]; /**< checksum */ }; @@ -648,6 +651,13 @@ struct chmod_mode_struct; #include "lib/permstring.h" #include "lib/addrinfo.h" +#if !defined __GNUC__ || defined __APPLE__ +/* Apparently the OS X port of gcc gags on __attribute__. + * + * */ +#define __attribute__(x) +#endif + #define UNUSED(x) x __attribute__((__unused__)) #include "proto.h" @@ -693,7 +703,7 @@ extern int errno; #define SUPPORT_HARD_LINKS 1 #endif -#if defined HAVE_SIGACTION && defined HAVE_SIGPROCMASK +#ifdef HAVE_SIGACTION #define SIGACTION(n,h) sigact.sa_handler=(h), sigaction((n),&sigact,NULL) #define signal(n,h) we_need_to_call_SIGACTION_not_signal(n,h) #else @@ -806,14 +816,6 @@ extern int errno; /* handler for null strings in printf format */ #define NS(s) ((s)?(s):"") -#if !defined __GNUC__ || defined __APPLE__ -/* Apparently the OS X port of gcc gags on __attribute__. - * - * */ -#define __attribute__(x) - -#endif - /* Convenient wrappers for malloc and realloc. Use them. */ #define new(type) ((type *)malloc(sizeof(type))) #define new_array(type, num) ((type *)_new_array(sizeof(type), (num))) @@ -830,10 +832,6 @@ void rsyserr(enum logcode, int, const char *, ...) __attribute__((format (printf, 3, 4))) ; -#ifdef REPLACE_INET_NTOA -#define inet_ntoa rep_inet_ntoa -#endif - /* Make sure that the O_BINARY flag is defined. */ #ifndef O_BINARY #define O_BINARY 0