auth_for_terminal_es - determine whether a given user is authorized for login on a given terminal (Enhanced Security)
Security Library (libsecurity.so)
In order to quickstart a program, the program must be linked as follows:
See the shared library discussion in the Programmer's Guide for more information about using the quickstarting feature.
struct es_passwd *prpwd,
struct es_term *prtc);
The auth_for_terminal_es() function determines whether the username associated with the prpwd parameter is authorized for logins on the terminal associated with the prtc parameter. The determination is based on the username (prpwd->uflg->fg_name and prpwd->ufld->fd_name), the terminal name (prtc->uflg->fg_devname, prtc->ufld->fd_devname), and the associated device assignment database entry (fields uflg->fg_users and ufld->fd_users).
If either parameter is NULL, or if either the username or terminal name is NULL, the function returns 1. If the device assignment entry corresponding to the given terminal is not found, a 1 is returned. If the device assignment entry has no list of authorized users, or if the username associated with the prpwd parameter is present in the list, then auth_for_terminal_es() routine returns 1. If there is a list of authorized users, but the associated username is not found in that list, this function returns 0.
A return of 1 indicates that the user is authorized for logins on the indicated terminal A return of 0 indicates that the user is not authorized for logins on the indicated terminal
The auth_for_terminal_es() function is called as part of login processing for ENHANCED security.
getespwent(3), getestcent(3), getesdvent(3)
Security delim off