INSTALL ======= Upgrading? Whenever you upgrade I suggest you upgrade both the client and server. Most times, however, you can get away without upgrading the client (it's usually a fairly static piece of code). I'll document any dependencies here, but check the CHANGES file for any new features added to the client if you're considering *not* upgrading. Version 7.2.0 - The code related to broadcast messages in the client (-b) has changed. If you want the username to come across properly in the broadcast message, you'll need to make sure you upgrade to the 7.2.0 client. Version 7.1.1 - Both conserver.passwd and conserver.cf file parsing behaves the same now. Both use leading whitespace as a continuation line indicator - if you have leading whitespace on a line (aside from comments) you probably should remove it. Version 7.1.0 - The client/server protocol has changed. You *MUST* use a 7.1.0 client with a 7.1.0 and above server. A 7.1.0 client is *not* backward compatible with a pre-7.1.0 server. - Some of the flags in the client (-d, -D, and -r) and server (-n) have been given new identities to make the client and server flags more uniform. - The conserver.passwd file now uses the first username match to determine access rights - if you have multiple instances of a username in an existing password file, they must be combined into one to continue to work. Quickie Instructions - Download conserver (http://www.conserver.com/) and unpack - Run './configure' - If all is well, run 'make install' - Now set up config files, etc. (see below) Detailed Instructions - First thing to do is determine if you want different defaults. A './configure --help' will show you the basics. If you like all the defaults shown, you're set. If not, here are the conserver unique options: --with-port=PORT Specify port number [conserver] --with-base=PORT Base port for secondary channel [0] --with-master=MASTER Specify master server hostname [console] --with-cffile=CFFILE Specify config filename [conserver.cf] --with-pwdfile=PWDFILE Specify password filename [conserver.passwd] --with-logfile=LOGFILE Specify log filename [/var/log/conserver] --with-pidfile=PIDFILE Specify PID filepath [/var/run/conserver.pid] --with-maxmemb=MAXMEMB Specify maximum consoles per process [16] --with-timeout=TIMEOUT Specify connect() timeout in seconds [10] --with-libwrap[=PATH] Compile in libwrap (tcp_wrappers) support --with-regex Use regular expressions in conserver.passwd --with-pam enable PAM support Not surprisingly, some match the old conserver/cons.h items...here they are for reference: 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 - Run './configure'. This will detect system specific information. The --prefix option will redirect where things are installed. Other options are available as well...try './configure --help'. - Now run 'make'. Hopefully things will compile. - Once things build, you can run 'make install'. - If you'd like to build the autologin application, you'll need to run 'make autologin'. If you'd like it installed, use 'make autologin.install'. - Now that the binaries are in place, we need to set up the configuration files and such. + Does your conserver master hostname exist? This is the hostname specified with the --with-master option. By default the hostname is "console", so make sure it's in DNS, hosts files, or whatever. + If you used a symbolic name for the --with-port option (by default it uses "conserver", so the answer would be yes), 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 used a number, 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 --with-cffile and --with-pwdfile 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! Other Information And Gotchas - Debian Linux Distribution The Debian folks have conserver distributed with the package names of conserver-client and conserver-server. They are in the distribution "sid" and the "non-free" part (because the Ohio State license doesn't explicitly allow for modification to the code, even though it's totally implied and the intention of the author - I've even got proof in email! Oh well, can't blame the Debian folks for being cautious - they've been burned before, apparently). - Potential GCC bug Adam Morris reported a problem with the following line in console/console.c: if ((in_addr_t) (-1) == pPort->sin_addr.s_addr) { This tickles a GCC bug under HP-UX 11.11 using GCC 3.0.2 in 64-bit mode with optimization enabled (-O). The bug could possibly be provoked in other combinations as well. His fix is to change the line to: if ((in_addr_t) (-1) == inet_addr(pcToHost)) { It's also reported that newer versions of the compiler fix the issue, so if you happen to have problems with the client connecting to servers, you might be tickling this bug and you can upgrade the compiler, turn off the optimization, or apply this code change. # # $Id: INSTALL,v 1.23 2002-09-23 14:05:31-07 bryan Exp $ #