From a9441aea2780da8c93da1c73da860219f98438de Mon Sep 17 00:00:00 2001 From: Ayush Ranjan Date: Wed, 3 Mar 2021 10:23:55 -0800 Subject: [op] Replace syscall package usage with golang.org/x/sys/unix in pkg/. The syscall package has been deprecated in favor of golang.org/x/sys. Note that syscall is still used in the following places: - pkg/sentry/socket/hostinet/stack.go: some netlink related functionalities are not yet available in golang.org/x/sys. - syscall.Stat_t is still used in some places because os.FileInfo.Sys() still returns it and not unix.Stat_t. Updates #214 PiperOrigin-RevId: 360701387 --- pkg/sentry/limits/BUILD | 2 ++ pkg/sentry/limits/limits.go | 7 +++---- pkg/sentry/limits/limits_test.go | 9 +++++---- 3 files changed, 10 insertions(+), 8 deletions(-) (limited to 'pkg/sentry/limits') diff --git a/pkg/sentry/limits/BUILD b/pkg/sentry/limits/BUILD index cf591c4c1..21b0d1595 100644 --- a/pkg/sentry/limits/BUILD +++ b/pkg/sentry/limits/BUILD @@ -14,6 +14,7 @@ go_library( "//pkg/abi/linux", "//pkg/context", "//pkg/sync", + "@org_golang_x_sys//unix:go_default_library", ], ) @@ -24,4 +25,5 @@ go_test( "limits_test.go", ], library = ":limits", + deps = ["@org_golang_x_sys//unix:go_default_library"], ) diff --git a/pkg/sentry/limits/limits.go b/pkg/sentry/limits/limits.go index 31b9e9ff6..7c6c4df01 100644 --- a/pkg/sentry/limits/limits.go +++ b/pkg/sentry/limits/limits.go @@ -16,8 +16,7 @@ package limits import ( - "syscall" - + "golang.org/x/sys/unix" "gvisor.dev/gvisor/pkg/sync" ) @@ -125,10 +124,10 @@ func (l *LimitSet) Set(t LimitType, v Limit, privileged bool) (Limit, error) { if _, ok := l.data[t]; ok { // Unprivileged users can only lower their hard limits. if l.data[t].Max < v.Max && !privileged { - return Limit{}, syscall.EPERM + return Limit{}, unix.EPERM } if v.Cur > v.Max { - return Limit{}, syscall.EINVAL + return Limit{}, unix.EINVAL } } old := l.data[t] diff --git a/pkg/sentry/limits/limits_test.go b/pkg/sentry/limits/limits_test.go index 658a20f56..0ee877be4 100644 --- a/pkg/sentry/limits/limits_test.go +++ b/pkg/sentry/limits/limits_test.go @@ -15,8 +15,9 @@ package limits import ( - "syscall" "testing" + + "golang.org/x/sys/unix" ) func TestSet(t *testing.T) { @@ -27,9 +28,9 @@ func TestSet(t *testing.T) { }{ {limit: Limit{Cur: 50, Max: 50}, privileged: false, expectedErr: nil}, {limit: Limit{Cur: 20, Max: 50}, privileged: false, expectedErr: nil}, - {limit: Limit{Cur: 20, Max: 60}, privileged: false, expectedErr: syscall.EPERM}, - {limit: Limit{Cur: 60, Max: 50}, privileged: false, expectedErr: syscall.EINVAL}, - {limit: Limit{Cur: 11, Max: 10}, privileged: false, expectedErr: syscall.EINVAL}, + {limit: Limit{Cur: 20, Max: 60}, privileged: false, expectedErr: unix.EPERM}, + {limit: Limit{Cur: 60, Max: 50}, privileged: false, expectedErr: unix.EINVAL}, + {limit: Limit{Cur: 11, Max: 10}, privileged: false, expectedErr: unix.EINVAL}, {limit: Limit{Cur: 20, Max: 60}, privileged: true, expectedErr: nil}, } -- cgit v1.2.3