GETUSERSHELL(3) BSD Programmer's Manual GETUSERSHELL(3) NNAAMMEE ggeettuusseerrsshheellll, sseettuusseerrsshheellll, eenndduusseerrsshheellll - get legal user shells SSYYNNOOPPSSIISS _c_h_a_r _* ggeettuusseerrsshheellll(_v_o_i_d); _v_o_i_d sseettuusseerrsshheellll(_v_o_i_d); _v_o_i_d eenndduusseerrsshheellll(_v_o_i_d); DDEESSCCRRIIPPTTIIOONN The ggeettuusseerrsshheellll() function returns a pointer to a legal user shell as defined by the system manager in the file _/_e_t_c_/_s_h_e_l_l_s. If _/_e_t_c_/_s_h_e_l_l_s is unreadable or does not exist, ggeettuusseerrsshheellll() behaves as if _/_b_i_n_/_s_h and _/_b_i_n_/_c_s_h were listed in the file. The ggeettuusseerrsshheellll() function reads the next line (opening the file if nec- essary); sseettuusseerrsshheellll() rewinds the file; eenndduusseerrsshheellll() closes it. FFIILLEESS /etc/shells DDIIAAGGNNOOSSTTIICCSS The routine ggeettuusseerrsshheellll() returns a null pointer (0) on EOF. SSEEEE AALLSSOO shells(5) HHIISSTTOORRYY The ggeettuusseerrsshheellll() function appeared in 4.3BSD. BBUUGGSS The ggeettuusseerrsshheellll() function leaves its result in an internal static ob- ject and returns a pointer to that object. Subsequent calls to ggeettuusseerrsshheellll() will modify the same object. 4.3 Berkeley Distribution June 4, 1993 1