- Fixed a bug using --numeric-ids as non-root when the receiver
does not have permissions to set one or more of the gids.
- If the add_[ug]id() routine couldn't find a name for an ID, we
still note the ID in our list of IDs so that we don't try to
look it up again (and again). (The name-less IDs are stripped
when sending the IDs from the sender to the receiver.)
- Created a better add_to_list() function that handles the linking
of the new node into the list (rather than the caller doing it).
- Added new internal functions for some receiver-side work that
needed to be done in multiple places (the recv_add_[ug]id()
functions).
- We output debug info even for ID mappings that have no names.
This make the list complete and also notes which gids get
mapped to -1 (GID_NONE).
- Turned several while loops into for loops.