pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

pkg/55785: misc/screen build issues with openpty



>Number:         55785
>Category:       pkg
>Synopsis:       misc/screen build issues with openpty
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Nov 04 12:30:00 +0000 2020
>Originator:     Michael van Elst
>Release:        NetBSD 9.1_STABLE
>Organization:
	
>Environment:
	
	
System: NetBSD gossam 9.1_STABLE NetBSD 9.1_STABLE (GENERIC) #16: Tue Nov 3 18:38:22 CET 2020 mlelstv@gossam:/home/netbsd9/obj.amd64/home/netbsd9/src/sys/arch/amd64/compile/GENERIC amd64
Architecture: x86_64
Machine: amd64
>Description:
misc/screen builds differently depending on functionality provided
by ptyfs.

The official package compiles to access /dev/ptmx directly to
acquire ptys.

A package built in a simple chroot compiles to use openpty() from
libutil.  In this case the upstream code isn't used but a patched
OpenPTY function provided by patch-aa. This version fails to work
with a mounted ptyfs since it validates the file name of the slave
device to start with the letter 't' so that it can synthesize the
master device name by replacing 't' with 'p'. None of this works
for ptyfs.
As a result screen exits with the message 'No more PTYs'.

patch-aa is ancient and predates ptyfs.

>How-To-Repeat:
Build the package.

If /dev/ptmx exists and the symbols ptsname, grantpt and unlockpt
are found by the linker, these are used.

Otherwise openpty is used and our patch fails on validating the
result when ptyfs is in use.

>Fix:
1. Ignore ptyfs in build environment.

2. Either require ptyfs or use a function that gracefully handles
compat ptys and ptyfs. Upstream already includes a version of
OpenPTY that uses openpty which we override with patch-aa. It might
be sufficient to remove the patch.

>Unformatted:
 	
 	


Home | Main Index | Thread Index | Old Index