On Monday, August 24, 2020, 07:47:42 PM GMT+1, Sebastian Miele 
<sebastian.mi...@gmail.com> wrote:

>When I put
>
>  (let ((pid  (primitive-fork))
>        (host        THE-HOST)
>        (control  "~/.ssh/%C"))
>    (if (eq? 0 pid)
>        (execlp "ssh" "ssh"
>                "-F" "none"
>                "-S" control
>                "-N" "-M"
>                host)
>        (begin
>          (display pid)
>          (sleep 3600))))
>
>into a file '0.scm' and run it using, e.g., 'guile 0.scm' (tested with
>Guile 3.0.4, 2.2.6, and 1.8.8), and after that run 'pgrep -a ssh' in
>another terminal, I do get the same PIDs.

OK, I think I've found the problem; I have firejail installed, so when I run 
ssh it actually runs firejail, which in turn runs ssh as a child process, and 
so the pid reported by guile doesn't match the pid of the ssh process.
If I replace "ssh" with "/usr/bin/ssh" they match. 

Thanks for your help.  

Reply via email to