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
