From 3aa50f18a4102429aa40f5d0e518357ceaed2373 Mon Sep 17 00:00:00 2001
From: Michael Pratt <mpratt@google.com>
Date: Fri, 14 Sep 2018 15:58:56 -0700
Subject: Reuse readlink parameter, add sockaddr max.

PiperOrigin-RevId: 213058623
Change-Id: I522598c655d633b9330990951ff1c54d1023ec29
---
 pkg/sentry/fs/host/util_unsafe.go | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

(limited to 'pkg/sentry/fs')

diff --git a/pkg/sentry/fs/host/util_unsafe.go b/pkg/sentry/fs/host/util_unsafe.go
index c38d2392d..2ecb54319 100644
--- a/pkg/sentry/fs/host/util_unsafe.go
+++ b/pkg/sentry/fs/host/util_unsafe.go
@@ -23,6 +23,9 @@ import (
 	ktime "gvisor.googlesource.com/gvisor/pkg/sentry/kernel/time"
 )
 
+// NulByte is a single NUL byte. It is passed to readlinkat as an empty string.
+var NulByte byte = '\x00'
+
 func createLink(fd int, name string, linkName string) error {
 	namePtr, err := syscall.BytePtrFromString(name)
 	if err != nil {
@@ -50,7 +53,7 @@ func readLink(fd int) (string, error) {
 		n, _, errno := syscall.Syscall6(
 			syscall.SYS_READLINKAT,
 			uintptr(fd),
-			uintptr(unsafe.Pointer(syscall.StringBytePtr(""))),
+			uintptr(unsafe.Pointer(&NulByte)), // ""
 			uintptr(unsafe.Pointer(&b[0])),
 			uintptr(l),
 			0, 0)
-- 
cgit v1.2.3