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.