2009. 12. 19. 09:31

NAME
       getusershell, setusershell, endusershell - get permitted user shells

SYNOPSIS
       #include <unistd.h>
       char *getusershell(void);
       void   setusershell(void);
       void   endusershell(void);


DESCRIPTION

      The getusershell()
함수는 /etc/shells 내용을 한라인씩 읽어 리턴해준다.
      로그인시 /etc/passwd 파일에 적혀있는 사용자 쉘과 이 내용을 비교하여 적절한 사용자
      쉘을 셋팅해 준다.
/etc/shells 파일이 없거나 읽을수 없는 상태라면 시스템에 기본적으로
      제공하는 /bin/sh, /bin/csh 와같은 쉘을 리스트해 준다.


       The setusershell()  function rewinds /etc/shells.
       The endusershell() function closes /etc/shells.

RETURN VALUE
       The getusershell() 는 파일에 끝을 만나면 NULL을 리턴한다.

FILES
       /etc/shells

EXAMPLE
   setusershell ();
  while ((vshell = getusershell () ) != NULL &&
              pw && strcmp(pw->pw_shell, vshell) ) ;
 
  endusershell ();

pw 구조체에 저장된 /etc/passwd 파일의 쉘(pw->pw_shell)과  getusershell()의 리턴값을 루프를 돌면서 비교하고 있당.



'API 및 라이브러리 > C 라이브러리 함수' 카테고리의 다른 글

strstr(3)  (1) 2010.09.11
system(3)  (0) 2009.12.19
syslog, openlog(3)  (0) 2009.12.18
getutent(3)  (0) 2009.12.17
ttyname(3)  (0) 2009.04.04
Posted by devanix