[Bug 283670] comms/wsjtz: Fix jt9 crash due to non-executable stack

From: <bugzilla-noreply_at_freebsd.org>
Date: Fri, 27 Dec 2024 22:41:18 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=283670

            Bug ID: 283670
           Summary: comms/wsjtz: Fix jt9 crash due to non-executable stack
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: hamradio@FreeBSD.org
          Reporter: shurd@FreeBSD.org
          Assignee: hamradio@FreeBSD.org
             Flags: maintainer-feedback?(hamradio@FreeBSD.org)

Created attachment 256212
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=256212&action=edit
Simple patch to give bin/jt9 an executable stack

gfortran puts trampolines on the stack and marks decoder.f90.o as needing an
executable stack, but the linker on FreeBSD ignores this and make the stack NX.

I've done two different patches depending on the maintainers appetite for
maintaining them.  The first simply marks jt9 as needing an executable stack,
and the second uses mprotect() to dynamically mark the trampolines RX then set
back to RW after the call.

Reference: https://github.com/llvm/llvm-project/issues/121234

-- 
You are receiving this mail because:
You are the assignee for the bug.