maintainer-feedback requested: [Bug 217562] emulators/linux_base-c7: strange path truncating when exec'ing in bash scripts
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Sun Mar 5 14:22:55 UTC 2017
Matthieu Volat <mazhe at alkumuna.eu> has reassigned Bugzilla Automation
<bugzilla at FreeBSD.org>'s request for maintainer-feedback to
emulation at FreeBSD.org:
Bug 217562: emulators/linux_base-c7: strange path truncating when exec'ing in
bash scripts
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=217562
--- Description ---
Hi,
I found a strange issue when running linux's bash scripts:
If you try to exec from a shell script (ran from /compat/linux/bin/bash) into
another, the exec'ed script path will be truncated by 8 bytes from the left
(and will obviously result in a failure).
Simple demonstrator, file 1 is "test_linux_exec_bash.sh":
#!/usr/bin/env bash
echo $0
exec ./test_linux_exec_bash_2.sh
file 2 is "test_linux_exec_bash_2.sh":
#!/usr/bin/env bash
echo $0
Then the result:
% /compat/linux/bin/bash ./test_linux_exec_bash.sh
./test_linux_exec_bash.sh
/compat/linux/usr/bin/env: zhe/tmp/test_linux_exec_bash_2.sh: No such file or
directory
This will not happen if the 1st script try to exec into a binary
(/compat/linux/usr/bin/env issue??)
I've ran the demo through ktrace, but it revealed nothing really interesting:
at some point after execing into env, the path is corrupted... valgrind can't
be run on linux binaries, so I did not found anything on that front...
At that point, I'm failing to see what is going wrong here.
Any ideas? Thanks
More information about the freebsd-emulation
mailing list