Codebase list golang-pty / ce7fa45
Merge pull request #44 from cmarcelo/pr/dragonfly-gofmt Reformat pty_dragonfly.go file using gofmt Guillaume J. Charmes authored 7 years ago GitHub committed 7 years ago
1 changed file(s) with 8 addition(s) and 9 deletion(s). Raw diff Collapse all Expand all
22 import (
33 "errors"
44 "os"
5 "strings"
56 "syscall"
67 "unsafe"
7 "strings"
88 )
99
1010 // same code as pty_darwin.go
3636 return p, t, nil
3737 }
3838
39
4039 func grantpt(f *os.File) error {
41 _, err := isptmaster(f.Fd())
42 return err
40 _, err := isptmaster(f.Fd())
41 return err
4342 }
4443
4544 func unlockpt(f *os.File) error {
46 _, err := isptmaster(f.Fd())
47 return err
45 _, err := isptmaster(f.Fd())
46 return err
4847 }
4948
5049 func isptmaster(fd uintptr) (bool, error) {
5453
5554 var (
5655 emptyFiodgnameArg fiodgnameArg
57 ioctl_FIODNAME = _IOW('f', 120, unsafe.Sizeof(emptyFiodgnameArg))
56 ioctl_FIODNAME = _IOW('f', 120, unsafe.Sizeof(emptyFiodgnameArg))
5857 )
5958
6059 func ptsname(f *os.File) (string, error) {
6160 name := make([]byte, _C_SPECNAMELEN)
62 fa := fiodgnameArg {Name: (*byte)(unsafe.Pointer(&name[0])), Len: _C_SPECNAMELEN, Pad_cgo_0: [4]byte{0,0,0,0}}
61 fa := fiodgnameArg{Name: (*byte)(unsafe.Pointer(&name[0])), Len: _C_SPECNAMELEN, Pad_cgo_0: [4]byte{0, 0, 0, 0}}
6362
6463 err := ioctl(f.Fd(), ioctl_FIODNAME, uintptr(unsafe.Pointer(&fa)))
6564 if err != nil {
6867
6968 for i, c := range name {
7069 if c == 0 {
71 s := "/dev/" + string(name[:i])
70 s := "/dev/" + string(name[:i])
7271 return strings.Replace(s, "ptm", "pts", -1), nil
7372 }
7473 }