Index Index for
Section 3
Index Alphabetical
listing for S
Bottom of page Bottom of
page

sia_getpasswd(3)

NAME

sia_getpasswd, sia_getgroup - interface to the getpw* and getgr* routines for SIA (Security Integration Architecture)

SYNOPSIS

#include <sia.h> #include <siad.h> int sia_getpasswd( int function, int reentrant, union sia_get_params *params ); int sia_getgroup( int function, int reentrant, union sia_get_params *params );

LIBRARY

Standard C library (libc.so and libc.a)

PARAMETERS

function The function parameter is a subfunction selection code as defined by P_SET in the siad.h file. reentrant The reentrant parameter is a flag which is either REENTRANT (1) or NON_REENTRANT (0). NON_REENTRANT indicates that the result and buffer pointers passed in the params arguments will be returned pointing to static data. REENTRANT indicates that result and buffer are used as passed (caller provided storage). params The sia_get_params() is defined as follows: typedef struct { char *name; gid_t gid; struct group *result; char *buffer; int len; int pkgind; } group_params; typedef struct { char *name; uid_t uid; struct passwd *result; char *buffer; int len; int pkgind; } passwd_params; union sia_get_params { group_params group; passwd_params passwd; };

DESCRIPTION

The sia_getpasswd() routine provides thread locking for the libc_r routines (-D_THREAD_SAFE), provides static storage for non reentrant getpw* routines, and calls the appropriate siad_getpw* routine. This routine is called by getpwnam(), getpwnam_r(), getpwuid(), getpwuid_r(), getpwent(), and getpwent_r(). The sia_getgroup() routine provides thread locking for libc_r routines (-D_THREAD_SAFE), provide static storage for non reentrant getgr* routines, and calls the appropriate siad_getgr* routine. This routine is called by getgrnam(), getgrnam_r(), getgrgid(), getgrgid_r(), getgrent(), and getgrent_r().

RETURN VALUES

The sia_getgroup() and sia_getpasswd() routines return either SIASUCCESS or SIAFAIL.

ERRORS

The errno value is not (normally) set explicitly by sia_* routines. The errno values are those returned from the dynamic loader interface, from dependent (siad_*) routines, or from malloc. Possible errors include resource constraints (no memory) and various authentication failures.

FILES

/etc/group /etc/passwd /etc/sia/matrix.conf

SEE ALSO

getgrent(3), getpwent(3), matrix.conf(4) Security

Index Index for
Section 3
Index Alphabetical
listing for S
Top of page Top of
page