Re: [PATCH v6] grantpt.3: no-op on modern glibc and other UNIXes, HISTORYise

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

 



Subject: grantpt.3: no-op on modern glibc and other UNIXes, HISTORYise

Hi!

Please use Uppercase after the ':'.  Rationale: it should (usually) be an
English sentence, following conventional rules (except for the trailing
period, which we remove).

On 2023-07-18 01:31, наб wrote:
> FreeBSD, OpenBSD, and Linux (/dev/ptmx) do all intialisation in open(2),
> and grantpt(3) is a no-op (that checks whether the fd is a pty, except on
> musl).
> 
> The illumos gate and NetBSD do a ioctl (and, indeed, illumos-gate commit
>  facf4a8d7b59fde89a8662b4f4c73a758e6c402c ("PSARC/2003/246 Filesystem
>   Driven Device Naming"), which kills pt_chmod, notes that it's been
>  "6464196 bfu should remove pt_chmod, obsoleted by /dev filesystem").
> 
> glibc 2.33 completely kills BSD PTY support on Linux
> (Debian hasn't configured with them on any architecture since 2007:
>    https://bugs.debian.org/338404
>  and even earlier on some arches; they're really just trivia under
>  Linux ‒ this may be better served stuffed into HISTORY as an explainer
>  for the SIGCHLD thing, since regardless of the "version", the behaviour
>  is well-defined and consistent).
> 
> There really aren't many cohesive "versions" of this ‒ indeed, so long
> as grantpt(3) exists it behaves precisely as described here ‒
> inasmuch as different systems, historically, had different ptys,
> and thus different implementations. These are all but trivia.

Please use two spaces after period.  ;)

> 
> Cc: Jakub Wilk <jwilk@xxxxxxxxx>
> Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@xxxxxxxxxxxxxxxxxx>
> ---
> I originally thought to do so, but decided against it because I'm not
> substantially changing this paragraph and it's already in VERSIONS...
> Moved with rationale added.

Thanks.  Patch applied.
> 
> Also, administriva-wise, git pull tells me
>   [PATCH 1/2] statfs.2: unshade as deprecated, but direct to statvfs(3)
> with msgid
>   <b4b871ffdf8f764ffd6c25039f3944b08748bd3e.1687553930.git.nabijaczleweli@xxxxxxxxxxxxxxxxxx>
> is the last outstanding patch I have rn, sans this one.

I was waiting for you to send an v2 with the fs and inode corrections
suggested by Tom Schwindl.  Is that correct?

It's a bit weird, because IIRC, I had written to confirm what Tom said,
with pointers to man-pages(7), but now I can't find it.  I'll write
(again?) now.

Cheers,
Alex

> 
>  man3/grantpt.3 | 22 ++++++++++------------
>  1 file changed, 10 insertions(+), 12 deletions(-)
> 
> diff --git a/man3/grantpt.3 b/man3/grantpt.3
> index a19172a3e..949f70de9 100644
> --- a/man3/grantpt.3
> +++ b/man3/grantpt.3
> @@ -83,18 +83,6 @@ .SH ATTRIBUTES
>  .hy
>  .ad
>  .sp 1
> -.SH VERSIONS
> -Many systems implement this function via a set-user-ID helper binary
> -called "pt_chown".
> -On Linux systems with a devpts filesystem (present since Linux 2.2),
> -the kernel normally sets the correct ownership and permissions
> -for the pseudoterminal slave when the master is opened
> -.RB ( posix_openpt (3)),
> -so that nothing must be done by
> -.BR grantpt ().
> -Thus, no such helper binary is required
> -(and indeed it is configured to be absent during the
> -glibc build that is typical on many systems).
>  .SH STANDARDS
>  POSIX.1-2008.
>  .SH HISTORY
> @@ -103,6 +91,16 @@ .SH HISTORY
>  .PP
>  This is part of the UNIX 98 pseudoterminal support, see
>  .BR pts (4).
> +.PP
> +Historical systems implemented this function via a set-user-ID helper binary
> +called "pt_chown".
> +glibc on Linux before glibc 2.33 could do so as well,
> +in order to support configurations with only BSD pseudoterminals;
> +this support has been removed.
> +On modern systems this is either a no-op
> +\[em]with permissions configured on pty allocation, as is the case on Linux\[em]
> +or an
> +.BR ioctl (2).
>  .SH SEE ALSO
>  .BR open (2),
>  .BR posix_openpt (3),

-- 
<http://www.alejandro-colomar.es/>
GPG key fingerprint: A9348594CE31283A826FBDD8D57633D441E25BB5

Attachment: OpenPGP_signature
Description: OpenPGP digital signature


[Index of Archives]     [Kernel Documentation]     [Netdev]     [Linux Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux