Make gcc die on init overflow of an array. - Use -pedantic-errors with gcc to make an array-init fatal. - Fix all the extra warnings that gcc outputs due to this option. - Also add -Wno-pedantic to gcc if we're using the internal popt code (since it has lots of pedantic issues).
A few word tweaks.
Don't turn off the user's open-noatime unless the module is forcing the value.
Simplify the daemon parameter definitions The code now derives all the struct defines, default value assignments, parser-param defines, and lp_foo() accessor functions from a single list of daemon parameters.
Avoid crash of transfer logging w/default log format.
Some memory allocation improvements - All the memory-allocation macros now auto-check for failure and exit with a failure message that incudes the caller's file and lineno info. This includes strdup(). - Added the `--max-alloc=SIZE` option to be able to override the memory allocator's sanity-check limit. It defaults to 1G (as before). Fixes bugzilla bug 12769.
Use documentation to extract 2 more .h lists - Change default_cvsignore char[] into a define. - Make the DEFAULT_DONT_COMPRESS and DEFAULT_CVSIGNORE defines get set based on their info in rsync.1.md. - Add a few more don't-compress suffixes from Simon Matter.
Rename "haproxy header" to "proxy protocol".
Add `haproxy header` parameter to rsync daemon
Add `early exec` daemon parameter. Inspired by Ciprian Dorin Craciun's `bootstrap exec` patch.
Add extensions to the default no-compress list. Fixes bug #13749.
Spelling fixes from a Fossies run done by Jens.
Set Copyright years and make them easier to update I replaced git-set-file-times with an improved version that I wrote recently (in python3). A new script uses it to figure out the last-modified year for each *.[ch] file and updates its copyright. It also puts the latest year into the latest-year.h file for the output of --version.
Fix the default skip-compress list. The default value of the skip-compress list actually comes from the daemon's default lp_dont_compress() value, but a while back the vars stopped getting default values in a non-daemon run. I added a call to reset_daemon_vars() so that the "Vars" values get set from "Defaults".
Tweak the copyright year.
Save each expanded daemon-config string on first use to avoid a new alloc on every use (one that was not freed).
No need to strdup each new section since we stopped using free().
Tweak copyright date.
Add "daemon chroot|uid|gid" parameters. This allows the daemon to run chrooted as any uid+gid you like (prior to the transfer possibly changing the chroot and/or the uid+gid further). Based on the patch in #12817.
Add "syslog tag" to rsync daemon config.