sessreg.h revision 1e5fa1c5
1a6d9b409Smrg/* 2a6d9b409Smrg * Copyright 1990, 1998 The Open Group 3a6d9b409Smrg * 4a6d9b409Smrg * Permission to use, copy, modify, distribute, and sell this software and its 5a6d9b409Smrg * documentation for any purpose is hereby granted without fee, provided that 6a6d9b409Smrg * the above copyright notice appear in all copies and that both that 7a6d9b409Smrg * copyright notice and this permission notice appear in supporting 8a6d9b409Smrg * documentation. 9a6d9b409Smrg * 10a6d9b409Smrg * The above copyright notice and this permission notice shall be included 11a6d9b409Smrg * in all copies or substantial portions of the Software. 12a6d9b409Smrg * 13a6d9b409Smrg * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 14a6d9b409Smrg * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 15a6d9b409Smrg * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 16a6d9b409Smrg * IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR 17a6d9b409Smrg * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 18a6d9b409Smrg * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 19a6d9b409Smrg * OTHER DEALINGS IN THE SOFTWARE. 20a6d9b409Smrg * 21a6d9b409Smrg * Except as contained in this notice, the name of The Open Group shall 22a6d9b409Smrg * not be used in advertising or otherwise to promote the sale, use or 23a6d9b409Smrg * other dealings in this Software without prior written authorization 24a6d9b409Smrg * from The Open Group. 25a6d9b409Smrg * 26a6d9b409Smrg */ 27a6d9b409Smrg 28a6d9b409Smrg/* Copyright 2005 Sun Microsystems, Inc. All rights reserved. 29a6d9b409Smrg * 30a6d9b409Smrg * Permission is hereby granted, free of charge, to any person obtaining a 311e5fa1c5Smrg * copy of this software and associated documentation files (the "Software"), 321e5fa1c5Smrg * to deal in the Software without restriction, including without limitation 331e5fa1c5Smrg * the rights to use, copy, modify, merge, publish, distribute, sublicense, 341e5fa1c5Smrg * and/or sell copies of the Software, and to permit persons to whom the 351e5fa1c5Smrg * Software is furnished to do so, subject to the following conditions: 361e5fa1c5Smrg * 371e5fa1c5Smrg * The above copyright notice and this permission notice (including the next 381e5fa1c5Smrg * paragraph) shall be included in all copies or substantial portions of the 391e5fa1c5Smrg * Software. 401e5fa1c5Smrg * 411e5fa1c5Smrg * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 421e5fa1c5Smrg * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 431e5fa1c5Smrg * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 441e5fa1c5Smrg * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 451e5fa1c5Smrg * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 461e5fa1c5Smrg * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 471e5fa1c5Smrg * DEALINGS IN THE SOFTWARE. 48a6d9b409Smrg */ 49a6d9b409Smrg 50a6d9b409Smrg#include "config.h" 51a6d9b409Smrg 52a6d9b409Smrg#include <sys/types.h> 53a6d9b409Smrg#include <time.h> 541e5fa1c5Smrg 551e5fa1c5Smrg#ifdef HAVE_UTMP_H 561e5fa1c5Smrg# include <utmp.h> 571e5fa1c5Smrg# define USE_UTMP 581e5fa1c5Smrg#endif 59a6d9b409Smrg 60a6d9b409Smrg#ifdef HAVE_UTMPX_H 611e5fa1c5Smrg# include <utmpx.h> 621e5fa1c5Smrg# define USE_UTMPX 63a6d9b409Smrg#endif 64a6d9b409Smrg 65a6d9b409Smrg#ifdef HAVE_SYS_PARAM_H 66a6d9b409Smrg# include <sys/param.h> 67a6d9b409Smrg#endif 68a6d9b409Smrg 69a6d9b409Smrg#ifndef HAVE_LASTLOG_H 70a6d9b409Smrg# define NO_LASTLOG 71a6d9b409Smrg#endif 72a6d9b409Smrg 73a6d9b409Smrg#ifndef NO_LASTLOG 74a6d9b409Smrg# ifdef CSRG_BASED 75a6d9b409Smrg# if (BSD < 199103) 76a6d9b409Smrg# include <lastlog.h> 77a6d9b409Smrg# endif 78a6d9b409Smrg# else 79a6d9b409Smrg# include <lastlog.h> 80a6d9b409Smrg# endif 81a6d9b409Smrg# include <pwd.h> 82a6d9b409Smrg#endif 83a6d9b409Smrg 84a6d9b409Smrg#ifdef CSRG_BASED 85a6d9b409Smrg#if !defined(__FreeBSD__) && !defined(__OpenBSD__) 86a6d9b409Smrg/* *BSD doesn't like a ':0' type entry in utmp */ 87a6d9b409Smrg#define NO_UTMP 88a6d9b409Smrg#endif 89a6d9b409Smrg#endif 90a6d9b409Smrg 91a6d9b409Smrg#ifndef WTMP_FILE 92a6d9b409Smrg# ifdef _PATH_WTMP 93a6d9b409Smrg# define WTMP_FILE _PATH_WTMP 94a6d9b409Smrg# else 95a6d9b409Smrg# define WTMP_FILE "/usr/adm/wtmp" 96a6d9b409Smrg# endif 97a6d9b409Smrg#endif 98a6d9b409Smrg#ifndef UTMP_FILE 99a6d9b409Smrg# ifdef _PATH_UTMP 100a6d9b409Smrg# define UTMP_FILE _PATH_UTMP 101a6d9b409Smrg# else 102a6d9b409Smrg# define UTMP_FILE "/etc/utmp" 103a6d9b409Smrg# endif 104a6d9b409Smrg#endif 105a6d9b409Smrg#ifndef NO_LASTLOG 106a6d9b409Smrg# ifndef LLOG_FILE 107a6d9b409Smrg# ifdef _PATH_LASTLOG 108a6d9b409Smrg# define LLOG_FILE _PATH_LASTLOG 109a6d9b409Smrg# else 110a6d9b409Smrg# define LLOG_FILE "/usr/adm/lastlog" 111a6d9b409Smrg# endif 112a6d9b409Smrg# endif 113a6d9b409Smrg#endif 114a6d9b409Smrg#ifndef SYSV 115a6d9b409Smrg# ifndef TTYS_FILE 116a6d9b409Smrg# define TTYS_FILE "/etc/ttys" 117a6d9b409Smrg# endif 118a6d9b409Smrg#endif 119a6d9b409Smrg 120