Skip to content

Commit e4099bf

Browse files
KSDaemongopherbot
authored andcommitted
unix: fix trimmed socket opt string in GetsockoptString
Fixes golang/go#63217 Change-Id: Ia1b0ae88b7e7a7c611067a0b30e454b66f45ce51 Reviewed-on: https://go-review.googlesource.com/c/sys/+/530897 Reviewed-by: Mauri de Souza Meneguzzo <[email protected]> Reviewed-by: Cherry Mui <[email protected]> Auto-Submit: Tobias Klauser <[email protected]> LUCI-TryBot-Result: Go LUCI <[email protected]> Reviewed-by: Heschi Kreinick <[email protected]> Reviewed-by: Tobias Klauser <[email protected]>
1 parent 9888904 commit e4099bf

File tree

4 files changed

+4
-4
lines changed

4 files changed

+4
-4
lines changed

unix/syscall_bsd.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -316,7 +316,7 @@ func GetsockoptString(fd, level, opt int) (string, error) {
316316
if err != nil {
317317
return "", err
318318
}
319-
return string(buf[:vallen-1]), nil
319+
return ByteSliceToString(buf[:vallen]), nil
320320
}
321321

322322
//sys recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error)

unix/syscall_linux.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -1310,7 +1310,7 @@ func GetsockoptString(fd, level, opt int) (string, error) {
13101310
return "", err
13111311
}
13121312
}
1313-
return string(buf[:vallen-1]), nil
1313+
return ByteSliceToString(buf[:vallen]), nil
13141314
}
13151315

13161316
func GetsockoptTpacketStats(fd, level, opt int) (*TpacketStats, error) {

unix/syscall_solaris.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,7 @@ func GetsockoptString(fd, level, opt int) (string, error) {
158158
if err != nil {
159159
return "", err
160160
}
161-
return string(buf[:vallen-1]), nil
161+
return ByteSliceToString(buf[:vallen]), nil
162162
}
163163

164164
const ImplementsGetwd = true

unix/syscall_zos_s390x.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -1104,7 +1104,7 @@ func GetsockoptString(fd, level, opt int) (string, error) {
11041104
return "", err
11051105
}
11061106

1107-
return string(buf[:vallen-1]), nil
1107+
return ByteSliceToString(buf[:vallen]), nil
11081108
}
11091109

11101110
func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from Sockaddr, err error) {

0 commit comments

Comments
 (0)