summaryrefslogtreecommitdiffhomepage
path: root/pkg/sentry/limits
diff options
context:
space:
mode:
authorAyush Ranjan <ayushranjan@google.com>2021-03-03 10:23:55 -0800
committergVisor bot <gvisor-bot@google.com>2021-03-03 10:25:58 -0800
commita9441aea2780da8c93da1c73da860219f98438de (patch)
tree8b12915756f5bfb926218214cd7bc0b3281605fd /pkg/sentry/limits
parentb8a5420f49a2afd622ec08b5019e1bf537f7da82 (diff)
[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
Diffstat (limited to 'pkg/sentry/limits')
-rw-r--r--pkg/sentry/limits/BUILD2
-rw-r--r--pkg/sentry/limits/limits.go7
-rw-r--r--pkg/sentry/limits/limits_test.go9
3 files changed, 10 insertions, 8 deletions
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},
}