• David Dykstra's avatar
    Prevent the -g option from preserving groups that a non-root receiver · 460f6b99
    David Dykstra authored
    does not belong to, in these two ways:
        1. If a group mapping doesn't exist for a group name, do not preserve
    	it for a non-root receiver.  This is especially evident with the
    	sender is a daemon using chroot because then no mappings are
    	available.
        2. Before setting the group on a file make sure that it is in the list
    	of groups returned by getgroups().  The same thing is done by chgrp
    	on systems that support bsd-style chown/chgrp, and this enforces
    	that it happens the same way on all systems.  Overhead is very
    	little, especially since most systems don't allow more then 16
    	groups per user.
    460f6b99
uidlist.c 6 KB