| 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", |
| ], |
| ) |