NAME

Unix::Sysadmin::User - user information class


SYNOPSIS

 use Unix::Sysadmin::User;
 $user = Unix::Sysadmin::User->new();
 returns an empty Unix::Sysadmin::User object.


DESCRIPTION

This class describes users in a Unix network. The class is organized so as to make it easier to produce passwd databases, HTML user lists and LDAP entries from the data represented.

Properties and methods are documented in the following section.


PROPERTIES AND METHODS

Constructors

 new()
      Returns an empty Unix::Sysadmin::User object.
 load(FILEHANDLE)
    creates a new object and loads its data from the open file
    handle FILEHANDLE. Reads data until a line containing 'USER'
    by itself is encountered

Properties

  firstname()
      get/set the user's first name
  middlename()
      get/set the user's middle name
  lastname()
      get/set the user's last name
  fullname()
      get the user's full name
  officephone()
    get/set the user's office phone number
  homephone()
    get/set the user's home phone number
  pagephone()
    get/set the user's pager phone number
  cellphone()
    get/set the user's cell phone number
  workemail()
    get/set the user's work email address
  homeemail()
    get/set the user's home email address
  homeaddress()
    get/set the user's home street address
  class()
    get/set the user's class, an arbitrary string unused at present
  uname()
      get/set the user's Unix username
  passwd()
    get/set the user's encrypted Unix password
  uid()
    get/set the user's Unix user id
  gid()
    get/set the user's Unix group id
  change()
    get/set the user's Unix password change interval
  expire()
    get/set the user's Unix password expire date
  gecos()
    get/set the user's Unix passwd description
  homedir()
    get/set the user's Unix homedir
  shell()
    get/set the user's Unix shell
  scope()
    Hosts this user is allowed on. 'ALL','NONE' or a colon
    separated list of hosts and/or netgroups. Netgroups
    are specified by a prefix of '+'. Defaults to 'ALL' if not
    otherwise specified.
  exp_allow()
    colon separated list of host names and/or netgroups
    if scope is 'NONE', or the host does not appear, allow these anyway
    ignored if scope is 'ALL'
  exp_deny()
    colon separated list of host names and/or netgroups
    if scope is 'ALL', or the host appears in the scope, deny these anyway
    ignored if scope is 'NONE'
  validsortorders()
    get the fields that User records may be sorted by.
    These are:
        byFirstname
        byLastname
        byClass
        byUname
        byUID
        byGID
        byShell
  defaultsortorder()
    This returns 'byUname'

Methods

  dump()
  print the object to stdout
  have({SORTORDER=>"sortorder",TARGET=>"target"}) or
  have("sortorder","target")
    compares the field indicated by "sortorder" (one of 
    $self->validsortorders()) with "target". Returns 1 on match, 
    0 otherwise.


SEE ALSO

Man(3) pages (programmer's docs):

the Unix::Sysadmin::Host manpage, the Unix::Sysadmin::User manpage, the Unix::Sysadmin::Automount manpage, the Unix::Sysadmin::Group manpage, the Unix::Sysadmin::Netgroup manpage, the Unix::Sysadmin::List manpage, the Unix::Sysadmin::Cmds manpage, the Unix::Sysadmin::Files manpage the Unix::Sysadmin::Utility manpage the Unix::Sysadmin::Config manpage, the Unix::Sysadmin::Scoped manpage

Man(4) pages (file formats):

the Unix::Sysadmin::Host.list manpage, the Unix::Sysadmin::User.list manpage, the Unix::Sysadmin::Automount.list manpage, the Unix::Sysadmin::Group.list manpage, the Unix::Sysadmin::Netgroup.list manpage

Man(1m) pages (manager's docs):

the Unix::Sysadmin manpage, the Unix::Sysadmin::Setup manpage the usasetup manpage

the usatest manpage

the usabackup manpage

the usaupdate manpage

the usapush manpage


AUTHOR

Howard Owen <hbo@egbok.com> =cut