aboutsummaryrefslogtreecommitdiffstats
path: root/exclude.c
Commit message (Collapse)AuthorAgeFilesLines
...
* Use the new calling syntax for sanitize_path().Wayne Davison2006-05-031-1/+1
|
* Updated the FSF's address to an even newer one.Wayne Davison2006-04-251-3/+3
|
* - Updated the address for the FSF in the opening comment.Wayne Davison2006-04-251-12/+9
| | | | | | | - Standardized the format of the opening comment, including adding a brief description of what's in the file for those that lacked it. - Added some missing copyright lines. - Some minor whitespace tweaks (in a few of the files).
* Use the regular delete* vars instead of the saw_delete* varsWayne Davison2006-03-281-4/+2
| | | | (which are no longer around).
* Fixed a problem when copying an absolute source path withWayne Davison2006-03-131-1/+1
| | | | the --relative option enabled.
* - We need to send exclude info from the client to a server-receiverWayne Davison2006-01-281-9/+13
| | | | | | | when --prune-empty-dirs was specified. - Changed the output of debug include/exclude/show/hide/risk/protect messages to use the appropriate filter terminology instead of always using the (potentially unclear) include/exclude terms.
* Use the new saw_delete* variables to ensure that the server sideWayne Davison2006-01-211-2/+4
| | | | always reads the exclude information when it is present.
* Got rid of calls to (the soon to vanish) safe_fname() function.Wayne Davison2006-01-131-5/+4
|
* We need to call clearerr() when getc() returns EOF with errno == EINTR.Wayne Davison2006-01-061-1/+3
|
* We use the new wildmatch_array() and litmatch_array() functions toWayne Davison2006-01-021-37/+41
| | | | | | | | make our include/exclude code easier to read and maintain, and to eliminate a buffer copy when handling an absolute-path pattern (which eliminated the full_name[] buffer). Also added handling for the new MATCHFLG_WILD3_SUFFIX define that allows a string that ends with "dir/***" to match the "dir" as well as its contents.
* - Renamed match_start -> anchored_match.Wayne Davison2005-12-241-11/+11
| | | | | - Twiddled one comment and added another. - Twiddled the placement of two else statements.
* Tweaked the debug output for cvs_filter_list and server_filter_list.Wayne Davison2005-12-171-2/+2
|
* Support new XFLG_ABS_IF_SLASH flag.Wayne Davison2005-10-071-5/+9
|
* Really fix '!' in a .cvsignore file this time.Wayne Davison2005-09-161-1/+2
|
* Use BIGPATHBUFLEN for the length of two line buffers.Wayne Davison2005-07-291-2/+2
|
* Changed overflow() to overflow_exit().Wayne Davison2005-07-071-1/+1
|
* A slightly better fix than the last one (though it won't make anyWayne Davison2005-04-261-2/+2
| | | | difference in how the code behaves due to how it is called).
* Fixed problem with -C when we're the sender, the remote is using anWayne Davison2005-04-261-2/+1
| | | | | older protocol, and we're not sending the exclude list (i.e. the user didn't specify --delete or they specified --delete-ignored).
* Make sure that "- !" or "+ !" aren't interpreted as a list-clearingWayne Davison2005-04-071-2/+1
| | | | token.
* Tweaked an error message.Wayne Davison2005-02-271-1/+1
|
* Fixed a problem sending include rules to an older rsync.Wayne Davison2005-02-261-3/+3
|
* Have rule_strcmp() accept and return a uchar*.Wayne Davison2005-02-201-2/+2
|
* Rules read in from per-dir merge files need to have non-applicableWayne Davison2005-02-191-0/+13
| | | | | rules filtered out before the rule gets stored (not in a post- filtering pass like the rules that are read-in prior to the run).
* - Added modifiers for the include/exclude rules that makes themWayne Davison2005-02-121-10/+79
| | | | | | | | | | | | | | | | | apply to the indicated (sender/receiver) side. - Added the hide/show and protect/risk filter rules as an alternate way to specify sender-/receiver-specific include/exclude rules. - send_rules() now allows f_out to be -1 to indicate that the list should be scanned but not sent. - send_rules() now filters the list to remove any items that don't apply to the current side (after sending the item to the other side when f_out != -1). - {send,recv}_filter_list() now transfer the list, even when the receiver is the server and --delete-excluded was specified (the exchanged list is appropriately filtered, of course). - recv_filter_list() uses send_rules() to trim non-applicable rules when we're a local-server (because we got our filter list without send/recv calls when fork() duplicated it).
* Changed rule_match() to rule_strcmp(). Likewise for theWayne Davison2005-02-111-7/+7
| | | | define RULE_MATCH() being changed into RULE_STRCMP().
* Allow a ',' to prefix the MODIFIERS for a single-letter filter rule.Wayne Davison2005-02-081-0/+2
|
* - Added long-name filter rules.Wayne Davison2005-02-081-2/+39
| | | | | - Only parse the "!" token when MATCHFLG_NO_PREFIXES is set if MATCHFLG_CVS_IGNORE is also set.
* Added missing call to safe_fname().Wayne Davison2005-02-071-2/+3
|
* Fixed an off-by-one error in the prefix-length checking inWayne Davison2005-02-051-6/+7
| | | | get_rule_prefix().
* Improved the name of a variable.Wayne Davison2005-02-051-3/+3
|
* - Moved get_cvs_excludes() up above its only use and made it static.Wayne Davison2005-02-041-33/+32
| | | | - Changed get_cvs_excludes() to make an mflags arg.
* If we're a "local server" (i.e. we just forked a server for aWayne Davison2005-02-041-4/+5
| | | | | local transfer), don't duplicate all the filter rules that we already know about in the forked process.
* Fixed the way get_rule_prefix() turns the MATCHFLG_WORD_SPLIT flagWayne Davison2005-02-041-2/+2
| | | | back into a modifier character.
* - Changed filter_rule() to add_rule().Wayne Davison2005-02-041-100/+166
| | | | | | | | | | | | | | | - Improved the debug info coming from add_rule(). - Changed add_filter() to parse_rule() and add_filter_file() to parse_filter_file(). - Changed get_filter_tok() to parse_rule_tok(). - Made the mflags a uint32. - Added an extra arg to get_rule_prefix() to indicate if we're building the options for transmission or other purposes. - The 'C' modifier can now be applied to a '-' rule, so it now sets a new flag: MATCHFLG_CVS_IGNORE. - The send_filter_list() and recv_filter_list() functions now handle all the logic needed to do the right thing for -C (this used to be in main.c).
* Fixed the MODIFIERS_MERGE_FILE define.Wayne Davison2005-02-041-1/+1
|
* Added an mflags arg to get_filter_tok(), add_filter_file(), andWayne Davison2005-02-031-98/+103
| | | | | | | | add_filter(). This made for less flag conversion between various MATCHFLG_* and XFLG_* values. It also made it easy to fix a bug in the handling of no-prefix per-directory include/exclude files. We also use the new XFLG_OLD_PREFIXES and MATCHFLGS_FROM_CONTAINER defines.
* Implemented a "!" modifier for filter rules that lets a rule triggerWayne Davison2005-02-031-8/+12
| | | | on a non-matching pattern.
* Changed the "s" modifier to "w" for a word-splitting merge file.Wayne Davison2005-01-311-1/+1
|
* - Renamed make_filter() to filter_rule().Wayne Davison2005-01-291-37/+38
| | | | | | | | | | | | | | | - Added the "/" modifier to the -/+ filter rules to allow the rule to specify an absolute path (sets MATCHFLG_ABS_PATH). - Added the passing of the xflgags to filter_rule() and key off XFLG_ANCHORED2ABS to prepend the current dirbuf value (was keing off MATCHFLG_ABS_PATH). - We no longer allow a '=' to separate the filter rule from its arg (just a single space or an underscore). - For triple verbose levels, mention when we look for a filter file even if we don't find it (used to only mention the file when it was found). - A chrooted daemon process now includes /.cvsignore (inside the chrooted hierarchy) instead of $HOME/.cvsignore.
* Don't allow the user to specify a filter file that is excludedWayne Davison2005-01-281-3/+12
| | | | by a daemon's config options.
* Case uchar pointer to a char pointer when calling strlen().Wayne Davison2005-01-281-1/+1
|
* - Moved the code that turns rule flags into chars into a newWayne Davison2005-01-251-43/+54
| | | | | function called get_rule_prefix(). - Don't pass the per-dir .cvsignore rule from -C for protocols < 29.
* Renamed several exclude-related functions/variables using newWayne Davison2005-01-251-97/+96
| | | | filter terminology.
* Don't try to allocate zero bytes in push_local_excludes().Wayne Davison2005-01-251-0/+6
|
* Implemented the core of the merge-file and per-dir merge-file supportWayne Davison2005-01-251-69/+583
| | | | | | | | | | | | for the --filter option. Some noteworthy changes: - Added push_local_excludes() and pop_local_excludes() to implement the changes needed as we go from directory to directory (this takes the place of the old local_exclude_list var that only handled the .cvsignore files). These per-dir excludes are linked into the same exclude list as the global excludes. - The exclude list is transferred as filter rules to an rsync that talks protocol 29 or above. It limits itself to just include/exclude rules for older rsyncs.
* Changed a comment.Wayne Davison2005-01-221-5/+3
|
* Aid forward-compatibility in the include/exclude syntax by puttingWayne Davison2005-01-131-1/+1
| | | | | | a "- " in front of any name that starts with a '+' or a '-' and would otherwise be unprefixed (the old code only did this if the '+' or '-' was followed by a space).
* Re-enable the "!" token-handling in a .cvsignore file.Wayne Davison2004-10-061-3/+4
|
* In get_exclude_tok(), if XFLG_DIRECTORY was passed in the xflags,Wayne Davison2004-09-221-0/+2
| | | | set MATCHFLG_DIRECTORY in the mflags we return.
* A minor improvement in check_one_exclude().Wayne Davison2004-08-101-7/+7
|