This repository has been archived by the owner on Aug 14, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Arquivotheca/getty_ps
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Getty Kit, Version 2.0 Copyright (c) 1989,1990, Paul Sutcliffe Jr. ------------------------------------------------------------------------------- Permission is hereby granted to copy, reproduce, redistribute, or otherwise use this software as long as: there is no monetary profit gained specifically from the use or reproduction or this software, it is not sold, rented, traded or otherwise marketed, and this copyright notice is included prominently in any copy made. The author make no claims as to the fitness or correctness of this software for any use whatsoever, and it is provided as is. Any use of this software is at the user's own risk. ------------------------------------------------------------------------------- WHY THIS GETTY: As most people have seen, the stock getty provided on Unix/Xenix systems lacks many features that can be useful. The getty included in this distribution adds several features that I needed on my own system, plus includes several "Wouldn't it be nice if ..." features I've heard mentioned around UseNet. Getty 2.0 trys to emulate a "standard" System V getty in every way it can. For instance, it uses the SysV /etc/gettydefs file (although you may give it a different name). It also uses an /etc/issue file, if one is present. Added features include: + Can be used as a normal getty, or as "uugetty" to allow bi-directional usage of modem lines. + Reads a "defaults" file at runtime, so that a single binary can be configured differently on individual lines. This also allows you to change getty's behavior without recompiling. + Let's you specify default erase and kill characters, instead of the ancient '#' and '@' convention still used in some "modern" gettys. + Extensive debugging (to a log file) can be enabled at compile- time. The command line argument to envoke debugging is an octal number -- the bit pattern determines which aspects of getty's behavior are logged. + Let's you specify a program other than "login" to be executed after the user name is entered. + (and the best for last:) The line can be "initialized" before sending the login banner (/etc/issue) and prompt with the use of an expect/send sequence not unlike that used by the UUCP L.sys (or Systems) file. + (and new in version 2.0:) The CONNECT message from the modem can be used to set the line speed; no more having to toggle the speed by sending <break>'s or CR's. REQUIREMENTS: Getty 2.0 should drop right in to any AT&T (System III or V) Unix or derivitive. It has already been successfully installed on: Tandy 6000 Tandy Xenix 3.2 (Microsoft Xenix 3.0) NCR Tower 32/400 Unix SVR[23] 80386 clone SCO Xenix V/386 2.2 Everex STEP 386is ESIX SVR3.2 Rev C INSTALLATION: Please read all the directions below before you proceed any further, and then follow them carefully. Failure to do so may void your warranty. :-) After you have unpacked your kit(s), you should have all the files listed in MANIFEST. 1) Run Configure. This will figure out various things about your system. Some things Configure will figure out for itself, other things it will ask you about. It will then proceed to make config.h, config.sh, and Makefile. You might possibly have to trim # comments from the front of Configure if your sh doesn't handle them, but all other # comments will be taken care of. 2) Glance through config.h to make sure system dependencies are correct. Most of them should have been taken care of by running the Configure script. If you have any additional changes to make to the C definitions, they can be done in the Makefile, or in config.h. Bear in mind that they will get undone next time you run Configure. 3) Copy the sample file tune.H to tune.h and edit tune.h to reflect the special needs of your system and your desired features. Use the following as a guide: boolean If your compiler supports a (boolean) type, you may remove this definition. DEF_CFL Define this to the <termio.h> parameters that will identify your system's normal word length and parity. Possible values are: (CS8) /* 8-bit, no parity */ (CS7|PARENB) /* 7-bit, even parity */ (CS7|PARENB|PARODD) /* 7-bit, odd parity */ Be sure to use only symbols defined in <termio.h> on your system. DEF_CONNECT Define this to the default CONNECT string for your modem(s). DEBUG Define this if you want the runtime debugging code included in the executables. See the section on DEBUGGING in this readme for instructions in usage. LOGUTMP Define this if your utmp file (/etc/utmp) records getty processes as a LOGIN_PROCESS. This is true for all SYS V sites that I'm aware of. MY_CANON Define this if you want to define your own ERASE and KILL characters. You may wish to do this if you are a SYS V site whose defaults are the ancient '#' and '@' characters. See MY_ERASE and MY_KILL below. RCSID Define this if you want RCS version strings compiled into the executables. These can later be found with the what (SCCS) or ident (RCS) commands. SETTERM Define this if you want getty to export the TERM environment variable before calling login. This will only be done if getty knows what kind of terminal is attached to the line it's running on. TELEBIT Define this if you will be using the autobauding feature with Telebit modems. TRYMAIL Define this if you want getty to send email if it has and error and cannot access the CONSOLE device. WARNCASE Define this to allow getty to warn a user if he/she has used only upper-case letters in their login id. If the user re-enters his/her id a second time in upper-case, that value is accepted and process accordingly. MY_ERASE If you've defined MY_CANON, use these to define the values MY_KILL you want for erase and kill characters. TB_FAST During autobauding, a Telebit will say CONNECT FAST if a 9600 or 19200 PEP connection is made. Define this to the speed (either 9600 or 19200) you want getty to set when it sees FAST. NOTIFY If you've defined TRYMAIL, use this to define the account to which the email will be sent. CONSOLE Define this to the name of the console device. DEFAULTS Define this to the name of the defaults file. The %s is necessary, and will be replaced (via an sprintf()) by the name of the executable--either getty or uugetty. ISSUE Define this to the name of your issue file. If this is undefined, no issue file will be displayed during getty's startup. LOGIN Define this to the name of the login program to be called. TRS16 Define this only if you're compiling getty on a Tandy 6000. This define handles the different command line required due to the V7 based /etc/init and also the dain-bramaged /etc/inittab used on Tandy Xenix-68000 3.2 You may also wish to modify the values of {I,O,C,L}SANE in table.c, as my idea of "Sane conditions" may differ from yours. 4) make depend This will look for all the includes and modify Makefile accordingly. Configure will offer to do this for you. 5) make lint This step is optional, but highly recommended. 6) make This will attempt to make getty and uugetty in the current directory. It will also go to the man sub-directory and use m4 to create nroff-able man pages. It will then run nroff on the m4 output. 7) make install This will put getty/uugetty into a public directory (normally /etc). It will also make sure the man pages have been created. It will not install them. You may need to be root to do this. If you are not root, you must own the directories in question and you should ignore any messages about chown not working. Also, if you don't already have an /etc/gettydefs file, you'll need to create one. This goes for the /etc/default files (if you are using them) and the /etc/issue file. There are examples of these in the `sample.files' file. 8) Read the manual entries before running getty/uugetty. 9) IMPORTANT! Help save the world! Communicate any problems and suggested patches to me, paul at devon.lns.pa.us (Paul Sutcliffe Jr.), so we can keep the world in sync. If you have a problem, there's someone else out there who either has had or will have the same problem. If possible, send in patches such that the patch program will apply them. Context diffs are the best, then normal diffs. Don't send ed scripts-- I've probably changed my copy since the version you have. Watch for getty patches in comp.sources.bugs. Patches will generally be in a form usable by the patch program. If you are just now bringing up getty and aren't sure how many patches there are, write to me and I'll send any you don't have. Your current patch level is shown in patchlevel.h. DEBUGGING: To use debugging, you must define DEBUG (in config.h) before compiling. To envoke debugging, use the "-D onum" command line argument. Onum is an octal number. To turn on all levels of debugging, use "-D 0377". To pick specific areas to be watched, look at the defines in the "debug levels" section of getty.h. The value for onum will be the result of OR-ing the values you want. For instance, to debug the defaults file and gettytab file processing, use "-D 022". Have fun. - paul INTERNET: paul at devon.LNS.PA.US | How many whales do you have to UUCP: ...!rutgers!devon!paul | save to get a toaster?
About
Paul Sutcliffe Jr's enhanced SYSV getty/uugetty
Topics
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published