GETUSERSHELL(3) Library Functions Manual GETUSERSHELL(3)

getusershell, setusershell, endusershellget valid user shells

Standard C Library (libc, -lc)

#include <unistd.h>

char *
getusershell(void);

void
setusershell(void);

void
endusershell(void);

The () function returns a pointer to a valid user shell as defined by the system manager in the shells database as described in shells(5). If the shells database is not available, getusershell() behaves as if /bin/sh and /bin/csh were listed.

The () function reads the next line (opening the file if necessary); () rewinds the file; () closes it.

/etc/shells
 

The routine getusershell() returns a null pointer (0) on EOF.

shells(5)

The getusershell() function appeared in 4.3BSD.

The getusershell() function leaves its result in an internal static object and returns a pointer to that object. Subsequent calls to getusershell() will modify the same object.

January 16, 1999 macOS 15.2