@@ -560,14 +560,12 @@ func ioctlPtr(fd int, req uint, arg unsafe.Pointer) (err error) {
560
560
}
561
561
562
562
func IoctlSetTermio (fd int , req uint , value * Termio ) error {
563
- err := ioctl (fd , req , uintptr (unsafe .Pointer (value )))
564
- runtime .KeepAlive (value )
565
- return err
563
+ return ioctlPtr (fd , req , unsafe .Pointer (value ))
566
564
}
567
565
568
566
func IoctlGetTermio (fd int , req uint ) (* Termio , error ) {
569
567
var value Termio
570
- err := ioctl (fd , req , uintptr ( unsafe .Pointer (& value ) ))
568
+ err := ioctlPtr (fd , req , unsafe .Pointer (& value ))
571
569
return & value , err
572
570
}
573
571
@@ -1090,7 +1088,7 @@ func IoctlSetIntRetInt(fd int, req uint, arg int) (int, error) {
1090
1088
func IoctlSetString (fd int , req uint , val string ) error {
1091
1089
bs := make ([]byte , len (val )+ 1 )
1092
1090
copy (bs [:len (bs )- 1 ], val )
1093
- err := ioctl (fd , req , uintptr ( unsafe .Pointer (& bs [0 ]) ))
1091
+ err := ioctlPtr (fd , req , unsafe .Pointer (& bs [0 ]))
1094
1092
runtime .KeepAlive (& bs [0 ])
1095
1093
return err
1096
1094
}
@@ -1124,7 +1122,7 @@ func (l *Lifreq) GetLifruUint() uint {
1124
1122
}
1125
1123
1126
1124
func IoctlLifreq (fd int , req uint , l * Lifreq ) error {
1127
- return ioctl (fd , req , uintptr ( unsafe .Pointer (l ) ))
1125
+ return ioctlPtr (fd , req , unsafe .Pointer (l ))
1128
1126
}
1129
1127
1130
1128
// Strioctl Helpers
@@ -1135,5 +1133,5 @@ func (s *Strioctl) SetInt(i int) {
1135
1133
}
1136
1134
1137
1135
func IoctlSetStrioctlRetInt (fd int , req uint , s * Strioctl ) (int , error ) {
1138
- return ioctlRet (fd , req , uintptr ( unsafe .Pointer (s ) ))
1136
+ return ioctlPtrRet (fd , req , unsafe .Pointer (s ))
1139
1137
}
0 commit comments