lkml.org 
[lkml]   [2016]   [Apr]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Does anyone care about a race free ptsname?
On Tue, Apr 19, 2016 at 04:39:07PM -0700, H. Peter Anvin wrote:
> On 04/19/2016 04:23 PM, Linus Torvalds wrote:
> > On Tue, Apr 19, 2016 at 11:44 AM, Eric W. Biederman
> > <ebiederm@xmission.com> wrote:
> >>
> >> I will take a look in a minute. Before I do that I want to mention
> >> why I care about /dev/pts/ptmx.
> >>
> >> There is a posix function that is widely used called ptsname. It's
> >> function is to take a master file descriptor and returns the path to the
> >> slave.
> >>
> >> All we have in the kernel to support ptsname is an ioctl TIOCGPTN that
> >> returns the pty number in the appropriate instance of devpts.
> >
> > Don't bother with that completely mis-designed interface.It's crap.
> >
> > So we'll keep it working for legacy models, but the whole "return an
> > integer index" is just pure shit. It's not worth worrying about.
> >
> > We can (and probably should) just introduce a new ioctl or even a
> > system call that just does the sane thing and returns the pathname
> > from the kernel.
> >
>
> What do you think of the idea of TIOCPTSOPEN (or whatever) to get a file
> descriptor for the slave device given the master device? Then we can

That's what i was thinking, since as I said many users just want

blah = ptsname(fd);
slavefd = open(blah, ...);

so they really just want an open fd.

> use realpath() or a readlink on /proc/self/fd/# to get the pathname if
> needed.
>
> (Incidentally, we added getcwd() as a system call. Should we add
> [f]realpath() as a system call too?)
>
> -hpa

\
 
 \ /
  Last update: 2016-04-20 04:01    [W:0.201 / U:0.176 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site