Exacct man page on OpenIndiana

Man page or keyword search:  
man Server   20441 pages
apropos Keyword Search (all sections)
Output format
OpenIndiana logo
[printable version]

Exacct(3PERL)		    Perl Library Functions		 Exacct(3PERL)

NAME
       Exacct - exacct system calls and error handling

SYNOPSIS
       use Sun::Solaris::Exacct qw(:EXACCT_ALL);
       my $ea_rec = getacct(P_PID, $$);

DESCRIPTION
       This  module  provides access to the ea_error(3EXACCT) function and for
       all the extended accounting system calls. Constants  from  the  various
       libexacct(3LIB) header files are also provided.

   Constants
       The  P_PID, P_TASKID, P_PROJID and all the EW_*, EP_*, EXR_* macros are
       provided as Perl constants.

   Functions
       getacct($idtype, $id)

	   The $idtype parameter must be either P_TASKID or P_PID and $id must
	   be  a  corresponding	 task  or process ID. This function returns an
	   object  of  type  Sun::Solaris::Exacct::Object,  representing   the
	   unpacked  accounting	 buffer	 returned by the underlying getacct(2)
	   system call. In the event of error, undef is returned.

       putacct($idtype, $id, $record)

	   The $idtype parameter must be either P_TASKID or P_PID and $id must
	   be  a  corresponding	 task  or  process  ID.	 If $record is of type
	   Sun::Solaris::Exacct::Object, it is converted to the	 corresponding
	   packed  libexacct  object and passed to the putacct(2) system call.
	   If $record is not of type Sun::Solaris::Exacct::Object it  is  con‐
	   verted  to  a  string  using	 the  normal Perl conversion rules and
	   stored as a raw  buffer.  For  predictable  and  endian-independent
	   results,  any  raw  buffers	should	be  constructed using the Perl
	   pack() function. This function returns true on success and false on
	   failure.

       wracct($idtype, $id, $flags)

	   The $idtype parameter must be either P_TASKID or P_PID and $id must
	   be a corresponding task or process ID. The $flags parameter must be
	   either   EW_INTERVAL	 or  EW_PARTIAL.  The  parameters  are	passed
	   directly to the underlying wracct(2)	 system	 call.	This  function
	   returns true on success and false on failure.

       ea_error()

	   This function provides access to the ea_error(3EXACCT) function. It
	   returns a double-typed scalar that becomes one of  the  EXR_*  con‐
	   stants. In a string context it becomes a descriptive error message.
	   This is the exacct equivalent to the $!(errno) Perl variable.

       ea_error_str()

	   This function returns a double-typed scalar that in a numeric  con‐
	   text will be one of the EXR_* constants as returned by ea_error. In
	   a string context it describes the value returned  by	 ea_error.  If
	   ea_error returns EXR_SYSCALL_FAIL, the string value returned is the
	   value returned by strerror(3C). This function is provided as a con‐
	   venience  so that repeated blocks of code like the following can be
	   avoided:

	     if (ea_error() == EXR_SYSCALL_FAIL) {
		     print("error: $!\n");
	     } else {
		     print("error: ", ea_error(), "\n");
	     }

       ea_register_catalog($cat_pfx, $catalog_id, $export, @idlist)

	   This	  convenience	function   is	 a    wrapper	 around	   the
	   Sun::Solaris::Exacct::Catalog->register() method.

       ea_new_catalog($integer)
       ea_new_catalog($cat_obj)
       ea_new_catalog($type, $catalog, $id)

	   These    convenience	   functions	are    wrappers	  around   the
	   Sun::Solaris::Exacct::Catalog->new()	 method.   See	 Exacct::Cata‐
	   log(3PERL).

       ea_new_file($name, $oflags, creator => $creator, aflags => $aflags,
       mode => $mode)

	   This	  convenience	function   is	 a    wrapper	 around	   the
	   Sun::Solaris::Exacct::File->new() method. See Exacct::File(3PERL).

       ea_new_item($catalog, $value)

	   This	   convenience	  function    is    a	wrapper	  around   the
	   Sun::Solaris::Exacct::Object::Item->new()	    method.	   See
	   Exacct::Object::Item(3PERL).

       ea_new_group($catalog, @objects)

	   This	   convenience	  function    is    a	wrapper	  around   the
	   Sun::Solaris::Exacct::Object::Group->new()	    method.	   See
	   Exacct::Object::Group(3PERL).

       ea_dump_object($object, $filehandle)

	   This	   convenience	  function    is    a	wrapper	  around   the
	   Sun::Solaris::Exacct::Object->dump()		 method.	   See
	   Exacct::Object(3PERL).

   Class methods
       None.

   Object methods
       None.

   Exports
       By default nothing is exported from this module. The following tags can
       be used to selectively import constants and functions defined  in  this
       module:

       :SYSCALLS	    getacct(), putacct(), and wracct()

       :LIBCALLS	    ea_error() and ea_error_str()

       :CONSTANTS	    P_PID, P_TASKID, P_PROJID, EW_*, EP_*, and EXR_*

       :SHORTHAND	    ea_register_catalog(),	     ea_new_catalog(),
			    ea_new_file(), ea_new_item(), and ea_new_group()

       :ALL		    :SYSCALLS, :LIBCALLS, :CONSTANTS, and :SHORTHAND

       :EXACCT_CONSTANTS    :CONSTANTS,	  plus	 the   :CONSTANTS   tags   for
			    Sun::Solaris::Catalog,   Sun::Solaris::File,   and
			    Sun::Solaris::Object

       :EXACCT_ALL	    :ALL, plus the :ALL tags  for  Sun::Solaris::Cata‐
			    log, Sun::Solaris::File, and Sun::Solaris::Object

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       ┌─────────────────────────────┬─────────────────────────────┐
       │      ATTRIBUTE TYPE	     │	    ATTRIBUTE VALUE	   │
       ├─────────────────────────────┼─────────────────────────────┤
       │Availability		     │SUNWpl5u			   │
       ├─────────────────────────────┼─────────────────────────────┤
       │Interface Stability	     │Committed			   │
       └─────────────────────────────┴─────────────────────────────┘

SEE ALSO
       getacct(2),  putacct(2),	 wracct(2),  ea_error(3EXACCT),	 Exacct::Cata‐
       log(3PERL),	   Exacct::File(3PERL),		Exacct::Object(3PERL),
       Exacct::Object::Group(3PERL),	Exacct::Object::Item(3PERL),	libex‐
       acct(3LIB), attributes(5)

NOTES
       The modules described in the section 3PERL manual pages make  extensive
       use  of the Perl "double-typed scalar" facility. This facility allows a
       scalar value to behave either as an integer or as a  string,  depending
       upon context. It is the same behavior as exhibited by the $! Perl vari‐
       able (errno). It is useful because it avoids the need to	 map  from  an
       integer	value  to  the	corresponding  string to display a value. Some
       examples are provided below:

	 # Assume $obj is a Sun::Solaris::Item
	 my $type = $obj->type();

	 # Print "2 EO_ITEM"
	 printf("%d %s\n", $type, $type);

	 # Behave as an integer, $i == 2
	 my $i = 0 + $type;

	 # Behave as a string, $s = "abc EO_ITEM xyx"
	 my $s = "abc $type xyz";

       Wherever a function or method is documented as returning a double-typed
       scalar, the returned value exhibits this type of behavior.

SunOS 5.11			  1 Dec 2002			 Exacct(3PERL)
[top]

List of man pages available for OpenIndiana

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net