Skip to content

Commit 2b3f9e2

Browse files
committed
fix: allow vllm-metal ZMQ IPC sockets in macOS sandbox
vllm-metal uses ZMQ IPC sockets at temporary paths under /private/var/folders (the macOS TMPDIR) for internal inter-process communication between API server workers. The Python sandbox profile only allowed network-bind for Unix sockets matching the inference.*-[0-9]+\.sock$ pattern and TCP loopback, which caused a ZMQError: Operation not permitted when vllm-metal tried to bind those sockets. Allow network-bind on paths under /private/var/folders so vllm-metal can create its internal ZMQ IPC sockets in the system temp directory.
1 parent 2e8c00c commit 2b3f9e2

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

pkg/sandbox/sandbox_darwin.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,14 @@ const ConfigurationPython = `(version 1)
2626
;;; Python backends use either a Unix socket or a TCP loopback port.
2727
;;; Allow Unix socket paths that match the inference socket naming convention
2828
;;; as well as TCP loopback binding/inbound for backends that use TCP.
29+
;;; Also allow Unix domain socket binding in the system temp directory
30+
;;; (/private/var/folders) which vllm-metal uses for internal ZMQ IPC sockets.
2931
(deny network*)
3032
(allow network-bind network-inbound
3133
(regex #"inference.*-[0-9]+\.sock$")
3234
(local tcp "localhost:*"))
35+
(allow network-bind
36+
(regex #"^/private/var/folders/"))
3337
3438
;;; Deny access to the camera and microphone.
3539
(deny device*)

0 commit comments

Comments
 (0)