(linenum→info "unix/slp.c:2238")

glibc/2.7/login/utmp.h

    1: /* Copyright (C) 1993, 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
    2:    This file is part of the GNU C Library.
    3: 
    4:    The GNU C Library is free software; you can redistribute it and/or
    5:    modify it under the terms of the GNU Lesser General Public
    6:    License as published by the Free Software Foundation; either
    7:    version 2.1 of the License, or (at your option) any later version.
    8: 
    9:    The GNU C Library is distributed in the hope that it will be useful,
   10:    but WITHOUT ANY WARRANTY; without even the implied warranty of
   11:    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   12:    Lesser General Public License for more details.
   13: 
   14:    You should have received a copy of the GNU Lesser General Public
   15:    License along with the GNU C Library; if not, write to the Free
   16:    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
   17:    02111-1307 USA.  */
   18: 
   19: #ifndef _UTMP_H
   20: #define _UTMP_H 1
   21: 
   22: #include <features.h>
   23: 
   24: #include <sys/types.h>
   25: 
   26: 
   27: __BEGIN_DECLS
   28: 
   29: /* Get system dependent values and data structures.  */
   30: #include <bits/utmp.h>
   31: 
   32: /* Compatibility names for the strings of the canonical file names.  */
   33: #define UTMP_FILE       _PATH_UTMP
   34: #define UTMP_FILENAME   _PATH_UTMP
   35: #define WTMP_FILE       _PATH_WTMP
   36: #define WTMP_FILENAME   _PATH_WTMP
   37: 
   38: 
   39: 
   40: /* Make FD be the controlling terminal, stdin, stdout, and stderr;
   41:    then close FD.  Returns 0 on success, nonzero on error.  */
   42: extern int login_tty (int __fd) __THROW;
   43: 
   44: 
   45: /* Write the given entry into utmp and wtmp.  */
   46: extern void login (__const struct utmp *__entry) __THROW;
   47: 
   48: /* Write the utmp entry to say the user on UT_LINE has logged out.  */
   49: extern int logout (__const char *__ut_line) __THROW;
   50: 
   51: /* Append to wtmp an entry for the current time and the given info.  */
   52: extern void logwtmp (__const char *__ut_line, __const char *__ut_name,
   53:                      __const char *__ut_host) __THROW;
   54: 
   55: /* Append entry UTMP to the wtmp-like file WTMP_FILE.  */
   56: extern void updwtmp (__const char *__wtmp_file, __const struct utmp *__utmp)
   57:      __THROW;
   58: 
   59: /* Change name of the utmp file to be examined.  */
   60: extern int utmpname (__const char *__file) __THROW;
   61: 
   62: /* Read next entry from a utmp-like file.  */
   63: extern struct utmp *getutent (void) __THROW;
   64: 
   65: /* Reset the input stream to the beginning of the file.  */
   66: extern void setutent (void) __THROW;
   67: 
   68: /* Close the current open file.  */
   69: extern void endutent (void) __THROW;
   70: 
   71: /* Search forward from the current point in the utmp file until the
   72:    next entry with a ut_type matching ID->ut_type.  */
   73: extern struct utmp *getutid (__const struct utmp *__id) __THROW;
   74: 
   75: /* Search forward from the current point in the utmp file until the
   76:    next entry with a ut_line matching LINE->ut_line.  */
   77: extern struct utmp *getutline (__const struct utmp *__line) __THROW;
   78: 
   79: /* Write out entry pointed to by UTMP_PTR into the utmp file.  */
   80: extern struct utmp *pututline (__const struct utmp *__utmp_ptr) __THROW;
   81: 
   82: 
   83: #ifdef  __USE_MISC
   84: /* Reentrant versions of the file for handling utmp files.  */
   85: extern int getutent_r (struct utmp *__buffer, struct utmp **__result) __THROW;
   86: 
   87: extern int getutid_r (__const struct utmp *__id, struct utmp *__buffer,
   88:                       struct utmp **__result) __THROW;
   89: 
   90: extern int getutline_r (__const struct utmp *__line,
   91:                         struct utmp *__buffer, struct utmp **__result) __THROW;
   92: 
   93: #endif  /* Use misc.  */
   94: 
   95: __END_DECLS
   96: 
   97: #endif /* utmp.h  */
Syntax (Markdown)