]> Cypherpunks repositories - gostls13.git/commitdiff
syscall: use unsafe.Slice in anyToSockaddr
authorCuong Manh Le <cuong.manhle.vn@gmail.com>
Sun, 26 Feb 2023 12:34:24 +0000 (19:34 +0700)
committerCuong Manh Le <cuong.manhle.vn@gmail.com>
Mon, 27 Feb 2023 12:43:22 +0000 (12:43 +0000)
The function was added since go1.17, which is the minimum version for
bootstraping now.

Change-Id: I08b55c3639bb9ff042aabfcdcfbdf2993032ba6b
Reviewed-on: https://go-review.googlesource.com/c/go/+/471436
Run-TryBot: Cuong Manh Le <cuong.manhle.vn@gmail.com>
Reviewed-by: Ian Lance Taylor <iant@google.com>
Reviewed-by: Than McIntosh <thanm@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>

src/syscall/syscall_aix.go
src/syscall/syscall_bsd.go
src/syscall/syscall_linux.go
src/syscall/syscall_solaris.go

index ba1b50e0fcb05bfdfbe3fd3bc17616f34f3565d6..e4dde6b034e8414d02f4da2322cf231a4bd51aa6 100644 (file)
@@ -428,8 +428,7 @@ func anyToSockaddr(rsa *RawSockaddrAny) (Sockaddr, error) {
                if err != nil {
                        return nil, err
                }
-               bytes := (*[len(pp.Path)]byte)(unsafe.Pointer(&pp.Path[0]))
-               sa.Name = string(bytes[0:n])
+               sa.Name = string(unsafe.Slice((*byte)(unsafe.Pointer(&pp.Path[0])), n))
                return sa, nil
 
        case AF_INET:
index c7a7d786dc5afa0138d87ffba74ba8eb7beb8bd3..0bb3cdf54bda031f6038153d02ed88566fad06a5 100644 (file)
@@ -249,8 +249,7 @@ func anyToSockaddr(rsa *RawSockaddrAny) (Sockaddr, error) {
                                break
                        }
                }
-               bytes := (*[len(pp.Path)]byte)(unsafe.Pointer(&pp.Path[0]))[0:n]
-               sa.Name = string(bytes)
+               sa.Name = string(unsafe.Slice((*byte)(unsafe.Pointer(&pp.Path[0])), n))
                return sa, nil
 
        case AF_INET:
index c1f43bf43dcb0aa56ad97b2c3dac0d39eb2ec615..bf9d85637a9fc0efe5d2b020f269698b5f113d44 100644 (file)
@@ -646,8 +646,7 @@ func anyToSockaddr(rsa *RawSockaddrAny) (Sockaddr, error) {
                for n < len(pp.Path) && pp.Path[n] != 0 {
                        n++
                }
-               bytes := (*[len(pp.Path)]byte)(unsafe.Pointer(&pp.Path[0]))[0:n]
-               sa.Name = string(bytes)
+               sa.Name = string(unsafe.Slice((*byte)(unsafe.Pointer(&pp.Path[0])), n))
                return sa, nil
 
        case AF_INET:
index 2d042acdc9811c72e735fa2e2a754469b3516e24..2cfb7f5d6a201c7360c8fdd60a78247cc779cf04 100644 (file)
@@ -321,8 +321,7 @@ func anyToSockaddr(rsa *RawSockaddrAny) (Sockaddr, error) {
                for n < len(pp.Path) && pp.Path[n] != 0 {
                        n++
                }
-               bytes := (*[len(pp.Path)]byte)(unsafe.Pointer(&pp.Path[0]))[0:n]
-               sa.Name = string(bytes)
+               sa.Name = string(unsafe.Slice((*byte)(unsafe.Pointer(&pp.Path[0])), n))
                return sa, nil
 
        case AF_INET: