diff --git a/CHANGES b/CHANGES index 6421a49..89caf17 100644 --- a/CHANGES +++ b/CHANGES @@ -1,6 +1,10 @@ CHANGES ======= +version 6.09: + - Added more documentation (look for README and INSTALL files). + - Fixed up man pages so they are more accurate. + version 6.08: - Added support for Linux 2.X and IRIX 6.X - Fixed "suspend" code in client - it shouldn't have worked @@ -25,5 +29,5 @@ before version 6.05: and enhancements of various types were applied. # -# $Id: CHANGES,v 1.4 1999-01-15 15:36:21-08 bryan Exp $ +# $Id: CHANGES,v 1.5 1999-01-25 15:37:38-08 bryan Exp $ # diff --git a/INSTALL b/INSTALL new file mode 100644 index 0000000..e701a69 --- /dev/null +++ b/INSTALL @@ -0,0 +1,75 @@ + INSTALL + ======= + +Quickie Instructions + + - Edit 'conserver/cons.h' (if necessary) + + - Run 'make config' + + - Run 'make' + + - If all is well, run 'make install install.man' + + - Now set up config files, etc. (see below) + + Things will install in /usr/local. If you'd like to use a different + prefix, use 'make PREFIX=/your/path install'. + + +Detailed Instructions + + - First thing to do is set up a custom conserver/cons.h file. If you + like all the defaults provided in conserver/port.h, your set. + Just use the default cons.h cons.h file. Here are some of the + more important #define's to look for: + + PORT or SERVICE - Socket used to communicate + HOST - Hostname of console server + CONFIG - Config file path + PASSWD_FILE - Password file path + MAXMEMB - Number of consoles per child process + MAXGRP - Number of child processes + + - Now it's time to run 'make config'. If you're platform is supported + you'll get a nice message about "Configuring for ...". Otherwise, + you'll have to port the software - follow the instructions you + received. + + - Now run 'make'. If you run into problems (like needing a different + compiler or something), check out the .settings file ('make config' + symlinks it to port/). + + - If things built fine, you can run 'make install install.man'. + This will put things into the /usr/local tree. If you'd like + things deposited elsewhere, you can use 'make PREFIX=/your/path + install install.man'. We like to use something like 'make + PREFIX=/tools/conserver install install.man'. + + - Now that the binaries are in place, we need to set up the + configuration files and such. + + If you used a blank cons.h file or defined a service name (SERVICE + token above), you'll need to enter a definition in your services + file (directly, via NIS, or whatever). Here's what we use: + + console 782/tcp conserver # console server + + If you defined PORT, you shouldn't have to worry about this step. + + Next, make sure conserver runs during boot. The init script + we use under Solaris is installed in /etc/conserver.rc. + Use that or some form of it for your own /etc/init.d script or an + entry in startup files (/etc/rc, /etc/rc.local, or whatever). + + Now for the fun stuff. You need to create a conserver.cf and + conserver.passwd file. Those are defined with the CONFIG and + PASSWD_FILE settings. If you ever need to know what values + were compiled into conserver, run 'conserver -V'. See the + conserver.cf/INSTALL file for instructions on setup of these files. + + - That's it! Just start up the console server and enjoy! + +# +# $Id: INSTALL,v 1.4 1999-01-25 18:30:03-08 bryan Exp $ +# diff --git a/Makefile b/Makefile index a26c4c2..d3c620d 100644 --- a/Makefile +++ b/Makefile @@ -1,11 +1,11 @@ -# $Id: Makefile,v 1.4 1999-01-15 15:36:06-08 bryan Exp $ +# $Id: Makefile,v 1.5 1999-01-25 15:10:05-08 bryan Exp $ # # Master Makefile # -SUBDIRS=conserver console +SUBDIRS=conserver console conserver.cf -all clean install: FRC +all clean install install.man: FRC @if [ -f .settings ]; then \ s=`cat .settings | grep -v '^#'`; \ settings=`echo $$s`; \ diff --git a/README b/README index 2d27310..df0c4c1 100644 --- a/README +++ b/README @@ -30,21 +30,6 @@ Downloading The latest version can be found at ftp://ftp.gnac.com/pub/conserver/. -Installation - - Quickie instructions: - - Edit 'conserver/cons.h' - - Run 'make config' - - Run 'make' - - If all is well, run 'make install' - - Things will install in /usr/local. If you'd like to use a different - prefix, use 'make PREFIX=/your/path install'. - # -# $Id: README,v 1.3 1999-01-14 14:04:37-08 bryan Exp $ +# $Id: README,v 1.4 1999-01-21 23:06:17-08 bryan Exp $ # diff --git a/autologin/INSTALL b/autologin/INSTALL.old similarity index 100% rename from autologin/INSTALL rename to autologin/INSTALL.old diff --git a/autologin/README b/autologin/README index f6d0705..d3c5d3a 100644 --- a/autologin/README +++ b/autologin/README @@ -1,13 +1,16 @@ -# $Id: README,v 1.3 93/04/21 16:13:37 ksb Exp $ -This program can be used to put a root shell on the console at boot time. -See the manual page. +I have not touched the autologin directory. See the README.old and +INSTALL.old files if you interested in the program. I cannot guarantee +it will compile, install, or run. It is definately not integrated with +../Makefile or any of the porting support. If you have patches that +make it work, please send them to me and I'll be more than happy to +incorporate them. -ksb +No one I've ever talked to found a need for something like autologin. +Good luck. -Ports to: HOST OS CDEFS - SUN3 4.1.1 -DSUNOS - SUN4 4.1.2 -DSUNOS - V386 ? -DSRM - EPIX ? -DEPIX -systype posix -I/usr/include (+ extra .o files) - IBMR2 -DIBMR2 +Bryan Stansell + +# +# $Id: README,v 1.1 1999-01-21 22:59:40-08 bryan Exp $ +# diff --git a/autologin/README.old b/autologin/README.old new file mode 100644 index 0000000..f6d0705 --- /dev/null +++ b/autologin/README.old @@ -0,0 +1,13 @@ +# $Id: README,v 1.3 93/04/21 16:13:37 ksb Exp $ + +This program can be used to put a root shell on the console at boot time. +See the manual page. + +ksb + +Ports to: HOST OS CDEFS + SUN3 4.1.1 -DSUNOS + SUN4 4.1.2 -DSUNOS + V386 ? -DSRM + EPIX ? -DEPIX -systype posix -I/usr/include (+ extra .o files) + IBMR2 -DIBMR2 diff --git a/conserver.cf/INSTALL b/conserver.cf/INSTALL index 181ce9f..2be1f9d 100644 --- a/conserver.cf/INSTALL +++ b/conserver.cf/INSTALL @@ -1,26 +1,19 @@ -# $Id: INSTALL,v 4.1 91/06/19 14:20:54 ksb Exp $ +The two files you need to set up are the conserver.cf and conserver.passwd +files. See the sample conserver.cf and conserver.passwd files +for examples. You can start with those and then modify extensively. +The man page for conserver.cf should explain that file with enough detail +to get you going. -Prep: +As for the conserver.passwd file, here are some instructions. The file +contains three fields seperated by colons: ::. +The field should either be an encrypted password or the special +string '*passwd*', which will cause the console server to do a getpwnam() +call. The field can be a comma seperated list of console names +(from conserver.cf) or the special string 'all'. Access for the user +is only granted to the hosts listed here (or all if 'all' is used). - Start in the conserver directory. +That's about it. Good luck. - Now read conserver.cf.5l (if you have mk(1L) installed just mk it). - Run: - $ tbl conserver.cf.5l |nroff -man |${PAGER-more} - - Now edit dummy.cf and follow the instructions there. - [If you are just shopping stop here.] - - Now edit conserver.cf and put your real hosts in there. - - Edit the Makefile and change LIB. - - -Compile: - - None. - - -Install: - - Make install. +# +# $Id: INSTALL,v 1.1 1999-01-25 15:36:52-08 bryan Exp $ +# diff --git a/conserver.cf/INSTALL.old b/conserver.cf/INSTALL.old new file mode 100644 index 0000000..181ce9f --- /dev/null +++ b/conserver.cf/INSTALL.old @@ -0,0 +1,26 @@ +# $Id: INSTALL,v 4.1 91/06/19 14:20:54 ksb Exp $ + +Prep: + + Start in the conserver directory. + + Now read conserver.cf.5l (if you have mk(1L) installed just mk it). + Run: + $ tbl conserver.cf.5l |nroff -man |${PAGER-more} + + Now edit dummy.cf and follow the instructions there. + [If you are just shopping stop here.] + + Now edit conserver.cf and put your real hosts in there. + + Edit the Makefile and change LIB. + + +Compile: + + None. + + +Install: + + Make install. diff --git a/conserver.cf/Makefile b/conserver.cf/Makefile index 138b926..701d699 100644 --- a/conserver.cf/Makefile +++ b/conserver.cf/Makefile @@ -1,59 +1,30 @@ -# $Id: Make.host,v 4.3 92/07/10 15:57:32 dru Exp $ +# $Id: Makefile,v 1.5 1999-01-25 15:38:20-08 bryan Exp $ # -# Makefile for conserver data base +# Makefile for conserver.cf # -# if you edit LIB below you have to change cons.hs default config define. -PROG= conserver.cf -LIB= ${DESTDIR}/usr/local/lib -DOC= ${DESTDIR}/usr/man +PREFIX=/usr/local +BIN=${PREFIX}/bin +ETC=${PREFIX}/etc +MAN=${PREFIX}/man +MANSECT=8 -SRCs= conserver.cf -MAN= conserver.cf.5l -OTHER= README -SOURCE= Makefile ${OTHER} ${MAN} ${SRCl} ${SRCs} - -all: ${SRCl} ${PROG} - -${PROG}: ${SRCs} +all: clean: FRC - rm -f Makefile.bak a.out core errs lint.out tags + rm -f Makefile.bak *.tbl core errs lint.out tags -deinstall: ${MAN} ${DOC} FRC - install -R ${LIB}/${PROG} - mkcat -r${DOC} -D ${MAN} +depend: -depend: FRC +dirs: -dirs: ${LIB} ${DOC} +install: -install: all dirs FRC - install -c ${PROG} ${LIB}/${PROG} +${MAN}/man${MANSECT}: + ${INSTALL} -d $@ -lint: FRC - -mkcat: ${MAN} ${DOC} FRC - mkcat -r${DOC} ${MAN} - -print: source FRC - lpr -J"${PROG} source" ${SOURCE} - -source: ${SOURCE} - -spotless: clean - rcsclean ${SOURCE} - -tags: FRC - -/ ${LIB} ${LIB}: - install -dr $@ - -${SOURCE}: - co -q $@ +install.man: ${MAN}/man${MANSECT} + tbl conserver.cf.man > conserver.cf.tbl + ${INSTALL} -c conserver.cf.tbl ${MAN}/man${MANSECT}/conserver.cf.${MANSECT} FRC: - -# DO NOT DELETE THIS LINE - make depend DEPENDS ON IT - -# *** Do not add anything here - It will go away. *** diff --git a/conserver.cf/README b/conserver.cf/README.old similarity index 100% rename from conserver.cf/README rename to conserver.cf/README.old diff --git a/conserver.cf/conserver.cf b/conserver.cf/conserver.cf index 218b273..db1f2e5 100644 --- a/conserver.cf/conserver.cf +++ b/conserver.cf/conserver.cf @@ -1,76 +1,26 @@ -# conserver config file # -# $Id: conserver.cf,v 4.20 94/05/22 11:17:26 ksb Exp $ +# $Id: conserver.cf,v 1.3 1999-01-25 14:38:19-08 bryan Exp $ +# +# The character '&' in logfile names are substituted with the console +# name. Any logfile name that doesn't begin with a '/' has LOGDIR +# prepended to it. So, most consoles will just have a '&' as the logfile +# name which causes /var/consoles/ to be used. +# +LOGDIR=/var/consoles # # list of consoles we serve -# name : tty[@host] : baud[parity] : device : group -# our local console -console:|@console.cc.purdue.edu:9600p:/usr/adm/consoles/console:0 -nextwatch:|@console.cc.purdue.edu:9600p:/usr/adm/consoles/nextwatch:0 -# real machine -speedy:/dev/ttyC12@console.cc.purdue.edu:9600s:/usr/adm/consoles/speedy:1 -nis35:/dev/ttyC13@console.cc.purdue.edu:9600s:/usr/adm/consoles/nis35:1 -sun3watch:/dev/ttyC40@console.cc.purdue.edu:9600p:/usr/adm/consoles/sun3watch:1 -keep:/dev/ttyC29@console.cc.purdue.edu:9600s:/usr/adm/consoles/keep:1 -dart:/dev/ttyC32@console.cc.purdue.edu:9600s:/usr/adm/consoles/dart:1 -lively:/dev/ttyC10@console.cc.purdue.edu:9600s:/usr/adm/consoles/lively:2 -sentinel:/dev/ttyC11@console.cc.purdue.edu:9600s:/usr/adm/consoles/sentinel:2 -ipscgate:/dev/ttyC26@console.cc.purdue.edu:9600e:/usr/adm/consoles/ipscgate:2 -snap.stat:/dev/ttyC27@console.cc.purdue.edu:9600s:/usr/adm/consoles/snap.stat:2 -b.stat:/dev/ttyC33@console.cc.purdue.edu:9600s:/usr/adm/consoles/b.stat:2 -expert:/dev/ttyC14@console.cc.purdue.edu:9600e:/usr/adm/consoles/expert:3 -quick:/dev/ttyC15@console.cc.purdue.edu:9600s:/usr/adm/consoles/quick:3 -helios:/dev/ttyC31@console.cc.purdue.edu:9600s:/usr/adm/consoles/helios:3 -probe:/dev/ttyC34@console.cc.purdue.edu:9600s:/usr/adm/consoles/probe:3 -mace:/dev/ttyC8@console.cc.purdue.edu:4800s:/usr/adm/consoles/mace:4 -sage:/dev/ttyC9@console.cc.purdue.edu:9600e:/usr/adm/consoles/sage:4 -flash:/dev/ttyC24@console.cc.purdue.edu:9600s:/usr/adm/consoles/flash:4 -labwatch:/dev/ttyC25@console.cc.purdue.edu:9600s:/usr/adm/consoles/labwatch:4 -dash:/dev/ttyC35@console.cc.purdue.edu:9600s:/usr/adm/consoles/dash:4 -icd92:/dev/ttyC4@console.cc.purdue.edu:9600s:/usr/adm/consoles/icd92:5 -pop.stat:/dev/ttyC5@console.cc.purdue.edu:9600s:/usr/adm/consoles/pop.stat:5 -icd94:/dev/ttyC20@console.cc.purdue.edu:9600s:/usr/adm/consoles/icd94:5 -oasis:/dev/ttyC21@console.cc.purdue.edu:9600s:/usr/adm/consoles/oasis:5 -deft:/dev/ttyC36@console.cc.purdue.edu:9600s:/usr/adm/consoles/deft:5 -mentor:/dev/ttyC2@console.cc.purdue.edu:9600e:/usr/adm/consoles/mentor:6 -icd84:/dev/ttyC3@console.cc.purdue.edu:9600s:/usr/adm/consoles/icd84:6 -franklin:/dev/ttyC18@console.cc.purdue.edu:9600s:/usr/adm/consoles/franklin:6 -icd82:/dev/ttyC19@console.cc.purdue.edu:9600s:/usr/adm/consoles/icd82:6 -prism:/dev/ttyC38@console.cc.purdue.edu:9600s:/usr/adm/consoles/prism:6 -rapid:/dev/ttyC6@console.cc.purdue.edu:9600s:/usr/adm/consoles/rapid:7 -tyro:/dev/ttyC7@console.cc.purdue.edu:9600e:/usr/adm/consoles/tyro:7 -staff:/dev/ttyC22@console.cc.purdue.edu:9600s:/usr/adm/consoles/staff:7 -swift:/dev/ttyC23@console.cc.purdue.edu:9600s:/usr/adm/consoles/swift:7 -quest:/dev/ttyC37@console.cc.purdue.edu:9600s:/usr/adm/consoles/quest:7 -icd96:/dev/ttyC0@console.cc.purdue.edu:9600s:/usr/adm/consoles/icd96:8 -fleet:/dev/ttyC1@console.cc.purdue.edu:9600s:/usr/adm/consoles/fleet:8 -feserve:/dev/ttyC16@console.cc.purdue.edu:9600s:/usr/adm/consoles/feserve:8 -curator:/dev/ttyC17@console.cc.purdue.edu:9600s:/usr/adm/consoles/curator:8 -soltest:/dev/ttyC39@console.cc.purdue.edu:9600s:/usr/adm/consoles/soltest:8 -mozo:/dev/ttyC41@console.cc.purdue.edu:9600s:/usr/adm/consoles/mozo:9 -notus:/dev/ttyC42@console.cc.purdue.edu:9600s:/usr/adm/consoles/notus: -eurus:/dev/ttyC43@console.cc.purdue.edu:9600s:/usr/adm/consoles/eurus: -boreas:/dev/ttyC44@console.cc.purdue.edu:9600s:/usr/adm/consoles/boreas: -zephyrus:/dev/ttyC45@console.cc.purdue.edu:9600s:/usr/adm/consoles/zephyrus: -fegrader:/dev/ttyC46@console.cc.purdue.edu:9600s:/usr/adm/consoles/fegrader: -galaxy:/dev/ttyC47@console.cc.purdue.edu:9600s:/usr/adm/consoles/galaxy: -# ups monitor connection (ksb -- testing) -ups:/dev/ttyb@console.cc.purdue.edu:9600e:/usr/adm/consoles/ups:10 -# VM Group consoles -tag:/dev/ttyC30@console.cc.purdue.edu:9600s:/usr/adm/consoles/tag:11:R85ONdmDqSwQ6 -# All remote consoles -# on staff.cc.purdue.edu -extra:/dev/ttyb@staff.cc.purdue.edu:9600s:/usr/adm/extra.log:0 -vet:/dev/tty0d@staff.cc.purdue.edu:9600s:/usr/adm/vet.log:1:5m6N/RqJcay6I -bull:/dev/tty0e@staff.cc.purdue.edu:9600s:/usr/adm/bull.log: -serval:/dev/tty0f@staff.cc.purdue.edu:9600s:/usr/adm/serval.log: -# virtual consoles on remote hosts -tbtape:|su - informix@oasis.cc.purdue.edu:9600p:/usr/adm/tbtape.log:0 -# so we can write on mace.cc -wmace:|/bin/csh -i@mace.cc.purdue.edu:9600p:/usr/adm/mace.log:0 +# name : tty[@host] : baud[parity] : logfile : mark-interval[m|h|d] +# name : !host : port : logfile : mark-interval[m|h|d] +# name : |command : : logfile : mark-interval[m|h|d] +# +tweety:!ts1:2002:&: +bambam:!ts1:2003:&: +shell:|::/dev/null: +telnet:|telnet host::/dev/null: +ttya:/dev/ttya:9600p:&: %% +# # list of clients we allow -# type machines -trusted: console.cc.purdue.edu -allowed: cc.purdue.edu stat.purdue.edu -allowed: 128.210.10.8 128.210.33.1 128.210.7.49 127.0.0.1 +# {trusted|allowed|rejected} : machines +# +allowed: 127.0.0.1 gnac.com diff --git a/conserver.cf/conserver.cf.5l b/conserver.cf/conserver.cf.5l deleted file mode 100644 index 6ca16db..0000000 --- a/conserver.cf/conserver.cf.5l +++ /dev/null @@ -1,96 +0,0 @@ -.\" $Id: conserver.cf.5l,v 1.4 93/02/11 13:06:32 ksb Exp $ -.\" @(#)constab.5 01/06/91 OSU CIS; Thomas A. Fine -.TH CONSERVER.CF 5L "15 February 1991" "OSU/CIS" -.SH NAME -conserver.cf \- table of server console terminals used by conserver(8L) -.SH SYNOPSIS -.B /usr/local/lib/conserver.cf -.br -\fIaccess hosts\fP -.br -\fB%%\fP -.br -\fIserver\fP:\fIdevice\fP:\fIbaud\fP:\fIlogfile\fP:\fIgroup\fP -.SH DESCRIPTION -.B Conserver.cf -is the configuration file for -.IR conserver (8L). -All lines starting with the pound sign `#' are considered comment lines. -Blank lines are ignored. -.PP -The first section of the file has lines that are separated into -six colon-separated fields: -.PP -\fIServer\fP name - this doesn't have to be the name of the server; -it is used to refer to the server when using the console program. -.PP -\fIDevice\fP file name - the full path name of the device for this server. -This may contain a remote host name as \fItty\fP@\fIhost\fP in which case -the conserver will send connections for this server to \fIhost\fP. -.PP -\fIBaud\fP is the speed and parity for this console. - Speed may be given as an integer, -parity only requires the first letter of any of: even, odd, mark, space. -.PP -\fILog\fP file name - the full path name of file where all output from -this server is logged. -.PP -\fIGroup\fP number - defines which group of servers this server is with. There -will be one process running for each group of servers in this file. -If this field is empty the conserver program will fill groups automatically. -.PP -\fIPassword\fP encrypted password - allows access to any member console in -this group. That is to say only one console in any group should set a -password. If none set a password the superuser password is taken. -.PP -This section is terminated with a `%%' token on a line by itself. -.PP -The next section of the file contains a list of hosts and addresses -which are allowed to connect to the console server. -Three levels of access all allowed, ``trust'', ``allow'', -and ``refuse''. -The access modifier is followed by a colon and a list of addresses or -host names. -Any complete suffix of a host name my be used to allow access for all hosts -in that subdomain. -For example `cc.purdue.edu' will allow `mentor.cc.purdue.edu' -and `mace.cc.purdue.edu', but not `pucc.purdue.edu' or `hack.purdue.edu'. -.SH LIMITS -.PP -Groups should be numbered from 0, all members of a group should be contiguous -in the file. -The current hard limits are 20 groups, with 10 members per group. -.SH EXAMPLE -# server:/dev/file:baud:/usr/adm/logfile:group_num -.br -tree:/dev/ttyj0:9600e:/tmp/treelog:0 -.br -fish:/dev/ttyj1:4800e:/tmp/fishlog:1 -.br -bird:/dev/ttyj2:4800m:/tmp/birdlog:1 -.br -solar:/dev/ttyj3:9600e:/tmp/solarlog:2 -.br -stellar:/dev/ttyj4:9600e:/tmp/stellarlog: -.br -shell:/dev/ttyj5:1200e:/tmp/shelllog:3:NLKyxm2KjHrzE -.br -tribe:/dev/ttyj6:1200e:/tmp/tribelog:4 -.br -reptile:/dev/ttyj7:1200e:/tmp/reptilelog: -.br -flower:/dev/ttyj8:1200e:/tmp/flowerlog: -.br -mentor:/dev/ttyh0@extra.cc.purdue.edu:2400e:/tmp/mentor.log: -%% -.br -# access restrictions -.br -trusted: console.cc.purdue.edu 128.210.7.90 -.br -allow: cc.purdue.edu stat.cc.purdue.edu -.sp -Notice that the console `shell' has a special password, all the others -use the superuser's password. -.SH "SEE ALSO" -console(1L), conserver(8L) diff --git a/conserver.cf/conserver.cf.man b/conserver.cf/conserver.cf.man new file mode 100644 index 0000000..510706f --- /dev/null +++ b/conserver.cf/conserver.cf.man @@ -0,0 +1,129 @@ +.\" $Id: conserver.cf.man,v 1.3 1999-01-25 15:05:17-08 bryan Exp $ +.\" @(#)constab.5 01/06/91 OSU CIS; Thomas A. Fine +.TH CONSERVER.CF 5L "Local" +.SH NAME +conserver.cf \- table of server console terminals used by conserver(8L) +.SH SYNOPSIS +.br +LOGDIR=\fIlogdirectory\fP +.br +\fIserver\fP:\fIdevice\fP[@\fIconserver\fP]:\fIbaud\fP:\fIlogfile\fP:\fImark-interval\fP[\fIm|h|d\fP] +.br +\fIserver\fP:!\fIhost\fP[@\fIconserver\fP]:\fIport\fP:\fIlogfile\fP:\fImark-interval\fP[\fIm|h|d\fP] +.br +\fIserver\fP:|\fIcommand\fP[@\fIconserver\fP]::\fIlogfile\fP:\fImark-interval\fP[\fIm|h|d\fP] +.br +\fB%%\fP +.br +\fIaccess hosts\fP +.SH DESCRIPTION +.B Conserver.cf +is the configuration file for +.IR conserver (8L). +All lines starting with the pound sign `#' are considered comment lines. +Blank lines are ignored. +.PP +The first section of the file has lines that are separated into +six colon-separated fields: +.PP +\fIserver\fP name - this doesn't have to be the name of the server; +it is used to refer to the server when using the console program. +.PP +\fIdevice\fP file name - the full path name of the device for this server. +The \fIbaud\fP rate is the speed and parity for this console. +Speed may be given as an integer, +parity only requires the first letter of any of: even, odd, mark, space. +the conserver will send connections for this server to \fIconserver\fP. +.PP +!\fIhost\fP - the hostname of the server to connect to. +A socket connection will be made to port \fIport\fP (an integer). +.PP +|\fIcommand\fP - the command to invoke on the console server. +.PP +\fIdevice\fP, !\fIhost\fP, and |\fIcommand\fP may contain a remote +console server name (ex. \fIhost\fP@\fIconserver\fP) in which case +the conserver will send connections for this server to \fIconserver\fP. +.PP +\fIlogfile\fP - the full path name of file where all output from +this server is logged. Any occurance of `&' will be replaced with +the \fIserver\fP name. Any path that doesn't begin with a `/' will +have \fIlogdirectory\fP (value of LOGDIR) prepended to it. +.PP +\fImark-interval\fP[\fIm|h|d\fP] - specifies the time between +timestamps applied to the console log file. The timestamps look like +`[-- MARK -- Mon Jan 25 14:46:56 PST 1999]'. +.PP +This section is terminated with a `%%' token on a line by itself. +.PP +The next section of the file contains a list of hosts and addresses +which are allowed to connect to the console server. Three levels +of access all allowed, ``trust'', ``allow'', +and ``refuse''. +The access modifier is followed by a colon and a list of addresses or +host names. +Any complete suffix of a host name my be used to allow access for all hosts +in that subdomain. +For example `cc.purdue.edu' will allow `mentor.cc.purdue.edu' +and `mace.cc.purdue.edu', but not `pucc.purdue.edu' or `hack.purdue.edu'. +.SH EXAMPLE +# server:path:baud:/usr/adm/logfile:mark +.br +LOGDIR=/tmp +.br +# +.br +# This logs to /tmp/treelog... +.br +tree:/dev/ttyj0:9600e:&log: +.br +# +.br +# This logs to /tmp/fishlog... +.br +fish:/dev/ttyj1:4800e:fishlog: +.br +# +.br +# Now we're defaulting to /var/tmp for logfiles... +.br +LOGDIR=/var/tmp +.br +# +.br +# So, this is /var/tmp/birdlog +.br +bird:/dev/ttyj2:4800m:&log: +.br +# +.br +# And this is /var/tmp/solarlog... +.br +solar:|telnet solar::solarlog: +.br +# +.br +# Now things are all in /var/consoles/ +.br +LOGDIR=/var/consoles +.br +shell:|::&: +.br +# +.br +# This opens a connection to port 2003 of ts1... +.br +tribe:!ts1:2003:&: +.br +reptile:!ts1:2004:&: +.br +mentor:/dev/ttyh0@extra.cc.purdue.edu:2400e:&: +.br +%% +.br +# access restrictions +.br +trusted: console.cc.purdue.edu 128.210.7.90 +.br +allow: cc.purdue.edu stat.cc.purdue.edu +.SH "SEE ALSO" +console(1L), conserver(8L) diff --git a/conserver.cf/conserver.passwd b/conserver.cf/conserver.passwd new file mode 100644 index 0000000..4c40453 --- /dev/null +++ b/conserver.cf/conserver.passwd @@ -0,0 +1,3 @@ +bryan:td1AgneGE3RsU:any +djs:*passwd*:any +todd:*passwd*:server1 diff --git a/conserver.cf/dummy.cf b/conserver.cf/dummy.cf deleted file mode 100644 index 0d8a47e..0000000 --- a/conserver.cf/dummy.cf +++ /dev/null @@ -1,22 +0,0 @@ -# dummy conserver config file -# -# $Id: dummy.cf,v 4.3 92/07/27 12:23:59 ksb Exp $ -# -# 1. change the `/dev/ttya' to any tty device you can put a serial device on -# that you could talk to with kermit/cu. Put in the baud rate and parity. -# -# 2. change the `cc.purdue.edu' to your local domain. -# -# 3. !! do not leave this up, as it can give local users a root shell (login) -# !! for extended testing change the `|' to `|su - tst' where tst is a -# !! vanilla test acount, or comment out the `login' console. -# -# list of consoles we serve -# name : tty[@host] : baud[parity] : device : group -dumb:/dev/ttya:9600p:/tmp/dummy.log:1 -login:|:9600p:/tmp/login.log:1 -%% -# list of clients we allow -# type machines -trusted: 127.0.0.1 -allowed: cc.purdue.edu diff --git a/conserver/INSTALL b/conserver/INSTALL.old similarity index 100% rename from conserver/INSTALL rename to conserver/INSTALL.old diff --git a/conserver/Makefile b/conserver/Makefile index 78b1ad0..92b9e62 100644 --- a/conserver/Makefile +++ b/conserver/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.9 1999-01-14 13:30:29-08 bryan Exp $ +# $Id: Makefile,v 1.10 1999-01-21 23:32:43-08 bryan Exp $ # # Makefile for console server # @@ -19,7 +19,7 @@ SRC= access.c client.c consent.c group.c main.c master.c \ readcfg.c fallback.c OBJ= access.o client.o consent.o group.o main.o master.o \ readcfg.o fallback.o -INIT= init.script +INIT= conserver.rc all: ${PROG} diff --git a/conserver/README b/conserver/README.old similarity index 100% rename from conserver/README rename to conserver/README.old diff --git a/conserver/cons-default.h b/conserver/cons-default.h new file mode 100644 index 0000000..c06e84e --- /dev/null +++ b/conserver/cons-default.h @@ -0,0 +1,29 @@ +/* + * $Id: cons-default.h,v 1.1 1999-01-25 18:24:30-08 bryan Exp $ + * + * GNAC, Inc., 1998 + * + * Maintainer/Enhancer: Bryan Stansell (bryan@gnac.com) + */ + +/* +--- Socket used to communicate +#define PORT 782 + or +#define SERVICE "conserver" + +--- Hostname of console server +#define HOST "console" + +--- Config file path +#define CONFIG "/etc/conserver.cf" + +--- Password file path +#define PASSWD_FILE "/etc/conserver.passwd" + +--- Number of consoles per child process +#define MAXMEMB 8 + +--- Number of child processes +#define MAXGRP 32 +*/ diff --git a/conserver/cons.h b/conserver/cons.h index a914e64..6a9c985 120000 --- a/conserver/cons.h +++ b/conserver/cons.h @@ -1 +1 @@ -cons-test.h \ No newline at end of file +cons-default.h \ No newline at end of file diff --git a/conserver/conserver.8l b/conserver/conserver.8l deleted file mode 100644 index 47b735e..0000000 --- a/conserver/conserver.8l +++ /dev/null @@ -1,78 +0,0 @@ -.\" @(#)conserver.8 01/06/91 OSU CIS; Thomas A. Fine -.\" $Id: conserver.8l,v 2.3 93/02/09 11:51:56 ldv Exp $ -.TH CONSERVER 8L "LOCAL" -.SH NAME -conserver \- console server daemon -.SH SYNOPSIS -.B conserver [\-\fBnv\fP] [\-\fBC\fP \fIconfig\fP] -.br -.B conserver [\-\fBhV\fP] -.SH DESCRIPTION -.B Conserver -is the daemon for the -.IR console (1L) -program. -It provides remote access to the server consoles, -and logs all console data. -Slave hosts which have no current connection might produce important -error messages, these unloved errors are labeled with a machine name -and output on stdout. -.PP -When started, it forks a child for each group in /usr/local/etc/conserver.cf, -and assigns each process a port number to listen on. -The \fIconsole\fP client program knows how to request port numbers and -forwards to find the various slave hosts. -.PP -.B Conserver -completely controls any connection to a controlled host. -All handling of escape sequenes is done by the server, -except the suspend sequence which is -sent as an out-of-band command to the client. -.PP -The -.B conserver -parent process will automatically respawn any child process that dies. -If the parent process receives a SIGTERM, it will propogate the signal -to its children. -.SH OPTIONS -.TP -.BI \-C config -With this option the invoker may specify an alternate confguration. -The default \fIconfig\fP is /usr/local/lib/conserver.cf. -.TP -.B \-h -Output a brief help message. -.TP -.B \-n -The \fIconserver\fP will \fBnot\fP output unloved console output to -stdout. -.TP -.B \-v -Echo the configuration as it is being read (be verbose). -.TP -.B \-V -Output the version of the console server (only) and exit. -.SH EXAMPLES -conserver: expert: login ksb -.br -tyro: panic: my brain hurts -.br -conserver: ksb shifts from expert to tyro -.br -conserver: tyro: logout ksb -.br -\... -.SH FILES -.TS -l l. -/usr/local/lib/conserver.cf description of console terminal lines -/usr/adm/\fIhost\fP.console log files for \fIhost\fP's console -/dev/tty?? terminal line device files -\fIstdout\fP summary of unloved console errors -.TE -.SH AUTHORS -Thomas A. Fine, Ohio State Computer Science -.br -Kevin S Braunsdorf, Purdue University Computing Center -.SH "SEE ALSO" -console(1L), conserver.cf(5L) diff --git a/conserver/conserver.man b/conserver/conserver.man index 524469a..3e17a83 100644 --- a/conserver/conserver.man +++ b/conserver/conserver.man @@ -1,10 +1,10 @@ .\" @(#)conserver.8 01/06/91 OSU CIS; Thomas A. Fine -.\" $Id: conserver.man,v 2.3 93/02/09 11:51:56 ldv Exp $ +.\" $Id: conserver.man,v 1.3 1999-01-25 15:05:07-08 bryan Exp $ .TH CONSERVER 8L "LOCAL" .SH NAME conserver \- console server daemon .SH SYNOPSIS -.B conserver [\-\fBnv\fP] [\-\fBC\fP \fIconfig\fP] +.B conserver [\-\fBdnv\fP] [\-\fBC\fP \fIconfig\fP] .br .B conserver [\-\fBhV\fP] .SH DESCRIPTION @@ -18,7 +18,7 @@ Slave hosts which have no current connection might produce important error messages, these unloved errors are labeled with a machine name and output on stdout. .PP -When started, it forks a child for each group in /usr/local/etc/conserver.cf, +When started, it forks a child for each group in /etc/conserver.cf, and assigns each process a port number to listen on. The \fIconsole\fP client program knows how to request port numbers and forwards to find the various slave hosts. @@ -40,6 +40,9 @@ to its children. With this option the invoker may specify an alternate confguration. The default \fIconfig\fP is /usr/local/lib/conserver.cf. .TP +.B \-d +Become a daemon. +.TP .B \-h Output a brief help message. .TP @@ -52,27 +55,18 @@ Echo the configuration as it is being read (be verbose). .TP .B \-V Output the version of the console server (only) and exit. -.SH EXAMPLES -conserver: expert: login ksb -.br -tyro: panic: my brain hurts -.br -conserver: ksb shifts from expert to tyro -.br -conserver: tyro: logout ksb -.br -\... .SH FILES .TS l l. -/usr/local/lib/conserver.cf description of console terminal lines -/usr/adm/\fIhost\fP.console log files for \fIhost\fP's console -/dev/tty?? terminal line device files +/etc/conserver.cf description of console terminal lines +/etc/conserver.passwd users allowed to access consoles \fIstdout\fP summary of unloved console errors .TE .SH AUTHORS Thomas A. Fine, Ohio State Computer Science .br Kevin S Braunsdorf, Purdue University Computing Center +.br +Bryan Stansell, Global Networking and Computing, Inc. .SH "SEE ALSO" console(1L), conserver.cf(5L) diff --git a/conserver/init.script b/conserver/conserver.rc similarity index 100% rename from conserver/init.script rename to conserver/conserver.rc diff --git a/conserver/main.c b/conserver/main.c index f481983..9eff578 100644 --- a/conserver/main.c +++ b/conserver/main.c @@ -1,5 +1,5 @@ /* - * $Id: main.c,v 5.29 1999-01-13 11:48:11-08 bryan Exp $ + * $Id: main.c,v 5.30 1999-01-22 00:02:35-08 bryan Exp $ * * GNAC, Inc., 1998 * @@ -58,7 +58,7 @@ #endif char rcsid[] = - "$Id: main.c,v 5.29 1999-01-13 11:48:11-08 bryan Exp $"; + "$Id: main.c,v 5.30 1999-01-22 00:02:35-08 bryan Exp $"; char *progname = rcsid; int fAll = 1, fVerbose = 0, fSoftcar = 0; @@ -287,11 +287,13 @@ char **argv; } } +#if HAVE_SHADOW /* Why force root??? Cause of getsp*() calls... */ if (0 != geteuid()) { fprintf(stderr, "%s: must be the superuser\n", progname); exit(1); } +#endif /* read the config file */ diff --git a/conserver/version.h b/conserver/version.h index ad86776..22469e2 100644 --- a/conserver/version.h +++ b/conserver/version.h @@ -1,9 +1,9 @@ /* - * $Id: version.h,v 1.9 1999-01-15 16:02:17-08 bryan Exp $ + * $Id: version.h,v 1.9 1999-01-15 16:02:17-08 bryan Exp bryan $ * * GNAC, Inc., 1998 * * Maintainer/Enhancer: Bryan Stansell (bryan@gnac.com) */ -#define GNAC_VERSION "GNAC version 6.08" +#define GNAC_VERSION "GNAC version 6.09" diff --git a/console/INSTALL b/console/INSTALL.old similarity index 100% rename from console/INSTALL rename to console/INSTALL.old diff --git a/console/Makefile b/console/Makefile index 50b677b..c4c68f2 100644 --- a/console/Makefile +++ b/console/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.9 1999-01-14 13:05:58-08 bryan Exp $ +# $Id: Makefile,v 1.11 1999-01-25 15:38:39-08 bryan Exp $ # # Makefile for console client progran # @@ -25,7 +25,7 @@ ${PROG}: ${OBJ} ${CC} -o $@ ${CFLAGS} ${OBJ} ${LIBS} clean: FRC - rm -f Makefile.bak ${PROG} a.out *.o core errs lint.out tags + rm -f Makefile.bak ${PROG} *.tbl a.out *.o core errs lint.out tags depend: ${HDR} ${SRC} FRC makedepend ${CDEFS} ${LINCLUDE} ${SRC} @@ -39,7 +39,8 @@ ${MAN}/man${MANSECT}: ${INSTALL} -d $@ install.man: ${MAN}/man${MANSECT} - ${INSTALL} -c console.man ${MAN}/man${MANSECT}/console.${MANSECT} + tbl console.man > console.tbl + ${INSTALL} -c console.tbl ${MAN}/man${MANSECT}/console.${MANSECT} lint: ${HDR} ${SRC} FRC lint -h ${CDEFS} ${LINCLUDE} ${SRC} diff --git a/console/README b/console/README.old similarity index 100% rename from console/README rename to console/README.old diff --git a/console/console.8l b/console/console.8l deleted file mode 100644 index fdf9615..0000000 --- a/console/console.8l +++ /dev/null @@ -1,185 +0,0 @@ -.\" $Id: console.8l,v 5.0 92/01/13 14:44:36 ksb Exp $ -.TH CONSOLE 8L "Local" -.SH NAME -console \- console server client program -.SH SYNOPSIS -\fBconsole\fP [\-\fBrv\fP] [\-\fBAFSafs\fP] [\-\fBe\fP \fIesc\fP] [\-\fBM\fP \fIserver\fP] \fIhost\fP -.br -\fBconsole\fP [\-\fBdDqQ\fP] [\-\fBv\fP] [\-\fBM\fP \fIserver\fP] \fIhost\fP -.br -\fBconsole\fP [\-\fBv\fP] [\-\fBhuVwx\fP] -.SH DESCRIPTION -.B Console -is used to manipulate console terminals remotely or poll running -\fIconserver\fP(8L) daemons for status information. -.PP -.B Console -queries the user for the root passwd before -granting interactive access to a console (on a non-trusted system) -since such a session may provide single-user access. -.PP -In the non-interactive mode -.B console -outputs only the requested information. -.SH OPTIONS -.TP -.B \-a -Access a console with a two-way connection (this is the default). -.TP -.B \-d -Display daemon versions. The \fIconsole\fP client connects to each -server to request its version information. The uppercase varient of -this option only requests the primary server's version. -.TP -.BI \-e esc -Set the initial two character escape sequence to -those represented by \fIesc\fP. -Any of the forms output by \fIcat\fP(1)'s \-\fBv\fP option -are accepted. The default value is ``^Ec''. -.TP -.B \-f -Same as -.I \-a -except it will force any existing connection into spy mode. -.TP -.B \-h -Display a brief help message. -.TP -.BI \-M server -The \fIconsole\fP client program polls \fIserver\fP as the primary server, -rather than the hard coded default (``console.cc.purdue.edu''). -.TP -.B \-q -The \fIconsole\fP client requests the server daemon quit (shutdown). -A password is sent in the protocol stream, if none is required for -the local host to shutdown the server just press return. The uppercase -varient of this command just acts on the primary server. -.TP -.B \-r -Request a raw connection to the group control virtual console, -this is only useful for learning the protocol used by the -interactive sequence. -.TP -.B \-s -Requests a read-only (spy mode) connection. -If this mode all the escape sequences (below) work, or report errors, -but all other keyboard input is discarded. -.TP -.B \-V -Output the version of the console client program. -.TP -.B \-v -Be more verbose during when building the connection(s). -Use this option in combination with any of `show' options (below) -for added benefit. -.TP -.B \-u -Show a list of consoles and the users on each. -.TP -.B \-w -Show a list of all connections to all consoles. -.TP -.B \-x -Show a list of consoles and devices. -.PP -The \-\fBA\fP, \-\fBF\fP, or \-\fBS\fP options have the same effect as -their lower case variants. -In addition they each request the last 20 lines of the console output after -making the connection. -.PP -Any default (\-\fBa\fP) connection is dropped to spy mode if -someone else is attached read-write. -.SH "ESCAPE SEQUENCES" -The connection can be controlled by a two character escape sequence, followed -by a command. The default escape sequence is ``control-E c'' -(octal 005 143). Commands are: -.sp -.TS -c l. -a switch to attach mode -c toggle flow control (don't do this) -d down the current console -e change the escape sequence to the next two characters -f force a switch to attach mode -l1 send a 3 second serial line break (might halt a Sun) -o reopen the line to clear errors (silo overflows) -r replay the last 20 lines of output -s switch to spy mode -u show other users on this port -v show the version of the group server -w who is using this console -x examine this group's devices and modes. -z suspend this connection -? display list of commands -^I toggle tab expansion -^J continue, ignore the escape sequence -^R replay the last line only -\. disconnect -; provide a new login or shift to a new console -+(-) be more (less) free with newlines -.TE -.sp -.PP -If any other character is hit after the escape sequence, all three characters -will be discarded. -Note that a line break or a down command -can only be sent from a full two-way attachment. -To send the escape sequence through the connection one must redefine -the outer escape sequence. -.PP -In the \-u output, the login \fB\fP indicates no one is -viewing that console, the login \fB\fP indicates that -no one has a full two-way attachment. When no one is attached to -a console its output is cloned to the stdout of the server process. -.SH EXAMPLES -.TP -console \-u -Outputs something like: -.sp -.RS -.TS -l18 l l. -dumb up -expert up ksb@mentor -tyro up -mentor up -sage up fine@cis -.TE -.RE -.sp -The \fB\fP indicates no one is viewing \fIdumb\fP or \fImentor\fP, -the \fB\fP indicates only read-only connections exist for \fItyro\fP, -other \fIlogin\fP@\fIhost\fP entries are the currently attached -\fIsage\fP and \fIexpert\fP. -.TP -console \-w -Outputs something like: -.sp -.RS -.TS -l l l. -ksb@extra on expert Fri Feb 15 16:40:36 1991 -file@cis on sage Thu Feb 14 1:04:10 1991 -dmr@alice spy tyro Thu Feb 7 10:09:59 1991 -.TE -.RE -.sp -.TP -console \-e \*(lq^[1\*(rq lv426 -Requests a connection to the host ``lv426'' with the escape characters -set to ``escape one''. -.SH BUGS -Connections suspended under Dynix sometimes break the kernel when -resumed. Suspended connections are a poor idea in general, just -disconnect instead. -.PP -It is possible to create a loop of console connections, with ugly results. -Never run \fIconsole\fP from within a console connection. -.PP -The \-\fBr\fP option doesn't help to explain how connections get built. -.SH AUTHORS -Thomas A. Fine, Ohio State Computer Science. -.br -Kevin Braunsdorf, Purdue University Computing Center -.SH "SEE ALSO" -conserver.cf(5L), conserver(8L) diff --git a/console/console.c b/console/console.c index a054031..7099d48 100644 --- a/console/console.c +++ b/console/console.c @@ -1,5 +1,5 @@ /* - * $Id: console.c,v 5.23 1999-01-15 15:35:19-08 bryan Exp $ + * $Id: console.c,v 5.24 1999-01-25 15:10:14-08 bryan Exp $ * * GNAC, Inc., 1998 * @@ -77,7 +77,7 @@ extern char *sys_errlist[]; #endif static char rcsid[] = - "$Id: console.c,v 5.23 1999-01-15 15:35:19-08 bryan Exp $"; + "$Id: console.c,v 5.24 1999-01-25 15:10:14-08 bryan Exp $"; static char *progname = rcsid; int fVerbose = 0, fReplay = 0, fRaw = 0; @@ -1273,9 +1273,9 @@ char **argv; break; case 'h': - printf("%s: usage [-aAfFsS] [-v] [-e esc] [-M mach] [-l username] machine\n", progname); - printf("%s: usage [-hpuVw]\n", progname); - printf("%s: usage [-qQ] [-v] [-M mach]\n", progname); + printf("%s: usage [-aAfFsS] [-rv] [-e esc] [-M mach] [-l username] machine\n", progname); + printf("%s: usage [-v] [-hdDuVwx]\n", progname); + printf("%s: usage [-qQ] [-M mach]\n", progname); Usage(stdout, apcLong); exit(0); /*NOTREACHED*/ diff --git a/console/console.man b/console/console.man index 9b63f3e..d06c3ac 100644 --- a/console/console.man +++ b/console/console.man @@ -1,20 +1,20 @@ -.\" $Id: console.man,v 5.0 92/01/13 14:44:36 ksb Exp $ +.\" $Id: console.man,v 1.2 1999-01-25 14:01:56-08 bryan Exp $ .TH CONSOLE 8L "Local" .SH NAME console \- console server client program .SH SYNOPSIS -\fBconsole\fP [\-\fBrv\fP] [\-\fBAFSafs\fP] [\-\fBe\fP \fIesc\fP] [\-\fBM\fP \fIserver\fP] \fIhost\fP +\fBconsole\fP [\-\fBaAfFsS\fP] [\-\fBrv\fP] [\-\fBe\fP \fIesc\fP] [\-\fBM\fP \fIserver\fP] \fIhost\fP .br -\fBconsole\fP [\-\fBdDqQ\fP] [\-\fBv\fP] [\-\fBM\fP \fIserver\fP] \fIhost\fP +\fBconsole\fP [\-\fBv\fP] [\-\fBhdDuVwx\fP] .br -\fBconsole\fP [\-\fBv\fP] [\-\fBhuVwx\fP] +\fBconsole\fP [\-\fBqQ\fP] [\-\fBM\fP \fIserver\fP] .SH DESCRIPTION .B Console is used to manipulate console terminals remotely or poll running \fIconserver\fP(8L) daemons for status information. .PP .B Console -queries the user for the root passwd before +queries the user for the their passwd before granting interactive access to a console (on a non-trusted system) since such a session may provide single-user access. .PP @@ -47,7 +47,7 @@ Display a brief help message. .TP .BI \-M server The \fIconsole\fP client program polls \fIserver\fP as the primary server, -rather than the hard coded default (``console.cc.purdue.edu''). +rather than the hard coded default (``console''). .TP .B \-q The \fIconsole\fP client requests the server daemon quit (shutdown). @@ -65,6 +65,9 @@ Requests a read-only (spy mode) connection. If this mode all the escape sequences (below) work, or report errors, but all other keyboard input is discarded. .TP +.B \-u +Show a list of consoles and the users on each. +.TP .B \-V Output the version of the console client program. .TP @@ -73,9 +76,6 @@ Be more verbose during when building the connection(s). Use this option in combination with any of `show' options (below) for added benefit. .TP -.B \-u -Show a list of consoles and the users on each. -.TP .B \-w Show a list of all connections to all consoles. .TP @@ -101,8 +101,11 @@ c toggle flow control (don't do this) d down the current console e change the escape sequence to the next two characters f force a switch to attach mode +g group info +L toggle logging on/off l1 send a 3 second serial line break (might halt a Sun) o reopen the line to clear errors (silo overflows) +p replay the last 60 lines of output r replay the last 20 lines of output s switch to spy mode u show other users on this port @@ -115,8 +118,6 @@ z suspend this connection ^J continue, ignore the escape sequence ^R replay the last line only \. disconnect -; provide a new login or shift to a new console -+(-) be more (less) free with newlines .TE .sp .PP @@ -157,13 +158,15 @@ Outputs something like: .sp .RS .TS -l l l. -ksb@extra on expert Fri Feb 15 16:40:36 1991 -file@cis on sage Thu Feb 14 1:04:10 1991 -dmr@alice spy tyro Thu Feb 7 10:09:59 1991 +l18 l l. +ksb@extra attach 2days expert +file@cis attach 21:46 sage +dmr@alice spy 0:04 tyro .TE .RE .sp +The third column is the idle time of the user. Either hours:minutes or number +of days is displayed. .TP console \-e \*(lq^[1\*(rq lv426 Requests a connection to the host ``lv426'' with the escape characters @@ -181,5 +184,7 @@ The \-\fBr\fP option doesn't help to explain how connections get built. Thomas A. Fine, Ohio State Computer Science. .br Kevin Braunsdorf, Purdue University Computing Center +.br +Bryan Stansell, Global Networking and Computing, Inc. .SH "SEE ALSO" conserver.cf(5L), conserver(8L) diff --git a/port/IRIX6 b/port/IRIX6 new file mode 100644 index 0000000..e298106 --- /dev/null +++ b/port/IRIX6 @@ -0,0 +1,8 @@ +# $Id: IRIX6,v 1.1 1999-01-15 15:28:51-08 bryan Exp $ +# +'CC=cc' +'INSTALL=/sbin/install' +'INCLUDE=' +'DEBUG=-O' +'CDEFS=-DIRIX6' +'LIBS=' diff --git a/port/README b/port/README new file mode 100644 index 0000000..91db856 --- /dev/null +++ b/port/README @@ -0,0 +1,48 @@ + Porting + ======= + +Well, porting should be a fairly simple process. There are three things +that need to be set up to get things to work. First, you need to modify +the 'system' script so that it can properly detect your system and +associate it with a name. Next, create a file in this directory of the +same name with the proper makefile definitions. You should be able to +just copy the SunOS5 file to the name you created and modify the values +defined. One of the important things to do is create a token name to be +used during compilation (see the CDEFS lines - Solaris 5.X uses SUN5, for +example). This token will then be used in the ../conserver/port.h file. + +So, as an example, say you're porting to the "Unix OS" version 6.4. +You'd add a line like the following to the system script: + + UnixOS-6.*) p="UnixOS6" ;; + +Then you'd create a UnixOS6 file in this directory with the contents of: + + # Sample UnixOS6 file + # + 'CC=gcc' + 'INSTALL=/usr/ucb/install' + 'INCLUDE=' + 'DEBUG=-O' + 'CDEFS=-DUNIXOS6' + 'LIBS=' + +Again, the key is the -DUNIXOS6 line...the others should be whatever is +required to get things to build. + +Now you need to go define UNIXOS6 in ../conserver/port.h and have +it define the appropriate things. You'll need to add UNIXOS6 to the +line above '#error "Platform needs to be defined. See port.h"' and +then work through the file inserting UNIXOS6 at the appropriate spots. +Hopefully that's all you'll need to get the software to build. If, for +some reason, a porting issue is not dealt with properly in the source +files, you may need to adjust other .c and .h files. But, hopefully not. +Most of the tricky stuff can be adjusted via the port.h file. + +That's about all the instructions I have. If I've missed anything +important, I'll be more than happy to supplement these instructions. +Just let me know. Just let me know. + +# +# $Id: README,v 1.1 1999-01-22 13:24:21-08 bryan Exp $ +#