If a site supports the SITE GROUP and SITE GPASS commands it is necessary to be able to add, delete and list enhanced access group information. The privatepw utility is used to update this information in the group access (aka, ftpgroups) file. This is meant as an administrative tool and not to be run by the general user population. This command requires read/write permission to the appropriate ftpgroups file.
After user logs in, the SITE GROUP and SITE GPASS commands may be used to specify an enhanced access group and associated password. If the group name and password are valid, the user becomes (via setegid()) a member of the group list in the group access file (specified by the _PATH_PRIVATE define in pathnames.h).The format of the group access file is:
access_group_name:encrypted_password:real_group_name
where access_group_name is an arbitrary (alphanumeric + punctuation) string. encrypted_password is the password encrypted via crypt(3), exactly like in /etc/passwd. real_group_name is the name of a valid group listed in /etc/group.
privatepw [-c] [-f ftpgroups] [-g group] accessgroupprivatepw [-d] [-f ftpgroups] accessgroup
privatepw [-l] [-f ftpgroups]
-c Create a new ftpgroups file. -d Delete the specified accessgroup's information from the ftpgroups file. -g group Set the real system group to the group specified. This is valid only when adding a new accessgroup or changing an existing accessgroup's password. -f ftpgroups Use the specified ftpgroups file for all updates. -l List the contents of the appropriate ftpgroups file. -? Display a simple help usage message.
You can get the current version from ftp://ftp.landfield.com/wu-ftpd/privatepw/ or from this page.
As Larry Wall used to say:IMPORTANT! Help save the world! Communicate any problems and suggested patches to me, [email protected], so we can keep the world in sync. If you have a problem, there's someone else out there who either has had or will have the same problem.
PLEASE NOTE:
Currently this software has only been tested on Solaris 2.5. If you run into portability problems and need to make changes to it, please forward a copy of your changes to me so that I can include them in the baselined sources.THANKS!