From owner-freebsd-stable Wed Sep 20 10:36:21 2000 Delivered-To: freebsd-stable@freebsd.org Received: from email-serv1.custserv.com (taogate.custserv.com [208.135.116.12]) by hub.freebsd.org (Postfix) with ESMTP id A6A1B37B422; Wed, 20 Sep 2000 10:36:18 -0700 (PDT) X-Internal-ID: 39BCDAD80000FC8C Received: from custserv.com (172.16.208.58) by email-serv1.custserv.com (NPlex 2.0.119); Wed, 20 Sep 2000 13:30:56 -0400 Message-ID: Date: Wed, 20 Sep 2000 13:35:00 -0400 From: Mark.Jacobs@custserv.com To: jacobsm@gate.net, freebsd-stable@freebsd.org, freebsd-gnats-submit@freebsd.org Subject: Re: ports/21264: tn3270 port rec Sender: owner-freebsd-stable@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Just investigating this further... There is a setupterm() function in the tn3270 sources (see line 741 of telnet.c) However, this is included only if TERMCAP is defined. If you remove the TERMCAP definition from the CFLAGS in Makefile.inc, tn3270 will "run" again. But, it is really ugly; each field is highlighted, and the highlights seem to "hang around" (possibly an ncurses issue?) However, as to the particular bug - removing -DTERMCAP from the CFLAGs will fix it. Alternatively, renaming the setupterm() function in telnet.c also corrects the problem (again, giving the weird curses issues...) For example, I simply renamed setupterm() to Setupterm() as in the following diff and things "worked" (this might be simpler to add as a patch): *** telnet.c.ori Tue Sep 19 09:07:55 2000 --- telnet.c Tue Sep 19 09:07:47 2000 *************** *** 738,744 **** /*ARGSUSED*/ int ! setupterm(tname, fd, errp) char *tname; int fd, *errp; { --- 738,744 ---- /*ARGSUSED*/ int ! Setupterm(tname, fd, errp) char *tname; int fd, *errp; { *************** *** 772,778 **** if (tnamep && tnamep != unknown) free(tnamep); if ((tname = (char *)env_getvalue((unsigned char *)"TERM")) && ! (setupterm(tname, 1, &err) == 0)) { tnamep = mklist(termbuf, tname); } else { if (tname && (strlen(tname) <= 40)) { --- 772,778 ---- if (tnamep && tnamep != unknown) free(tnamep); if ((tname = (char *)env_getvalue((unsigned char *)"TERM")) && ! (Setupterm(tname, 1, &err) == 0)) { tnamep = mklist(termbuf, tname); } else { if (tname && (strlen(tname) <= 40)) { - Dave Rivers - -- rivers@dignus.com Work: (919) 676-0847 Get your mainframe (370) `C' compiler at http://www.dignus.com To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message