innetgr(netgroup, machine, user, domain) char *netgroup, *machine, *user, *domain; setnetgrent(netgroup) char *netgroup endnetgrent() getnetgrent(machinep, userp, domainp) char **machinep, **userp, **domainp;
The innetgr routine accesses the netgroup file and checks to see if the specified input parameters match an entry in the file. The routine returns 1 if it matches an entry, or 0 if it does not. Any of the three strings; machine, user, or domain can be NULL, which signifies any string in that position is valid.
The getnetgrent routine returns the next member of a network group. After the call, machinep will contain a pointer to a string containing the name of the machine part of the network group member, and similarly for userp and domainp. If machinep, userp or domainp is returned as a NULL pointer, it signifies any string is valid. The getnetgrent routine allocates space for the name by using the malloc routine. This space is released when an endnetgrent call is made. The getnetgrent routine returns 1 if it succeeds in obtaining another member of the network group, or 0 if it reaches the end of the group.
The setnetgrent routine establishes the network group from which getnetgrent will obtain members, and also restarts calls to getnetgrent from the beginning of the list. If the previous setnetgrent call was to a different network group, an endnetgrent call is implied.
The endnetgrent routine releases the space allocated during the getnetgrent calls.
Note that the netgroup file is distributed by NIS and exists in its original, readable form on the NIS master server only. NIS slave servers distribute copies of the netgroup maps created from the original on the master.
/var/yp/src/netgroup /var/yp/domain/netgroup /var/yp/domain/netgroup.byuser /var/yp/domain/netgroup.byhostdelim off