13b7e1cc8SPeter Wemm /* 23b7e1cc8SPeter Wemm * Copyright (c) 1995 Peter Wemm <peter@freebsd.org> 33b7e1cc8SPeter Wemm * All rights reserved. 43b7e1cc8SPeter Wemm * 53b7e1cc8SPeter Wemm * Redistribution and use in source and binary forms, with or without 63b7e1cc8SPeter Wemm * modification, is permitted provided that the following conditions 73b7e1cc8SPeter Wemm * are met: 83b7e1cc8SPeter Wemm * 1. Redistributions of source code must retain the above copyright 93b7e1cc8SPeter Wemm * notice immediately at the beginning of the file, without modification, 103b7e1cc8SPeter Wemm * this list of conditions, and the following disclaimer. 113b7e1cc8SPeter Wemm * 2. Redistributions in binary form must reproduce the above copyright 123b7e1cc8SPeter Wemm * notice, this list of conditions and the following disclaimer in the 133b7e1cc8SPeter Wemm * documentation and/or other materials provided with the distribution. 143b7e1cc8SPeter Wemm * 3. This work was done expressly for inclusion into FreeBSD. Other use 153b7e1cc8SPeter Wemm * is permitted provided this notation is included. 163b7e1cc8SPeter Wemm * 4. Absolutely no warranty of function or purpose is made by the author 173b7e1cc8SPeter Wemm * Peter Wemm. 183b7e1cc8SPeter Wemm * 5. Modifications may be freely made to this file providing the above 193b7e1cc8SPeter Wemm * conditions are met. 203b7e1cc8SPeter Wemm * 21b704025fSJordan K. Hubbard * $Id: libutil.h,v 1.16 1998/06/05 08:21:33 ache Exp $ 223b7e1cc8SPeter Wemm */ 233b7e1cc8SPeter Wemm 243b7e1cc8SPeter Wemm #ifndef _LIBUTIL_H_ 253b7e1cc8SPeter Wemm #define _LIBUTIL_H_ 263b7e1cc8SPeter Wemm 27b704025fSJordan K. Hubbard #include <stdio.h> 283b7e1cc8SPeter Wemm #include <sys/cdefs.h> 293b7e1cc8SPeter Wemm 30b704025fSJordan K. Hubbard /* for properties.c */ 31b704025fSJordan K. Hubbard typedef struct _property { 32b704025fSJordan K. Hubbard struct _property *next; 33b704025fSJordan K. Hubbard char *name; 34b704025fSJordan K. Hubbard char *value; 35b704025fSJordan K. Hubbard } *properties; 36b704025fSJordan K. Hubbard 37b704025fSJordan K. Hubbard /* for auth.c */ 38b704025fSJordan K. Hubbard #define _PATH_AUTHCONF "/etc/auth.conf" 39b704025fSJordan K. Hubbard 403b7e1cc8SPeter Wemm /* Avoid pulling in all the include files for no need */ 413b7e1cc8SPeter Wemm struct termios; 423b7e1cc8SPeter Wemm struct winsize; 433b7e1cc8SPeter Wemm struct utmp; 443b7e1cc8SPeter Wemm 453b7e1cc8SPeter Wemm __BEGIN_DECLS 46d3e0a250SPeter Wemm void setproctitle __P((const char *_fmt, ...)); 47d3e0a250SPeter Wemm void login __P((struct utmp *_ut)); 48d3e0a250SPeter Wemm int login_tty __P((int _fd)); 49d3e0a250SPeter Wemm int logout __P((char *_line)); 50326df44eSPaul Traina void logwtmp __P((const char *_line, const char *_name, const char *_host)); 5189caae29SAtsushi Murai void trimdomain __P((char *_fullhost, int _hostsize)); 52d3e0a250SPeter Wemm int openpty __P((int *_amaster, int *_aslave, char *_name, 53d3e0a250SPeter Wemm struct termios *_termp, struct winsize *_winp)); 54d3e0a250SPeter Wemm int forkpty __P((int *_amaster, char *_name, 55d3e0a250SPeter Wemm struct termios *_termp, struct winsize *_winp)); 56d3e0a250SPeter Wemm const char *uu_lockerr __P((int _uu_lockresult)); 57d3e0a250SPeter Wemm int uu_lock __P((const char *_ttyname)); 58d3e0a250SPeter Wemm int uu_unlock __P((const char *_ttyname)); 5915af1c9bSAndrey A. Chernov int uu_lock_txfr __P((const char *_ttyname, pid_t _pid)); 60d3e0a250SPeter Wemm int _secure_path __P((const char *_path, uid_t _uid, gid_t _gid)); 61b704025fSJordan K. Hubbard properties properties_read __P((FILE *fp)); 62b704025fSJordan K. Hubbard void properties_free __P((properties list)); 63b704025fSJordan K. Hubbard char *property_find __P((properties list, const char *name)); 64b704025fSJordan K. Hubbard char *auth_getval __P((const char *name)); 653b7e1cc8SPeter Wemm __END_DECLS 663b7e1cc8SPeter Wemm 67687d0cdeSBrian Somers #define UU_LOCK_INUSE (1) 68687d0cdeSBrian Somers #define UU_LOCK_OK (0) 69687d0cdeSBrian Somers #define UU_LOCK_OPEN_ERR (-1) 70687d0cdeSBrian Somers #define UU_LOCK_READ_ERR (-2) 7184dc2299SAndrey A. Chernov #define UU_LOCK_CREAT_ERR (-3) 72687d0cdeSBrian Somers #define UU_LOCK_WRITE_ERR (-4) 7384dc2299SAndrey A. Chernov #define UU_LOCK_LINK_ERR (-5) 7484dc2299SAndrey A. Chernov #define UU_LOCK_TRY_ERR (-6) 7546cf264aSBrian Somers #define UU_LOCK_OWNER_ERR (-7) 76687d0cdeSBrian Somers 773b7e1cc8SPeter Wemm #endif /* !_LIBUTIL_H_ */ 78