FBB::User(3bobcat) /etc/passwd user info FBB::User(3bobcat) NAME FBB::User - Provides the /etc/passwd info of the current user SYNOPSIS #include Linking option: -lbobcat DESCRIPTION This class retrieves the information of the current user from the information in /etc/passwd. The class is a simple wrapper class around the getpwent(3) function. NAMESPACE FBB All constructors, members, operators and manipulators, mentioned in this man-page, are defined in the namespace FBB. INHERITS FROM - CONSTRUCTORS o User(): The default constructor determines the current user's data. This constructor throws an Exception exception if it did not properly complete because the current user name could not be found in /etc/passwd. o User(size_t uid): The data of the user whose user-id is uid are determined. If the data could not be found an Exception is thrown. o User(std::string const &name): The data of the user whose user-name is name are determined. If the data could not be found an Exception is thrown. Copy and move constructors (and assignment operators) are available. MEMBER FUNCTIONS o size_t eGroupid() const: Returns the user's effective group-id. o size_t eUserid() const: Returns the user's effective user-id. o size_t groupid() const: Returns the user's group-id. o std::string homedir() const: Returns the user's home directory (including a trailing /). o bool inGroup(size_t gid, bool useEffective = true) const: Returns true if the current user is a member of group gid, otherwise false is returned. The user's effective group id is also checked if useEffective is specified as true (which is provided as default function argument). o std::string name() const: Returns the user's user-name. o std::string password() const: Returns the user's encrypted password. But see also the BUGS section. o std::string realname() const: Returns the user's real name, as listed in the /etc/passwd's gecos field. o std::string shell() const: Returns the user's shell. o size_t userid() const: Returns the user's user-id. EXAMPLE #include #include using namespace std; using namespace FBB; int main() { User user; cout << "\n" "name : " << user.name() << "\n" << "password : " << user.password() << "\n" << "user id : " << user.userid() << "\n" << "group id : " << user.groupid() << "\n" << "real name : " << user.realname() << "\n" << "home dir : " << user.homedir() << "\n" << "shell : " << user.shell() << "\n" << endl; } FILES bobcat/user - defines the class interface SEE ALSO bobcat(7), getpwent(3) BUGS If the user is a member of multiple groups, only the group id listed in /etc/passwd is returned by groupid(). If shadow passwording is used, the string returned by password() will probably not contain the encrypted password. BOBCAT PROJECT FILES o https://fbb-git.gitlab.io/bobcat/: gitlab project page; o bobcat_6.02.02-x.dsc: detached signature; o bobcat_6.02.02-x.tar.gz: source archive; o bobcat_6.02.02-x_i386.changes: change log; o libbobcat1_6.02.02-x_*.deb: debian package containing the libraries; o libbobcat1-dev_6.02.02-x_*.deb: debian package containing the libraries, headers and manual pages; BOBCAT Bobcat is an acronym of `Brokken's Own Base Classes And Templates'. COPYRIGHT This is free software, distributed under the terms of the GNU General Public License (GPL). AUTHOR Frank B. Brokken (f.b.brokken@rug.nl). libbobcat-dev_6.02.02 2005-2022 FBB::User(3bobcat)