Lots of things already `dlopen`, lots of things already obscure their true dependencies by doing so. This RFC only provides a new section for those things to declare their dependencies without making the OS responsible for loading them. I think this actually improves the world for everyone, rather than just Microsoft.
Anyone is welcome to make contributions to Linux or the surrounding ecosystem.
The OS should be responsible for opening dependencies. Otherwise you get an unaccountable mess. The ELF note shit is just giving users a false sense of security.
>Anyone is welcome to make contributions to Linux or the surrounding ecosystem.
Ha! This certainly isn't true. Even if it was, the source of "contributions" deserves scrutiny.
That said, I do agree that doing this in "notes" is dumb, and if they need some new feature of ELF like "alternatives" they should at least be coordinating this with glibc if not deferring the spec entirely to them. Hell: given that they previously were actually linking these things, I don't understand why a lazy loaded weak symbol wouldn't work. Does ELF not support those somehow? I thought it did. I don't think systemd is at all the best project to be trying to think through this stuff as they are always much happier adding a new complex mechanism when existing ones would work fine. If ELF is currently missing lazy loading, they should work with glibc to add that feature correctly, not try to end-to-end it through the notes field :/.
Also, have I really misspoken? I was under the impression that many corporations with interests in proprietary software (including Microsoft) are regular contributors to the Linux kernel and ecosystem, but if I'm wrong I'd love to know the details.
The comments here suggest otherwise. It certainly can't provide a security function.
>Assuming you're actually proposing that every possible library is listed in the ELF and loaded before the executable starts by the OS' loader,
I didn't propose that but certainly the ability to load and execute code from anywhere is a vulnerability waiting to happen. Not being able to accurately enumerate dependencies is also an issue. If the OS was solely responsible for locating and loading dependencies, you could analyze any executable in isolation and get a definitive list of dependencies.
>I would encourage you to try writing an AppArmor or seccomp profile that bans `dlopen` and see how many of your favorite applications still run.
Just because it is that way now doesn't mean it needs to be.
>Also, have I really misspoken? I was under the impression that many corporations with interests in proprietary software (including Microsoft) are regular contributors to the Linux kernel and ecosystem, but if I'm wrong I'd love to know the details.
They do make contributions. But large corporations aren't "anyone" and their contributions are not unquestionable. They do have their own interests which are in conflict with the broader open-source ecosystem.
i mean microsoft is still the same company that makes your linux installations unbootable regularly when you install or upgrade windows, and which doesn't allow you to install linux on arm hardware designed for linux
i don't think they've changed that much since http://www.catb.org/~esr/halloween/
Also, why does the person making the change matter? If they're not a vexatious time waster, then who cares who they are as long as the changes are coherent?
Finally, I'll note that the GitHub issue linked is against systemd/systemd. It's not a binding change to the entire ELF format, it's a request for maintainers of distros to comment on whether or not adding this optional field might be helpful to them. They can just say "no", and who published the RFC remains irrelevant.
Are you prepared to accept my contribution? I sign my name "JiaT57notThatJiaTan"
[ ] When disagreeing, please reply to the argument instead of calling names. For example, arguing with "nonsense" and "has nothing to do with the scenario" detract from HN
[ ] Comments should get more thoughtful and substantive, not less, as a topic gets more divisive. Avoid saying "I'm not ___" in a reflexive way
[ ] Please don't use Hacker News for political or ideological battle. That tramples curiosity such as for Lenart Poettering's "a solid reputation"
[ ] Please don't complain that a submission is inappropriate.MS is gaining a lot of technical influence in the open source world. As soon as the regulatory environment shifts, they're going to take advantage of that.
Only if we let him. Viva la open source!
Can you expand on that?