-
Notifications
You must be signed in to change notification settings - Fork 370
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
4.18.0 unbuildable on macOS #2222
Comments
Yep. Rpm >= 4.18.0 requires the full *at() family from POSIX-1.2008 to address a class of symlink related vulnerabilities (CVE-2021-35937, CVE-2021-35939 and CVE-2021-35938 and their unreported relatives). Just for the record, what OS X version is this? |
It's tough to say for me, as I'm not an "Apple person" and the distro is trying to cover a range of versions here. But IIRC the aarch64 builds assume quite a new macOS, as M1 is fairly new. (Perhaps someone from our community or yours will know more.) |
Could |
mknodat() sure, but I'm very reluctant to go that way. If we slip on one POSIX.1-2008 requirement then we enter a slipperly slope and that's how ugly compatibility cruft starts accumulating, and ends up hurting future developments. If we workaround the missing mkfifoat() for OS X now, then we're on hook for doing that for the next compatibility issue too. And if there's no easy workaround for the next one? |
Uff, according to python/cpython#97897 they're only adding mkfifoat() in macOS version 13 which isn't even released yet. If that's an actual fact, this is something we'll want to at least document more visibly. I'd suggest folks interested in OS X take a closer look at this all. It's one thing if mkfifoat() is the only missing piece, it's a whole other thing if there are many more. |
|
So this keeps getting mentioned in other places. Let me make this clear: the rpm development team is not going to work on this, OS X is not a platform we (can) maintain. If you want to see rpm building on older OS X, a good starting point would be looking at what is actually needed and bring that info to the table before spending a lot of time producing a proper patch. Like said above, it's one thing if it's just mkfifoat(), and something else entirely if half of the other POSIX 2008 requirements are missing. |
I think this is mostly a matter of documentation to set the expectations straight, basically: |
Portability status clarified in commit 61000db |
4.17.1 just worked. Now:
Holds both for x86_64 and aarch64 variant.
The text was updated successfully, but these errors were encountered: