Return to BSD News archive
Path: sserve!newshost.anu.edu.au!munnari.oz.au!mel.dit.csiro.au!its.csiro.au!dmssyd.syd.dms.CSIRO.AU!metro!news.cs.su.oz.au!harbinger.cc.monash.edu.au!yeshua.marcam.com!MathWorks.Com!europa.eng.gtefsd.com!gatech!swrinde!sgiblab!cs.uoregon.edu!nntpserver!cogswell From: cogswell@creampie.cs.uoregon.edu (Bryce Howard Cogswell) Newsgroups: comp.os.386bsd.questions Subject: Re: [FreeBSD] tcsh can't access tty Date: 18 Mar 94 15:37:35 Organization: /home/faculty/cogswell/.organization Lines: 52 Message-ID: <COGSWELL.94Mar18153735@creampie.cs.uoregon.edu> References: <2m936a$gq0@agate.berkeley.edu> <COGSWELL.94Mar17125540@creampie.cs.uoregon.edu> <1994Mar18.163305@cs.utwente.nl> NNTP-Posting-Host: creampie.cs.uoregon.edu In-reply-to: olah@cs.utwente.nl's message of Fri, 18 Mar 1994 15:33:05 GMT olah@cs.utwente.nl (Andras Olah) writes: cogswell@creampie.cs.uoregon.edu (Bryce Howard Cogswell) writes: |> #ifndef HAVE_DISC |> # if defined(TIOCGETD) && defined(NTTYDISC) |> if (ioctl(f, TIOCGETD, (ioctl_t) & oldisc) == 0) { |> if (oldisc != NTTYDISC) { |> int ldisc = NTTYDISC; |> |> if (ioctl(f, TIOCSETD, (ioctl_t) & ldisc) != 0) |> return (-1); |> add_discipline = 1; |> } |> else |> oldisc = -1; |> return (0); |> } |> else |> return (-1); |> # else <<<< NEW !!! |> return (0); <<<< CODE !!! |> # endif /* TIOCGETD && NTTYDISC */ |> #endif /* !HAVE_DISC */ The hack you describe IS included into the source distribution of tcsh in the packages directory. ... The problem is that the new code you mention is not compiled into the code, because TIOCGETD and NTTYDISC are indeed defined. Damn. Right you are. Like I said, I didn't have the original sources to do a diff. Okay, add this (this is what I did): #ifdef FreeBSD # undef NTTYDISC #endif to the top of the tc.disc.c file, as well as adding the patch to the setdisc() function. While you're at it, you better add DFLAGS=-DFreeBSD to the Makefile. The problem is indeed that NTTYDISC is defined but appears to be unsupported. The net result is that even if you don't set the line discipline at all tcsh runs great with full command line editing and job control. Don't ask me why. Sorry about the half-fix in the first post. -- Bryce