Refactorings to the filter code, most notably:
authorMatt McCutchen <matt@mattmccutchen.net>
Sat, 23 May 2009 17:59:14 +0000 (10:59 -0700)
committerWayne Davison <wayned@samba.org>
Sat, 23 May 2009 18:20:40 +0000 (11:20 -0700)
commitc8fa85b23bfebc68f0ab2e0464937f5ee4a8bf69
treeae6861995306bbd3fd94584e7555f38b73b4fcb5
parenta61ec6b1688ea64fba7c03d69d6f75a7e0b24c61
Refactorings to the filter code, most notably:

- Improve function name: parse_rule -> parse_filter_str (to make the
  similarity with parse_filter_file clearer, and better indicate that
  it can parse multiple rules when FILTRULE_WORD_SPLIT is specified).

- In preparation for rule prefixes containing information beyond the
  rflags, change the code to pass around a full "template" filter_rule
  instead of just rflags.  Callers of parse_filter_{str,file} that want
  to specify only rflags can use rule_template(rflags) .

- Remove the MODIFIERS_* strings and instead hand-code the condition
  under which each modifier is valid.  This should make it easier to
  see that the conditions are correct.

- Tighten up default modifiers on merge rules:
  - Disallow "!" because it isn't useful.
  - If the merge rule specifies a side via "s" or "r", the rules in the
    file cannot also specify a side via "s", "r", "hide", etc.

[Patch was changed by Wayne a bit prior to application.]
batch.c
clientserver.c
compat.c
exclude.c
options.c
rsync.h
rsync.yo