When using codex-tui on a linux system I was unable to run `cargo clippy` inside of codex due to: ``` [pid 3548377] socketpair(AF_UNIX, SOCK_SEQPACKET|SOCK_CLOEXEC, 0, <unfinished ...> [pid 3548370] close(8 <unfinished ...> [pid 3548377] <... socketpair resumed>0x7ffb97f4ed60) = -1 EPERM (Operation not permitted) ``` And ``` 3611300 <... recvfrom resumed>0x708b8b5cffe0, 8, 0, NULL, NULL) = -1 EPERM (Operation not permitted) ``` This PR: * Fixes a bug that disallowed AF_UNIX to allow it on `socket()` * Adds recvfrom() to the syscall allow list, this should be fine since we disable opening new sockets. But we should validate there is not a open socket inheritance issue. * Allow socketpair to be called for AF_UNIX * Adds tests for AF_UNIX components * All of which allows running `cargo clippy` within the sandbox on linux, and possibly other tooling using a fork server model + AF_UNIX comms.
47 lines
892 B
TOML
47 lines
892 B
TOML
[package]
|
|
edition = "2024"
|
|
name = "codex-exec"
|
|
version = { workspace = true }
|
|
|
|
[[bin]]
|
|
name = "codex-exec"
|
|
path = "src/main.rs"
|
|
|
|
[lib]
|
|
name = "codex_exec"
|
|
path = "src/lib.rs"
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[dependencies]
|
|
anyhow = "1"
|
|
chrono = "0.4.40"
|
|
clap = { version = "4", features = ["derive"] }
|
|
codex-arg0 = { path = "../arg0" }
|
|
codex-common = { path = "../common", features = [
|
|
"cli",
|
|
"elapsed",
|
|
"sandbox_summary",
|
|
] }
|
|
codex-core = { path = "../core" }
|
|
codex-ollama = { path = "../ollama" }
|
|
owo-colors = "4.2.0"
|
|
serde_json = "1"
|
|
shlex = "1.3.0"
|
|
tokio = { version = "1", features = [
|
|
"io-std",
|
|
"macros",
|
|
"process",
|
|
"rt-multi-thread",
|
|
"signal",
|
|
] }
|
|
tracing = { version = "0.1.41", features = ["log"] }
|
|
tracing-subscriber = { version = "0.3.19", features = ["env-filter"] }
|
|
|
|
[dev-dependencies]
|
|
assert_cmd = "2"
|
|
libc = "0.2"
|
|
predicates = "3"
|
|
tempfile = "3.13.0"
|