X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/5dafe360de093f1f5af5c6232e3c2adb20bac027..4ab6125214981c3ce41e9ddd0cbef14ef3fdcfe0:/ifuncs.h diff --git a/ifuncs.h b/ifuncs.h index b74bcaea..656597ec 100644 --- a/ifuncs.h +++ b/ifuncs.h @@ -1,4 +1,20 @@ -/* Inline functions. */ +/* Inline functions for rsync. + * + * Copyright (C) 2007-2008 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 3 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, visit the http://fsf.org website. + */ static inline void alloc_xbuf(xbuf *xb, size_t sz) @@ -19,6 +35,14 @@ realloc_xbuf(xbuf *xb, size_t sz) xb->size = sz; } +static inline void +free_xbuf(xbuf *xb) +{ + if (xb->buf) + free(xb->buf); + memset(xb, 0, sizeof (xbuf)); +} + static inline int to_wire_mode(mode_t mode) { @@ -41,44 +65,23 @@ from_wire_mode(int mode) return mode; } -static inline int -isDigit(const char *ptr) -{ - return isdigit(*(unsigned char *)ptr); -} - -static inline int -isPrint(const char *ptr) -{ - return isprint(*(unsigned char *)ptr); -} - -static inline int -isSpace(const char *ptr) -{ - return isspace(*(unsigned char *)ptr); -} - -static inline int -isLower(const char *ptr) -{ - return islower(*(unsigned char *)ptr); -} - -static inline int -isUpper(const char *ptr) +static inline char * +d_name(struct dirent *di) { - return isupper(*(unsigned char *)ptr); -} - -static inline int -toLower(const char *ptr) -{ - return tolower(*(unsigned char *)ptr); +#ifdef HAVE_BROKEN_READDIR + return (di->d_name - 2); +#else + return di->d_name; +#endif } -static inline int -toUpper(const char *ptr) +static inline void +init_stat_x(stat_x *sx_p) { - return toupper(*(unsigned char *)ptr); +#ifdef SUPPORT_ACLS + sx_p->acc_acl = sx_p->def_acl = NULL; +#endif +#ifdef SUPPORT_XATTRS + sx_p->xattr = NULL; +#endif }