5 ms·
Thanks for clarification! I meant more, why isn't there a C API first, but Rust, Haskell, and Go before that — that's kind of surprising or new to me.
by smartmic 11mo ago
Thanks for clarification! I meant more, why isn't there a C API first, but Rust, Haskell, and Go before that — that's kind of surprising or new to me.
- WJW 11mo agoI don't understand what you mean. There's no "official" Rust, Haskell and Go APIs for this thing either. All libraries available seem to be just what some third party made available. There's also several C libraries, just none that have been officially endorsed by the Linux kernel team.
- wging 11mo agoI read the article as saying that there's no official C library but unofficial ones do exist. Quote below, emphasis mine. > A official c library doesn’t exist yet unfortunately, but there’s several out there you can try. Also, it looks like there is more than zero support for C programs calling Landlock APIs. Even without a 3rd-party library you're not just calling syscall() with a magic number: https://docs.kernel.org/userspace-api/landlock.html https://docs.kernel.org/userspace-api/landlock.html https://github.com/torvalds/linux/blob/6bda50f4/include/uapi/linux/landlock.h https://github.com/torvalds/linux/blob/6bda50f4/include/uapi... https://github.com/torvalds/linux/blob/6bda50f4/include/linux/syscalls.h#L980 https://github.com/torvalds/linux/blob/6bda50f4/include/linu...
- nine_k 11mo agoGo is famous for not needing libc and talking to the kernel. Rust and Haskell have communities that are very interested in safety and security, so they are earlier adopters. For C, unofficial support apparently sufficed for now.