libproject(3LIB) Interface Libraries libproject(3LIB)NAME
libproject - project database access library
SYNOPSIS
cc [ flag... ] file... -lproject [ library... ]
#include <project.h>
DESCRIPTION
Functions in this library provide various interfaces to extract data from the project(4) database. The header provides structure and func-
tion declarations for all library interfaces.
INTERFACES
The shared object libproject.so.1 provides the public interfaces defined below. See intro(3) for additional information on shared object
interfaces.
endprojent fgetprojent
getdefaultproj getprojbyid
getprojbyname getprojent
getprojidbyname inproj
project_walk setproject
setprojent
FILES
/usr/lib/libproject.so.1 shared object
/usr/lib/64/libproject.so.1 64-bit shared object
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWcsl (32-bit) |
+-----------------------------+-----------------------------+
| |SUNWcslx (64-bit) |
+-----------------------------+-----------------------------+
|Interface Stability |Evolving |
+-----------------------------+-----------------------------+
|MT-Level |Safe |
+-----------------------------+-----------------------------+
SEE ALSO pvs(1), intro(3), getprojent(3PROJECT), project(4), attributes(5), standards(5)SunOS 5.10 22 May 2003 libproject(3LIB)
Check Out this Related Man Page
Project(3PERL) Perl Library Functions Project(3PERL)NAME
Project - Perl interface to Projects
SYNOPSIS
use Sun::Solaris::Project qw(:ALL);
my $projid = getprojid();
DESCRIPTION
This module provides wrappers for the Project-related system calls and the libproject(3LIB) library. Also provided are constants from the
various Project-related headers.
Constants
MAXPROJID, PROJNAME_MAX, PROJF_PATH, PROJECT_BUFSZ, SETPROJ_ERR_TASK, and SETPROJ_ERR_POOL.
Functions
getprojid()
This function returns the numeric project ID of the calling process or undef if the underlying getprojid(2) system call is unsuccess-
ful.
setproject($project, $user, $flags)
If $user is a member of the project specified by $project, setproject() creates a new task and associates the appropriate resource con-
trols with the process, task, and project. This function returns 0 on success. If the underlying task creation fails, SETPROJ_ERR_TASK
is returned. If pool assignment fails, SETPROJ_ERR_POOL is returned. If any resource attribute assignments fail, an integer value cor-
responding to the offset of the failed attribute assignment in the project database is returned. See setproject(3PROJECT).
activeprojects()
This function returns a list of the currently active projects on the system. Each value in the list is the numeric ID of a currently
active project.
getprojent()
This function returns the next entry from the project database. When called in a scalar context, getprojent() returns only the name of
the project. When called in a list context, getprojent() returns a 6-element list consisting of:
($name, $projid, $comment, @users, @groups, $attr)
@users and @groups are returned as arrays containing the appropriate user or project lists. On end-of-file undef is returned.
setprojent()
This function rewinds the project database to the beginning of the file.
endprojent()
This function closes the project database.
getprojbyname($name)
This function searches the project database for an entry with the specified nam. It returns a 6-element list as returned by getpro-
jent() if the entry is found and undef if it cannot be found.
getprojbyid($id)
This function searches the project database for an entry with the specified ID. It returns a 6-element list as returned by getprojent()
if the entry is found or undef if it cannot be found.
getdefaultproj($user)
This function returns the default project entry for the specified user in the same format as getprojent(). It returns undef if the user
cannot be found. See getdefaultproj(3PROJECT) for information about the lookup process.
fgetprojent($filehandle)
This function returns the next project entry from $filehandle, a Perl file handle that must refer to a previously opened file in
project(4) format. Return values are the same as for getprojent().
inproj($user, $project)
This function checks whether the specified user is able to use the project. This function returns true if the user can use the project
and false otherwise. See inproj(3PROJECT).
getprojidbyname($project)
This function searches the project database for the specified project. It returns the project ID if the project is found and undef if
it is not found.
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 getprojid()
:LIBCALLS setproject(), activeprojects(), getprojent(), setprojent(), endprojent(), getprojbyname(), getprojbyid(), getdefaultproj(),
fgetprojent(), inproj(), and getprojidbyname()
:CONSTANTS MAXPROJID, PROJNAME_MAX, PROJF_PATH, PROJECT_BUFSZ, SETPROJ_ERR_TASK, and SETPROJ_ERR_POOL
:ALL :SYSCALLS, :LIBCALLS, and :CONSTANTS
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWpl5u |
+-----------------------------+-----------------------------+
|Interface Stability |Evolving |
+-----------------------------+-----------------------------+
SEE ALSO getprojid(2), getdefaultproj(3PROJECT), inproj(3PROJECT), libproject(3LIB), setproject(3PROJECT), project(4), attributes(5)SunOS 5.11 1 Dec 2002 Project(3PERL)