Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!linus!security!genrad!mit-eddie!mit-vax!eagle!harpo!utah-cs!lepreau From: lepreau@utah-cs.UUCP Newsgroups: net.bugs.4bsd Subject: Fix for tset getting type from environment Message-ID: <2230@utah-cs.UUCP> Date: Fri, 18-Nov-83 12:09:08 EST Article-I.D.: utah-cs.2230 Posted: Fri Nov 18 12:09:08 1983 Date-Received: Sat, 19-Nov-83 23:02:56 EST Lines: 27 Index: ucb/tset/tset.c 4.2BSD Fix Description: rlogin nicely propogates the terminal type in the environment, but tset doesn't use it if mapping is specified. Such mapping if often necessary because users sometimes log in via telnet and not rlogin, for various reasons (such as they're coming from a non-Unix host.) Repeat-By: rlogin to another host and have your .login on that host contain a tset something like: set noglob; eval `tset -Q -s -m -m network:?t10`; set glob It will query you even tho it knows better. Fix: Fix by using any existing type from environment as starting point even if mapping is specified. (Dunno why that test on "Mapping" was there. Looks like a logic bug to me.) This fix applies to 4.1x tset also. *************** *** 850,852 /* get current idea of terminal type from environment */ ! if (!Dash_h && !Mapped && TtyType == 0) TtyType = getenv("TERM"); --- 850,852 ----- /* get current idea of terminal type from environment */ ! if (!Dash_h && TtyType == 0) TtyType = getenv("TERM");