Skip to main content

resolve_container_binary_path

Function resolve_container_binary_path 

Source
pub fn resolve_container_binary_path(reference: &str) -> Result<String, String>
Expand description

Resolve a Docker container reference to the explicit host path that sslsniff should attach its SSL uprobe to.

This handles both statically-linked TLS runtimes (/proc/<pid>/exe, common for Node.js/OpenClaw) and dynamically-linked OpenSSL (/proc/<pid>/root/... for a loaded libssl.so). The host PID comes from docker inspect, so this requires the Docker CLI and permission to read the target’s /proc entries.

docker inspect .State.Pid returns the container’s init process, which is often a wrapper such as tini (OpenClaw’s image uses tini -s -- node …). That wrapper does not embed SSL, so we walk its descendant process tree and require an actual SSL target.