Aren’t the MetalC resident library routines also chained off the Callable 
Services vector, or does MetalC use a different vector?

Peter

From: IBM Mainframe Discussion List <[email protected]> On Behalf Of 
Tony Harminc
Sent: Sunday, November 30, 2025 3:25 PM
To: [email protected]
Subject: Re: Callable Services Table - Documentation


On Sun, 30 Nov 2025 at 14:37, Eric Erickson 
<[email protected]<mailto:[email protected]>> wrote:



> I inherited some code that uses the Callable Services Table (hung off the

> CVT) to access various services. Looking through the code I see that you

> can find the HTTP Services Table address offset 88 and the JSON Services

> Table at off 84. From doing some google searches I also see that the XML

> Services entry point(s) can be utilized via this table too. Now my dilemma

> is what other services are available in this table? The JSON Services

> documentation (Callable Services from High Level Languages) shows how to

> use the table with direct linkage from assembler. But more extensive

> documentation on the table itself has not been found as yet.

>

> My question is whether what other services are available from this table,

> beside the XML, JSON and HTTP that I've found references too. I've searched

> the various IBM z/OS Assembler reference/guide manuals, but have not been

> able to locate anything that describes what other services are available.

> I'm curious as to what else is usable in this table and where its

> documented.

>



All the UNIX kernel services have their offsets documents. See

https://urldefense.com/v3/__https://www.ibm.com/docs/en/zos/3.2.0?topic=zusspacsr-system-control-offsets-callable-services__;!!Ebr-cpPeAnfNniQ8HSAI-g_K5b7VKg!JOfbcHeQ4_YKl6PHmuFQOOHJKeceSPl_pOYO63hoCe67-Nq53m9itNWB0ZrY26yP9p7AyEv5SSxQUHk1y3Q$<https://urldefense.com/v3/__https:/www.ibm.com/docs/en/zos/3.2.0?topic=zusspacsr-system-control-offsets-callable-services__;!!Ebr-cpPeAnfNniQ8HSAI-g_K5b7VKg!JOfbcHeQ4_YKl6PHmuFQOOHJKeceSPl_pOYO63hoCe67-Nq53m9itNWB0ZrY26yP9p7AyEv5SSxQUHk1y3Q$>

And they make pretty clear that this is a supported thing to do.



The RACF callable services also have theirs documented at

https://urldefense.com/v3/__https://www.ibm.com/docs/en/zos/3.2.0?topic=zssrda-fc-zos-unix-system-services-security-function-code-table__;!!Ebr-cpPeAnfNniQ8HSAI-g_K5b7VKg!JOfbcHeQ4_YKl6PHmuFQOOHJKeceSPl_pOYO63hoCe67-Nq53m9itNWB0ZrY26yP9p7AyEv5SSxQRVWi_pg$<https://urldefense.com/v3/__https:/www.ibm.com/docs/en/zos/3.2.0?topic=zssrda-fc-zos-unix-system-services-security-function-code-table__;!!Ebr-cpPeAnfNniQ8HSAI-g_K5b7VKg!JOfbcHeQ4_YKl6PHmuFQOOHJKeceSPl_pOYO63hoCe67-Nq53m9itNWB0ZrY26yP9p7AyEv5SSxQRVWi_pg$>

(though the presentation is somewhat different, showing function codes

rather than offsets). Hint: multiply by 4... It's less than clear if using

these function codes is officially supported, but it's surely unlikely to

break, because the stub routines containing those numbers have to work

forever.



I've seen references to some more core MVS callable things' offsets but

can't remember where. Of course you can look at what a macro generates, but

then the question is why? I use the UNIX and RACF numbers to avoid having

to link in annoying little stub routines everywhere. But if you're using a

documented macro, well just stick with that.



About fifteen years ago I did make a macro that I called CSRCALL that

contains the offsets and uses the IBM defined names. Not rocket science,

and it makes for a better xref. But then it has to be maintained...



Tony H.

--



This message and any attachments are intended only for the use of the addressee 
and may contain information that is privileged and confidential. If the reader 
of the message is not the intended recipient or an authorized representative of 
the intended recipient, you are hereby notified that any dissemination of this 
communication is strictly prohibited. If you have received this communication 
in error, please notify us immediately by e-mail and delete the message and any 
attachments from your system.


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

Reply via email to