| 12345678910111213141516171819202122232425262728293031 |
- package termios
- import (
- "bytes"
- "golang.org/x/sys/unix"
- )
- func open_pty_master() (uintptr, error) {
- fd, err := unix.Open("/dev/ptmx", unix.O_NOCTTY|unix.O_RDWR, 0666)
- if err != nil {
- return 0, err
- }
- return uintptr(fd), nil
- }
- func Ptsname(fd uintptr) (string, error) {
- ptm, err := unix.IoctlGetPtmget(int(fd), unix.TIOCPTSNAME)
- if err != nil {
- return "", err
- }
- return string(ptm.Sn[:bytes.IndexByte(ptm.Sn[:], 0)]), nil
- }
- func grantpt(fd uintptr) error {
- return unix.IoctlSetInt(int(fd), unix.TIOCGRANTPT, 0)
- }
- func unlockpt(fd uintptr) error {
- return nil
- }
|