blob: 5196a2a801ed84bbfe37b810ba43e2c2d07aec72 [file] [log] [blame]
load("//tools:defs.bzl", "go_library", "go_test")
load("//tools/go_generics:defs.bzl", "go_template_instance")
licenses(["notice"])
go_template_instance(
name = "fd_dir_inode_refs",
out = "fd_dir_inode_refs.go",
package = "proc",
prefix = "fdDirInode",
template = "//pkg/refsvfs2:refs_template",
types = {
"T": "fdDirInode",
},
)
go_template_instance(
name = "fd_info_dir_inode_refs",
out = "fd_info_dir_inode_refs.go",
package = "proc",
prefix = "fdInfoDirInode",
template = "//pkg/refsvfs2:refs_template",
types = {
"T": "fdInfoDirInode",
},
)
go_template_instance(
name = "subtasks_inode_refs",
out = "subtasks_inode_refs.go",
package = "proc",
prefix = "subtasksInode",
template = "//pkg/refsvfs2:refs_template",
types = {
"T": "subtasksInode",
},
)
go_template_instance(
name = "task_inode_refs",
out = "task_inode_refs.go",
package = "proc",
prefix = "taskInode",
template = "//pkg/refsvfs2:refs_template",
types = {
"T": "taskInode",
},
)
go_template_instance(
name = "tasks_inode_refs",
out = "tasks_inode_refs.go",
package = "proc",
prefix = "tasksInode",
template = "//pkg/refsvfs2:refs_template",
types = {
"T": "tasksInode",
},
)
go_library(
name = "proc",
srcs = [
"fd_dir_inode_refs.go",
"fd_info_dir_inode_refs.go",
"filesystem.go",
"subtasks.go",
"subtasks_inode_refs.go",
"task.go",
"task_fds.go",
"task_files.go",
"task_inode_refs.go",
"task_net.go",
"tasks.go",
"tasks_files.go",
"tasks_inode_refs.go",
"tasks_sys.go",
],
visibility = ["//pkg/sentry:internal"],
deps = [
"//pkg/abi/linux",
"//pkg/context",
"//pkg/log",
"//pkg/refs",
"//pkg/refsvfs2",
"//pkg/safemem",
"//pkg/sentry/fs/lock",
"//pkg/sentry/fsbridge",
"//pkg/sentry/fsimpl/kernfs",
"//pkg/sentry/inet",
"//pkg/sentry/kernel",
"//pkg/sentry/kernel/auth",
"//pkg/sentry/kernel/time",
"//pkg/sentry/limits",
"//pkg/sentry/mm",
"//pkg/sentry/socket",
"//pkg/sentry/socket/unix",
"//pkg/sentry/socket/unix/transport",
"//pkg/sentry/usage",
"//pkg/sentry/vfs",
"//pkg/sync",
"//pkg/syserror",
"//pkg/tcpip/header",
"//pkg/tcpip/network/ipv4",
"//pkg/usermem",
],
)
go_test(
name = "proc_test",
size = "small",
srcs = [
"tasks_sys_test.go",
"tasks_test.go",
],
library = ":proc",
deps = [
"//pkg/abi/linux",
"//pkg/context",
"//pkg/fspath",
"//pkg/sentry/contexttest",
"//pkg/sentry/fsimpl/testutil",
"//pkg/sentry/fsimpl/tmpfs",
"//pkg/sentry/inet",
"//pkg/sentry/kernel",
"//pkg/sentry/kernel/auth",
"//pkg/sentry/vfs",
"//pkg/syserror",
"//pkg/usermem",
],
)