aboutsummaryrefslogtreecommitdiffstats
path: root/exclude.c
Commit message (Collapse)AuthorAgeFilesLines
* The exclude code wasn't sending the MATCHFLG_NEGATE (!) char to theWayne Davison2006-11-211-0/+2
| | | | other side.
* - Added the 'p' (perishable) flag to the filter rules, as suggestedWayne Davison2006-11-111-3/+15
| | | | | | | by Matt. - If ignore_perishable is set, we ignore all perishable rules. - Mark all default-cvsignore rules as perishable (e.g. excludes such as *.o CVS .svn/ will not prevent a directory from being deleted).
* Tweaked an exit_cleanup() value.Wayne Davison2006-11-111-1/+1
|
* Cast pat_len to an int when using it as a field width.Wayne Davison2006-10-131-1/+1
|
* Fixed an infinite loop in parse_rule() when a filter rule is tooWayne Davison2006-10-131-8/+8
| | | | | longer for MAXPATHLEN. Also fixed a couple spots nearby that were erroneously treating pointer "cp" as a '\0'-terminated string.
* Some minor improvements to parse_merge_name().Wayne Davison2006-10-121-12/+11
|
* The --delete-excluded code now also drops any merge file that wasWayne Davison2006-09-091-6/+12
| | | | | marked as MATCHFLG_NO_PREFIXES because they can only contain include/exclude rules.
* Matt pointed out that the code was not properly dropping excludesWayne Davison2006-09-011-0/+11
| | | | | that were read from a per-dir merge file when --delete-excluded is enabled. This additional code fixes that.
* Make sure that --delete-excluded does not elide a per-dir mergeWayne Davison2006-08-311-1/+2
| | | | filter file, while still dumping the .cvsignore file from -C.
* Fixed an exclude bug with --relative excluding "/".Wayne Davison2006-08-121-2/+2
|
* Added ".bzr/" to the default CVS exclusions.Wayne Davison2006-05-111-1/+1
|
* 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.