Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: [Bug] modules zsh/tcp, zsh/zftp unloadable, probably affecting most modern Linuxes



Hey,

it looks like the Fedora crowd has decided that was a bug that surfaced already a while ago, which they then fixed, which then re-surfaced, as described in the newest comment on https://bugzilla.redhat.com/show_bug.cgi?id=2212160#c3 :

This is the same bug as #1277996.
It was fix by commit b5cac6b for zsh rpm by adding
export LIBLDFLAGS='-z lazy'
to zsh.spec.

https://src.fedoraproject.org/rpms/zsh/c/b5cac6b431f08c03d2712fa9aac41b7cb43b9384

But in recent Fedora '-z lazy' does not overwrite the '-Wl,-z,now'. It _seems_ we need to use '-Wl,-z,lazy'.

To summarize that #1277996 https://bugzilla.redhat.com/show_bug.cgi?id=1277996 , this *does* seem to actually be a bug:

https://www.zsh.org/mla/workers/2015/msg02981.html

Something must have reintroduced "now" instead of "lazy" linking in the module linking process.

Best,
Marcus

On 05.06.23 22:07, Bart Schaefer wrote:

On Mon, Jun 5, 2023 at 12:35 PM Marcus Müller <marcus_zsh@xxxxxxxxxxx> wrote:
Ah, so we're exporting and thus overwriting a symbol that overwrites a
pointer by the name of an existing libc function with a "overrides
potentially unowned memory" one?
As I understand it that symbol will only be defined by tcp.c if it's
not available from libc or other linked library, so it's not actually
overwriting an identically-named symbol.

Or at least that's the intention, the #ifdef's that are meant to
accomplish it may need refinement for more recent library changes.


Messages sorted by: Reverse Date, Date, Thread, Author