getusershell(3) — Linux manual page
getusershell(3) Library Functions Manual getusershell(3)
NAME
getusershell, setusershell, endusershell - get permitted user shells
LIBRARY
Standard C library (libc, -lc)
SYNOPSIS
#include <unistd.h> char *getusershell(void); void setusershell(void); void endusershell(void); Feature Test Macro Requirements for glibc (see feature_test_macros(7)): getusershell(), setusershell(), endusershell(): Since glibc 2.21: _DEFAULT_SOURCE In glibc 2.19 and 2.20: _DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500) Up to and including glibc 2.19: _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
DESCRIPTION
The getusershell() function returns the next line from the file /etc/shells, opening the file if necessary. The line should contain the pathname of a valid user shell. If /etc/shells does not exist or is unreadable, getusershell() behaves as if /bin/sh and /bin/csh were listed in the file. The setusershell() function rewinds /etc/shells. The endusershell() function closes /etc/shells.
RETURN VALUE
The getusershell() function returns NULL on end-of-file.
FILES
/etc/shells
ATTRIBUTES
For an explanation of the terms used in this section, see attributes(7). ┌───────────────────────────────────┬───────────────┬───────────┐ │ Interface │ Attribute │ Value │ ├───────────────────────────────────┼───────────────┼───────────┤ │ getusershell(), setusershell(), │ Thread safety │ MT-Unsafe │ │ endusershell() │ │ │ └───────────────────────────────────┴───────────────┴───────────┘
STANDARDS
None.
HISTORY
4.3BSD.
SEE ALSO
shells(5)
COLOPHON
This page is part of the man-pages (Linux kernel and C library user-space interface documentation) project. Information about the project can be found at ⟨https://www.kernel.org/doc/man-pages/⟩. If you have a bug report for this manual page, see ⟨https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/tree/CONTRIBUTING⟩. This page was obtained from the tarball man-pages-6.9.1.tar.gz fetched from ⟨https://mirrors.edge.kernel.org/pub/linux/docs/man-pages/⟩ on 2024-06-26. If you discover any rendering problems in this HTML version of the page, or you believe there is a better or more up- to-date source for the page, or you have corrections or improvements to the information in this COLOPHON (which is not part of the original manual page), send a mail to man-pages@man7.org Linux man-pages 6.9.1 2024-05-02 getusershell(3)
Pages that refer to this page: shells(5)