Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issue with APE on OpenBSD 7.5 (current) #1263

Open
G4Vi opened this issue Aug 15, 2024 · 9 comments
Open

Issue with APE on OpenBSD 7.5 (current) #1263

G4Vi opened this issue Aug 15, 2024 · 9 comments

Comments

@G4Vi
Copy link
Collaborator

G4Vi commented Aug 15, 2024

Maybe this an issue with APE on OpenBSD 7.5 (current) in general? I just tried running the latest RedBean server on my box and got a nearly identical error:

.ape[24517]: pinsyscalls addr 200417 code 33, pinoff 0xffffffff (pin 0 0-0 0) (libcpin 0 0-0 0) error 78

Originally posted by @neezer in #1250 (comment)

@neezer
Copy link

neezer commented Aug 16, 2024

Here's what I see on OpenBSD 7.6 (-current):

eos% curl -LO https://redbean.dev/redbean-2.2.com
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 2260k  100 2260k    0     0   941k      0  0:00:02  0:00:02 --:--:--  942k
eos% chmod u+x redbean-2.2.com
eos% ./redbean-2.2.com -v
./redbean-2.2.com[2]: syntax error: `zero byte' unexpected

@jart
Copy link
Owner

jart commented Aug 16, 2024

I hope there's a workaround for the system call pinning thing in 7.5. As for the /bin/sh change (you are using /bin/sh right?) in 7.6 we're going to need to send them a patch that makes their zero byte check consistent with FreeBSD's per POSIX rules.

@neezer
Copy link

neezer commented Aug 17, 2024

you are using /bin/sh right?

Yup. Get the same thing in zsh too, fwiw.

@jart
Copy link
Owner

jart commented Aug 17, 2024

What version of zsh? I patched it in zsh 5.9 zsh-users/zsh@326d9c2

@neezer
Copy link

neezer commented Aug 17, 2024

zsh-5.9p0, installed via pkg_add zsh.

@jart
Copy link
Owner

jart commented Aug 17, 2024

Could you check if the OpenBSD developers patched it?

@neezer
Copy link

neezer commented Aug 17, 2024

Could you check if the OpenBSD developers patched it?

I think not?

I'm no expert here, but I believe the official package is built from here (based on reading Solène's article), and none of those patches look like they undo your earlier work. I think distfile refers to the latest zsh-5.9 asset, and downloading and inspecting that reveals your change is still there in Src/exec.c.

I sent pea@ (listed as the package maintainer) an email asking for clarification.

@neezer
Copy link

neezer commented Aug 23, 2024

@jart Haven't heard back from pea@ yet about this, FYI. Anything else I can look to help debug this?

@sthen
Copy link

sthen commented Sep 24, 2024

pea@ isn't very active.

bash and zsh start to execute this, but it fails quickly, either with SIGILL if on Intel 11th gen/newer (BTCFI is enabled by default in OpenBSD and there are no endbr64 landing pads), or SIGABRT if not (with pinsyscalls in 7.5 you need to call into libc for system calls as done in golang etc - direct calls are blocked).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants