Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 19 Apr 2026 23:17:08 +0000
From:      bugzilla-noreply@freebsd.org
To:        bugs@FreeBSD.org
Subject:   [Bug 294499] [termcap] screen entry has so=\E[3m (italic) should be so=\E[7m (reverse video)
Message-ID:  <bug-294499-227-No46LANtOS@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-294499-227@https.bugs.freebsd.org/bugzilla/>

index | next in thread | previous in thread | raw e-mail

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=294499

--- Comment #5 from Dan Mahoney <freebsd@gushi.org> ---
Additional note on why the base termcap fix is necessary independent of any
Screen-side workaround:

The sysutils/screen port at version 5.0.1_6 emits a runtime workaround by
writing duplicate so= and se= entries into $TERMCAP, with the correct
reverse-video values appearing after the broken italic ones:

  so=\E[3m:se=\E[23m:so=\E[7m:se=\E[27m

Termcap parsers generally take the last occurrence, so this works in the local
session. However, $TERMCAP is not forwarded over SSH -- OpenSSH's SendEnv does
not include it, and AcceptEnv on the remote side typically only lists $TERM.
When a user SSHes from a machine running Screen to another machine and runs an
affected application there, the remote system looks up the screen entry in its
own /etc/termcap, encounters only the broken so=\E[3m, and displays italics
instead of reverse video.

Confirmed: with the per-user ~/.terminfo workaround removed on the remote
system, the bug reappears immediately upon SSH. With the base /etc/termcap fix
applied, no per-user workaround would be needed.

This means the Screen port's runtime duplicate-entry approach, while useful,
cannot substitute for fixing the base entry. The correct fix has to live in
/etc/termcap itself.

-- 
You are receiving this mail because:
You are the assignee for the bug.

home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-294499-227-No46LANtOS>