I think I'd be unlikely to get it right on the first try.  I had never even
heard of the "RENAME" statement, but it exists, alongside the venerable
"CHANGE" statement.  I don't presently have the time to sort that out.  And
the required order of statements is sometimes surprising.  Nevertheless,
I'm sure it's doable.

sas

On Wed, Apr 15, 2020 at 4:12 PM Charles Mills <[email protected]> wrote:

> So every call to AX would instead call an entrypoint within a new module
> (except for one call from within that new module, which would call the old
> AX)?
>
> Yes, I think binder RENAME can do that.
>
> Code the new module to with a hard-coded entry of AX and an internal call
> to
> AXMINUS. No point in making that part difficult.
>
> Include the old AX. Follow that with RENAME AX(AXMINUS)
>
> Then Include the new module and everything else and link as normal.
>
> I think that is close at least. May require some tweaking.
>
> Charles
>
>
> -----Original Message-----
> From: IBM Mainframe Discussion List [mailto:[email protected]] On
> Behalf Of Phil Smith III
> Sent: Wednesday, April 15, 2020 12:44 PM
> To: [email protected]
> Subject: Linkage editor question: renaming duplicate entry points
>
> I have a use case that's reasonable enough that it might be supported, yet
> odd enough that I'd be unsurprised if it isn't.
>
>
>
> Suppose we have a function called AX that we call. At times it would be
> useful to be able to relink a program that calls AX to add a "shim"-let's
> call it AXPRIME-between the program and AX. Yet we don't want to change
> that
> program code, just relink it (or point at a different library and make a
> dynamic call to AX).
>
>
>
> Ideally, we could tell the linker "OK, load deck AXPRIME [which has entry
> point AX defined]; now include deck AX but rename entry point AX in that
> deck to AXMINUS". And the AXPRIME code would call AXMINUS to do what AX
> usually does.
>
>
>
> The alternative-hacking AX itself-is of course possible but undesirable,
> because we don't want the shim functionality to be there all the time, as
> it
> represents a security hole. The shim is added explicitly when needed, so
> it's a "your gun, your foot" deal.
>
>
>
> Anyone know whether this is possible with IEWL or anything else?
>
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to [email protected] with the message: INFO IBM-MAIN
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to [email protected] with the message: INFO IBM-MAIN
>


-- 
sas

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to