@@ -32,27 +32,18 @@ def openpty():
3232    except  (AttributeError , OSError ):
3333        pass 
3434    master_fd , slave_name  =  _open_terminal ()
35-     slave_fd  =  slave_open (slave_name )
36-     return  master_fd , slave_fd 
37- 
38- def  master_open ():
39-     """master_open() -> (master_fd, slave_name) 
40-     Open a pty master and return the fd, and the filename of the slave end. 
41-     Deprecated, use openpty() instead.""" 
42- 
43-     import  warnings 
44-     warnings .warn ("Use pty.openpty() instead." , DeprecationWarning , stacklevel = 2 )  # Remove API in 3.14 
4535
36+     slave_fd  =  os .open (slave_name , os .O_RDWR )
4637    try :
47-         master_fd , slave_fd  =  os .openpty ()
48-     except  (AttributeError , OSError ):
38+         from  fcntl  import  ioctl , I_PUSH 
39+     except  ImportError :
40+          return  master_fd , slave_fd 
41+     try :
42+         ioctl (result , I_PUSH , "ptem" )
43+         ioctl (result , I_PUSH , "ldterm" )
44+     except  OSError :
4945        pass 
50-     else :
51-         slave_name  =  os .ttyname (slave_fd )
52-         os .close (slave_fd )
53-         return  master_fd , slave_name 
54- 
55-     return  _open_terminal ()
46+     return  master_fd , slave_fd 
5647
5748def  _open_terminal ():
5849    """Open pty master and return (master_fd, tty_name).""" 
@@ -66,26 +57,6 @@ def _open_terminal():
6657            return  (fd , '/dev/tty'  +  x  +  y )
6758    raise  OSError ('out of pty devices' )
6859
69- def  slave_open (tty_name ):
70-     """slave_open(tty_name) -> slave_fd 
71-     Open the pty slave and acquire the controlling terminal, returning 
72-     opened filedescriptor. 
73-     Deprecated, use openpty() instead.""" 
74- 
75-     import  warnings 
76-     warnings .warn ("Use pty.openpty() instead." , DeprecationWarning , stacklevel = 2 )  # Remove API in 3.14 
77- 
78-     result  =  os .open (tty_name , os .O_RDWR )
79-     try :
80-         from  fcntl  import  ioctl , I_PUSH 
81-     except  ImportError :
82-         return  result 
83-     try :
84-         ioctl (result , I_PUSH , "ptem" )
85-         ioctl (result , I_PUSH , "ldterm" )
86-     except  OSError :
87-         pass 
88-     return  result 
8960
9061def  fork ():
9162    """fork() -> (pid, master_fd) 
0 commit comments