ish-app / ish

Linux shell for iOS
https://ish.app
Other
16.94k stars 892 forks source link

lot of packages on alpine 3.18 require syscall 215 (setfsuid32) #2198

Open filiphsps opened 1 year ago

filiphsps commented 1 year ago

See vim, nano, zsh etc.

localhost:~# vim
Vim: Caught deadly signal SYS
Vim: Finished.
Bad system call
localhost:~# dmesg
104(vim) missing syscall 215
107(vim) missing syscall 215
109(vim) missing syscall 215
117(nano) missing syscall 215
121(zsh) missing syscall 215
123(nano) missing syscall 215
136(vim) missing syscall 215
localhost:~# 
emkey1 commented 1 year ago

I can say from experience that always flagging missing syscalls() as unimplemented and returning _ENOSYS fixes issues like this and doesn't cause many, if any problems. The only time there could be an issue is if the code that invoked the unimplemented syscall() fails to handle ENOSYS correctly. I've yet to see that happen, though I'm sure there are cases where it does. In any case, that seems less onerous then having a binary crash that would run fine otherwise.