diff --git a/ChangeLog b/ChangeLog index f48a1acb..cdc1ce32 100644 --- a/ChangeLog +++ b/ChangeLog @@ -4164,6 +4164,7 @@ v0.33.18 27-Jul-2001 Executing doors in nosuid mode (as real user) is now possible. The can be switched on using mbsetup. Fixed security problem in Unix username and password entry. + Now stoped nicely if started without controling tty. mbuseradd: Ported to work on FreeBSD. diff --git a/config.h.in b/config.h.in index f2e32a2e..3e795144 100644 --- a/config.h.in +++ b/config.h.in @@ -1,33 +1,84 @@ /* config.h.in. Generated automatically from configure.in by autoheader. */ -/* acconfig.h for the MBSE BBS package */ -#define AUTHOR @COPYRIGHT@ +/* Define to empty if the keyword does not work. */ +#undef const + +/* Define to `int' if doesn't define. */ +#undef gid_t + +/* Define if you don't have vprintf but do have _doprnt. */ +#undef HAVE_DOPRNT + +/* Define if your system has a working fnmatch function. */ +#undef HAVE_FNMATCH + +/* Define if your struct stat has st_blksize. */ +#undef HAVE_ST_BLKSIZE + +/* Define if you have the strftime function. */ +#undef HAVE_STRFTIME + +/* Define if you have that is POSIX.1 compatible. */ +#undef HAVE_SYS_WAIT_H + +/* Define if your struct tm has tm_zone. */ +#undef HAVE_TM_ZONE + +/* Define if you don't have tm_zone but do have the external array + tzname. */ +#undef HAVE_TZNAME + +/* Define if utime(file, NULL) sets file's timestamp to the present. */ +#undef HAVE_UTIME_NULL + +/* Define if you have . */ +#undef HAVE_VFORK_H + +/* Define if you have the vprintf function. */ +#undef HAVE_VPRINTF + +/* Define to `int' if doesn't define. */ +#undef mode_t + +/* Define to `long' if doesn't define. */ +#undef off_t + +/* Define to `int' if doesn't define. */ +#undef pid_t + +/* Define as the return type of signal handlers (int or void). */ +#undef RETSIGTYPE + +/* Define if the `setpgrp' function takes no argument. */ +#undef SETPGRP_VOID + +/* Define to `unsigned' if doesn't define. */ +#undef size_t + +/* Define if the `S_IS*' macros in do not work properly. */ +#undef STAT_MACROS_BROKEN + +/* Define if you have the ANSI C header files. */ +#undef STDC_HEADERS + +/* Define if you can safely include both and . */ +#undef TIME_WITH_SYS_TIME + +/* Define if your declares struct tm. */ +#undef TM_IN_SYS_TIME + +/* Define to `int' if doesn't define. */ +#undef uid_t + +/* Define vfork as fork if vfork does not work. */ +#undef vfork /* Memory debugging */ #undef MEMWATCH -/* Has strcasestr function */ -#undef HAVE_STRCASESTR - -/* Has mkstemp function */ -#undef HAVE_MKSTEMP - -/* If you have gettimeofday function */ -#undef HAVE_DECLARED_TIMEZONE -#undef HAVE_TM_GMTOFF - /* If you don't have pid_t */ #undef DONT_HAVE_PID_T -/* Believe ZFIN */ -#undef BELEIVE_ZFIN - -/* NOPROTO in lhash.h ??? */ -#undef NOPROTO - -/* No Hash Comp function */ -#undef NO_HASH_COMP - /* News postings */ #undef RESTAMP_FUTURE_POSTINGS #undef RESTAMP_OLD_POSTINGS @@ -56,266 +107,168 @@ #undef PAM #undef SW_CRYPT - -/* That's it */ - -/* Define if you have the `a64l' function. */ +/* Define if you have the a64l function. */ #undef HAVE_A64L -/* Define if you have the `c64i' function. */ +/* Define if you have the c64i function. */ #undef HAVE_C64I -/* Define if you have the header file. */ -#undef HAVE_CRYPT_H - -/* Define if you have the header file, and it defines `DIR'. */ -#undef HAVE_DIRENT_H - -/* Define if you don't have `vprintf' but do have `_doprnt.' */ -#undef HAVE_DOPRNT - -/* Define if you have the `fchmod' function. */ +/* Define if you have the fchmod function. */ #undef HAVE_FCHMOD -/* Define if you have the `fchown' function. */ +/* Define if you have the fchown function. */ #undef HAVE_FCHOWN -/* Define if you have the header file. */ -#undef HAVE_FCNTL_H - -/* Define if you have the `fdatasync' function. */ +/* Define if you have the fdatasync function. */ #undef HAVE_FDATASYNC -/* Define if your system has a working `fnmatch' function. */ -#undef HAVE_FNMATCH - -/* Define if you have the `fsync' function. */ +/* Define if you have the fsync function. */ #undef HAVE_FSYNC -/* Define if you have the `getcwd' function. */ +/* Define if you have the getcwd function. */ #undef HAVE_GETCWD -/* Define if you have the `gethostname' function. */ +/* Define if you have the gethostname function. */ #undef HAVE_GETHOSTNAME -/* Define if you have the `gettimeofday' function. */ +/* Define if you have the gettimeofday function. */ #undef HAVE_GETTIMEOFDAY -/* Define if you have the `getwd' function. */ +/* Define if you have the getwd function. */ #undef HAVE_GETWD -/* Define if you have the header file. */ -#undef HAVE_GSHADOW_H - -/* Define if you have the header file. */ -#undef HAVE_INTTYPES_H - -/* Define if you have the `lckpwdf' function. */ +/* Define if you have the lckpwdf function. */ #undef HAVE_LCKPWDF -/* Define if you have the header file. */ -#undef HAVE_MALLOC_H - -/* Define if you have the header file. */ -#undef HAVE_MEMORY_H - -/* Define if you have the `mkdir' function. */ +/* Define if you have the mkdir function. */ #undef HAVE_MKDIR -/* Define if you have the `mkstemp' function. */ +/* Define if you have the mkstemp function. */ #undef HAVE_MKSTEMP -/* Define if you have the `mktime' function. */ +/* Define if you have the mktime function. */ #undef HAVE_MKTIME -/* Define if you have the header file, and it defines `DIR'. */ -#undef HAVE_NDIR_H - -/* Define if you have the header file. */ -#undef HAVE_NETINET_IN_H - -/* Define if you have the `putenv' function. */ +/* Define if you have the putenv function. */ #undef HAVE_PUTENV -/* Define if you have the `putpwent' function. */ +/* Define if you have the putpwent function. */ #undef HAVE_PUTPWENT -/* Define if you have the `regcmp' function. */ -#undef HAVE_REGCMP - -/* Define if you have the `regcomp' function. */ -#undef HAVE_REGCOMP - -/* Define if you have the header file. */ -#undef HAVE_REGEX_H - -/* Define if you have the `re_comp' function. */ +/* Define if you have the re_comp function. */ #undef HAVE_RE_COMP -/* Define if you have the `rmdir' function. */ +/* Define if you have the regcmp function. */ +#undef HAVE_REGCMP + +/* Define if you have the regcomp function. */ +#undef HAVE_REGCOMP + +/* Define if you have the rmdir function. */ #undef HAVE_RMDIR -/* Define if you have the `select' function. */ +/* Define if you have the select function. */ #undef HAVE_SELECT -/* Define if you have the header file. */ -#undef HAVE_SHADOW_H - -/* Define if you have the `socket' function. */ +/* Define if you have the socket function. */ #undef HAVE_SOCKET -/* Define if you have the header file. */ -#undef HAVE_STDLIB_H - -/* Define if you have the `strcasestr' function. */ +/* Define if you have the strcasestr function. */ #undef HAVE_STRCASESTR -/* Define if you have the `strcspn' function. */ +/* Define if you have the strcspn function. */ #undef HAVE_STRCSPN -/* Define if you have the `strdup' function. */ +/* Define if you have the strdup function. */ #undef HAVE_STRDUP -/* Define if you have the `strerror' function. */ +/* Define if you have the strerror function. */ #undef HAVE_STRERROR -/* Define if you have the `strftime' function. */ -#undef HAVE_STRFTIME - -/* Define if you have the header file. */ -#undef HAVE_STRINGS_H - -/* Define if you have the header file. */ -#undef HAVE_STRING_H - -/* Define if you have the `strspn' function. */ +/* Define if you have the strspn function. */ #undef HAVE_STRSPN -/* Define if you have the `strstr' function. */ +/* Define if you have the strstr function. */ #undef HAVE_STRSTR -/* Define if you have the `strtol' function. */ +/* Define if you have the strtol function. */ #undef HAVE_STRTOL -/* Define if you have the `strtoul' function. */ +/* Define if you have the strtoul function. */ #undef HAVE_STRTOUL -/* Define if `st_blksize' is member of `struct stat'. */ -#undef HAVE_STRUCT_STAT_ST_BLKSIZE - -/* Define if `tm_zone' is member of `struct tm'. */ -#undef HAVE_STRUCT_TM_TM_ZONE - -/* Define if your `struct stat' has `st_blksize'. Deprecated, use - `HAVE_STRUCT_STAT_ST_BLKSIZE' instead. */ -#undef HAVE_ST_BLKSIZE - -/* Define if you have the header file. */ -#undef HAVE_SYSLOG_H - -/* Define if you have the header file, and it defines `DIR'. */ -#undef HAVE_SYS_DIR_H - -/* Define if you have the header file. */ -#undef HAVE_SYS_FILE_H - -/* Define if you have the header file. */ -#undef HAVE_SYS_IOCTL_H - -/* Define if you have the header file, and it defines `DIR'. */ -#undef HAVE_SYS_NDIR_H - -/* Define if you have the header file. */ -#undef HAVE_SYS_RESOURCE_H - -/* Define if you have the header file. */ -#undef HAVE_SYS_TIME_H - -/* Define if you have the header file. */ -#undef HAVE_SYS_VFS_H - -/* Define if you have that is POSIX.1 compatible. */ -#undef HAVE_SYS_WAIT_H - -/* Define if you have the header file. */ -#undef HAVE_TERMIOS_H - -/* Define if your `struct tm' has `tm_zone'. Deprecated, use - `HAVE_STRUCT_TM_TM_ZONE' instead. */ -#undef HAVE_TM_ZONE - -/* Define if you don't have `tm_zone' but do have the external array `tzname'. - */ -#undef HAVE_TZNAME - -/* Define if you have the header file. */ -#undef HAVE_ULIMIT_H - -/* Define if you have the `uname' function. */ +/* Define if you have the uname function. */ #undef HAVE_UNAME -/* Define if you have the header file. */ +/* Define if you have the header file. */ +#undef HAVE_CRYPT_H + +/* Define if you have the header file. */ +#undef HAVE_DIRENT_H + +/* Define if you have the header file. */ +#undef HAVE_FCNTL_H + +/* Define if you have the header file. */ +#undef HAVE_GSHADOW_H + +/* Define if you have the header file. */ +#undef HAVE_MALLOC_H + +/* Define if you have the header file. */ +#undef HAVE_NDIR_H + +/* Define if you have the header file. */ +#undef HAVE_NETINET_IN_H + +/* Define if you have the header file. */ +#undef HAVE_REGEX_H + +/* Define if you have the header file. */ +#undef HAVE_SHADOW_H + +/* Define if you have the header file. */ +#undef HAVE_SYS_DIR_H + +/* Define if you have the header file. */ +#undef HAVE_SYS_FILE_H + +/* Define if you have the header file. */ +#undef HAVE_SYS_IOCTL_H + +/* Define if you have the header file. */ +#undef HAVE_SYS_NDIR_H + +/* Define if you have the header file. */ +#undef HAVE_SYS_RESOURCE_H + +/* Define if you have the header file. */ +#undef HAVE_SYS_TIME_H + +/* Define if you have the header file. */ +#undef HAVE_SYS_VFS_H + +/* Define if you have the header file. */ +#undef HAVE_SYSLOG_H + +/* Define if you have the header file. */ +#undef HAVE_TERMIOS_H + +/* Define if you have the header file. */ +#undef HAVE_ULIMIT_H + +/* Define if you have the header file. */ #undef HAVE_UNISTD_H -/* Define if you have the header file. */ +/* Define if you have the header file. */ #undef HAVE_USERSEC_H -/* Define if you have the header file. */ +/* Define if you have the header file. */ #undef HAVE_UTIME_H -/* Define if `utime(file, NULL)' sets file's timestamp to the present. */ -#undef HAVE_UTIME_NULL - -/* Define if you have the header file. */ -#undef HAVE_VFORK_H - -/* Define if you have the `vprintf' function. */ -#undef HAVE_VPRINTF - /* Name of package */ #undef PACKAGE -/* Define as the return type of signal handlers (`int' or `void'). */ -#undef RETSIGTYPE - -/* Define if the `setpgrp' function takes no argument. */ -#undef SETPGRP_VOID - -/* Define if the `S_IS*' macros in do not work properly. */ -#undef STAT_MACROS_BROKEN - -/* Define if you have the ANSI C header files. */ -#undef STDC_HEADERS - -/* Define if you can safely include both and . */ -#undef TIME_WITH_SYS_TIME - -/* Define if your declares `struct tm'. */ -#undef TM_IN_SYS_TIME - /* Version number of package */ #undef VERSION -/* Define to empty if `const' does not conform to ANSI C. */ -#undef const - -/* Define to `int' if doesn't define. */ -#undef gid_t - -/* Define to `int' if does not define. */ -#undef mode_t - -/* Define to `long' if does not define. */ -#undef off_t - -/* Define to `int' if does not define. */ -#undef pid_t - -/* Define to `unsigned' if does not define. */ -#undef size_t - -/* Define to `int' if doesn't define. */ -#undef uid_t - -/* Define as `fork' if `vfork' does not work. */ -#undef vfork diff --git a/mbsebbs/mbsebbs.c b/mbsebbs/mbsebbs.c index 9f00e61d..0f21fe9e 100644 --- a/mbsebbs/mbsebbs.c +++ b/mbsebbs/mbsebbs.c @@ -156,7 +156,11 @@ int main(int argc, char **argv) i = getpid(); - tty = ttyname(0); + if ((tty = ttyname(0)) == NULL) { + WriteError("Not at a tty"); + Quick_Bye(0); + } + if (strncmp("/dev/", tty, 5) == 0) sprintf(pTTY, "%s", tty+5); else if (*tty == '/') {