Provided by: libbobcat-dev_6.02.02-1_amd64 bug

NAME

       FBB::User - Provides the /etc/passwd info of the current user

SYNOPSIS

       #include <bobcat/user>
       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 <bobcat/user>
       #include <iostream>

       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).