Page MenuHomeFreeBSD

Reimplement r266925 after r300793.
AbandonedPublic

Authored by dchagin on Jun 26 2016, 7:19 AM.
Tags
None
Referenced Files
Unknown Object (File)
Jan 1 2024, 6:29 AM
Unknown Object (File)
Nov 30 2023, 7:16 AM
Unknown Object (File)
Nov 6 2023, 7:26 PM
Unknown Object (File)
Apr 16 2017, 3:16 AM
Unknown Object (File)
Feb 4 2017, 9:03 AM
Unknown Object (File)
Dec 14 2016, 6:31 AM
Unknown Object (File)
Aug 31 2016, 2:28 PM
Unknown Object (File)
Jul 8 2016, 8:39 AM
Subscribers

Details

Reviewers
kib
mjg
Summary

Use execpath if possible. To allow to run the interpreter itself add a new ELF branding type. Allow Linux ABI to run ELF interpreter.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 4343
Build 4388: arc lint + arc unit

Event Timeline

dchagin retitled this revision from to Reimplement r266925 after r300793..
dchagin updated this object.

Apart from the minor notes which I put inline, I have global and strong objection against the proposed addition. We do not base any decisions about binary ABI based on the binary name, at least we did not up to this point.

And I do not see why would we start claiming that some random binary found to have a name ld-linux.so.2 is neccessarly the Linux glibc interpreter.

IMO something more precise must be developed if the need to properly brand interpreter alone is important.

sys/kern/imgact_elf.c
366

fname might be NULL there.

367

Why '<' and not '!=' ?

369

Why strncmp ?

In D6968#146101, @kib wrote:

Apart from the minor notes which I put inline, I have global and strong objection against the proposed addition. We do not base any decisions about binary ABI based on the binary name, at least we did not up to this point.

And I do not see why would we start claiming that some random binary found to have a name ld-linux.so.2 is neccessarly the Linux glibc interpreter.

np

IMO something more precise must be developed if the need to properly brand interpreter alone is important.

unfortunately, there is no other way except to compare the file name or use fallback_brand, which is not always suitable