*** UNIX MANUAL PAGE BROWSER ***

A Nergahak database for man pages research.

Navigation

Directory Browser

1Browse 4.4BSD4.4BSD
1Browse Digital UNIXDigital UNIX 4.0e
1Browse FreeBSDFreeBSD 14.3
1Browse MINIXMINIX 3.4.0rc6-d5e4fc0
1Browse NetBSDNetBSD 10.1
1Browse OpenBSDOpenBSD 7.7
1Browse UNIX v7Version 7 UNIX
1Browse UNIX v10Version 10 UNIX

Manual Page Search

Manual Page Result

0 Command: putesdfnam | Section: 3 | Source: Digital UNIX | File: putesdfnam.3.gz
getesdfent(3) Library Functions Manual getesdfent(3) NAME getesdfent, getesdfnam, setprdfent, endprdfent, putesdfnam - Manipulate system default database entry (Enhanced Security) LIBRARY Security Library (libsecurity.so) NOTE: In order to quickstart a program, the program must be linked as follows: -lsecurity -ldb -laud -lm See the shared library discussion in the Programmer's Guide for more information about using the quickstarting feature. SYNOPSIS #include <sys/types.h> #include <sys/security.h> #include <prot.h> struct es_default *getesdfent(void); struct es_default *getesdfnam( char *name); void setprdfent(void); void endprdfent(void); int putesdfnam( char *name, struct es_default *pr); PARAMETERS Specifies a system default database entry name. Specifies a system de- fault database control entry structure. DESCRIPTION The getesdfent() and getesdfnam() functions each return a pointer to an object with the following structure containing the separated-out fields of a line in the system default database. Each line in the database contains a es_default structure, declared in the <prot.h> file as fol- lows: struct es_default { AUTH_ESCAP_COMMON char *dd_name; /* copy of sfld->fd_name */ int dg_name; /* copy of sflg->fg_name */ size_t esprof_flen; struct espw_field *prd; struct espw_flag *prg; size_t estc_flen; struct estc_field *tcd; struct estc_flag *tcg; size_t esdev_flen; struct esdev_field *devd; struct esdev_flag *devg; size_t fieldlen; struct es_default_fields *sfld; struct es_default_flags *sflg; } ; struct system_default_fields { time_t fd_inactivity_timeout; time_t fd_pw_expire_warning; char fd_pw_site_callout[MAXPATHLEN]; mask_t fd_secclass[AUTH_SECCLASSVEC_SIZE]; /* System security class */ char fd_boot_authenticate; char fd_audit_enable; } ; struct system_default_flags { unsigned int fg_inactivity_timeout : 1, fg_pw_expire_warning : 1, fg_pw_site_callout : 1, fg_boot_authenticate : 1, fg_audit_enable : 1, fg_secclass : 1 ; } ; struct es_default_fields { char *fd_name; time_t fd_inactivity_timeout; time_t fd_pw_expire_warning; char *fd_pw_site_callout; mand_ir_t *fd_single_user_sl; mask_t *fd_secclass; /* System security class */ char fd_boot_authenticate; char fd_audit_enable; char fd_preexpire; /* admin-set psw should be expired */ char fd_skip_ttys_update; /* skip putprtcnam in login path */ char fd_auto_migrate_u; /* auto-create 'missing' profiles */ time_t fd_max_vac_future; /* how far into future can vac. be? */ time_t fd_max_vac_len; /* how long can vac. be (by user)? */ /* if either of the above fields is 0, user-originated 'vacation' * scheduling is disabled. */ char fd_accept_vouch; /* accept 'vouching' in SIA */ } ; struct es_default_flags { unsigned int fg_name : 1, fg_inactivity_timeout : 1, fg_pw_expire_warning : 1, fg_pw_site_callout : 1, fg_single_user_sl : 1, /* sens. level for single-user*/ fg_boot_authenticate : 1, fg_audit_enable : 1, fg_secclass : 1, fg_preexpire : 1, /* Is fd_preexpire set? */ fg_skip_ttys_update : 1, /* Have fd_skip_ttys_update? */ fg_auto_migrate_u : 1, /* Have fd_auto_migrate_u? */ fg_max_vac_future : 1, /* Have fd_max_vac_future? */ fg_max_vac_len : 1, /* Have fd_max_vac_len? */ fg_accept_vouch : 1 /* Have fd_accept_vouch? */ ; } ; Currently there is only one entry in the system default database, ref- erenced by the name "default". The system default database contains default values for all parameters in the protected password, terminal control, and device assignment databases, as well as configurable system-wide parameters. The fields from the other databases are described in the corresponding reference pages. fd_pw_expire_warning This field is the time, in seconds, before a password's expiration that the system begins printing expiration warnings when the user logs in. fd_secclass Although not used in the software, this field is an indicator of the system's TCSEC (Orange Book) class of trust. fd_boot_authenticate This field is a Boolean flag that indicates whether an authorized user must authenticate before the system begins operation. This field is reserved for future use. fd_audit_enable This field and the fd_audit_flag are always 0 (zero). fd_name Name of the entry. fd_inactivity_timeout Reserved for future use/ fd_pw_site_callout Pathname for the password policy callout script (or program, if replaced by the site). It is currently shipped as "/tcb/bin/pw- policy". fd_preexpire Flag determining whether passwords set by system administrators should be pre-expired. Honored by the dxchpwd program (and thus by dxaccounts), as well as by the auto-migration code in the login sequence (see fd_auto_migrate_u). fd_skip_ttys_update Flag which, if set, disables break-in evasion for terminals by skipping the update of the ttys database during logins. fd_auto_migrate_u Flag determining whether user accounts which have valid accounts according to getpwnam() but which have no entry visible to getesp- wnam() should have an extended profile created automatically dur- ing login processing. fd_max_vac_future Time interval (in seconds) specifying the maximum time from the current time at which a user-initiated vacation can start. (Ad- ministratively-set vacations are not subject to this limit.) If 0, no user-initiated vacationing is possible. fd_max_vac_len Maximum time interval (in seconds) which can be set as the dura- tion of a user-initiated vacation request. (Administratively-set vacations are not subject to this limit.) If 0, no user-initiated vacationing is possible. fd_accept_vouch Flag determining whether the enhanced security login sequence ac- cepts password validation from another SIA mechanism, such as DCE. The getesdfent() function returns a pointer to the first es_default structure in the database when first called. Thereafter, it returns a pointer to the next es_default structure in the database, so successive calls can be used to search the database (not currently supported). The getesdfnam() function searches from the beginning of the file until a default entry matching name is found, and returns a pointer to the particular structure in which it was found. If an end-of-file or an error is encountered on reading, these functions return a null pointer. Currently, all programs access the default database by calling getesdf- nam() (the default). A call to the setprdfent() function has the effect of rewinding the de- fault control file to allow repeated searches. The endprdfent() func- tion can be called to close the database when processing is complete. The putesdfnam() function puts a new or replaced default control entry pr with key name into the database. If the sflg->fg_name field con- tains a value of 0 (zero), the requested entry is deleted from the system default database. The putesdfnam() function locks the database for all update operations, and performs an endprdfent() after the up- date or failed attempt. CAUTIONS Structures returned by the database routines contain pointers to char- acter strings and lists rather than being self-contained. The copy functions must be used rather than doing a structure assignment to save a returned structure. Do not delete the system default entry. This renders the system unus- able. RETURN VALUES The getesdfent() and getesdfnam() functions return null pointers on EOF or an error. The putesdfnam() function returns a value of 0 (zero) if it cannot add or update the entry. FILES System defaults database. RELATED INFORMATION Functions: getespwent(3), getestcent(3), getesdvent(3) Files: authcap(4), default(4) Security delim off getesdfent(3)

Navigation Options