OpenExtensions for z/VM
An alphabetical list of the UNIX and ANSI C functions
abort() Stop a Program abs() Calculate Integer Absolute Value % accept() Accept a New Connection on a Socket access() Determine Whether a File Can be Accessed acos() Calculate Arccosine | acosh() Hyperbolic arccosine alarm() Set an Alarm asctime() Convert Time to Character String asin() Calculate Arcsine | asinh() Hyperbolic Arcsine assert() Verify Condition atan() Calculate Arctangent | atanh() Hyperbolic Arctangent atexit() Register Program Termination Function | __atoe() ISO8859-1 to EBCDIC String Conversion | __atoe_l() ISO8859-1 to EBCDIC Conversion Operation atof() Convert Character String to double atoi() Convert Character String to integer atol() Convert Character String to long | a64l() Convert base-64 String Representation to Long Integer | basename() Return the Last Component of a Pathname | bcmp() Compare Bytes in Memory | bcopy() Copy Bytes in Memory % bind() Bind a Name to a Socket | brk() Change Space Allocation | bsd_signal() BSD Version of signal() bsearch() Search Arrays | bzero() Zero Out Bytes in Memory calloc() Reserve and Initialize Storage | cbrt() Cube Root cclass() Return Characters in a Character Class cds() Compare Double and Swap cdump() Request a Main Storage Dump ceil() Round Up to Integral Value cfgetispeed() Determine the Input Baud Rate cfgetospeed() Determine the Output Baud Rate cfsetispeed() Set the Input Baud Rate in the Termios cfsetospeed() Set the Output Baud Rate in the Termios chaudit() Change Audit Flags for a File by Path chdir() Change the Working Directory chmod() Change the Mode of a File or Directory chown() Change Owner or Group of a File or Directory clearenv() Clear Environment Variables clearerr() Reset Error and End-of-File clock() Determine Processor Time close() Close a File closedir() Close a Directory clrmemf() Clear Memory Files collequiv() Return a List of Equivalent Collating Elements collorder() Return List of Collating Elements collrange() Calculates the Range List of Collating Elements colltostr() Return a String for a Collating Element | confstr() Get Configurable Variables % connect() Connect a Socket cos() Calculate Cosine cosh() Calculate Hyperbolic Cosine creat() Create a New File or Rewrite an Existing One cs() Compare and Swap csid() Character Set ID for Multibyte Character __csplist Retrieve CSP Parameters csnap() Request a Condensed Dump ctermid() Generate Pathname for Controlling Terminal ctest() Start Debug Tool ctime() Convert Time to a Character String ctrace() Request a Traceback | cuserid() Return Character Login of the User | dbm_clearerr() Clear Database Error Indicator | dbm_close() Close a Database | dbm_delete() Delete Database Record | dbm_error() Check Database error indicator | dbm_fetch() Get Database content | dbm_firstkey() Get First Key in Database | dbm_nextkey() Get Next Key in Database | dbm_open() Open a Database | dbm_store() Store Database Record decabs() Decimal Absolute Value decchk() Check for Valid Decimal Types decfix() Fix Up a Non-preferred Sign Variable difftime() Compute Time Difference | dirname() Report the Parent Directory of a Pathname div() Calculate Quotient and Remainder | dllfree() Free the Supplied DLL | dllload() Load the DLL and Connect It to the Application | dllqueryfn() Obtain a Pointer to a DLL Function | dllqueryvar() Obtain a Pointer to a DLL Variable | drand48() Pseudo-random Number Generator dup() Duplicate an Open File Descriptor dup2() Duplicate an Open File Descriptor to Another | ecvt() Convert Double to String % endhostent() Work with a Host Entry % endnetent() Work with a Network Entry % endprotoent() Work with a Protocol Entry % endservent() Work with a Server Entry | endutxent() Closes the utmpx Database | erand48() Pseudo-random Number Generator erf() Calculate Error Functions erfc() Calculate Complementary Error Functions __errno2() Return Reason Code Information | __etoa() EBCDIC to ISO8859-1 String Conversion | __etoa_l() EBCDIC to ISO8859-1 Conversion Operation execl() Execute a File execle() Execute a File execlp() Execute a File execv() Execute a File execve() Execute a File execvp() Execute a File exit() End Program | _exit() End a Process and Bypass the Cleanup exp() Calculate Exponential Function | expm1() Exponential Minus One extlink_np() Create an External Symbolic Link fabs() Calculate Floating-Point Absolute Value fchaudit() Change Audit Flags for a File by Descriptor fchmod() Change the Mode of a File or Directory by Descriptor fchown() Change the Owner or Group by File Descriptor fclose() Close File fcntl() Control Open File Descriptors | fcvt() Convert double to String fdelrec() Delete a VSAM Record fdopen() Associate a Stream with an Open File Descriptor feof() Test End-of-File Indicator ferror() Test for Read/Write Errors fetch() Get a Load Module fetchep() Share Writable Static fflush() Write Buffer to File | ffs() Find First Set Bit in an Integer fgetc() Read a Character fgetpos() Get File Position fgets() Read a String from a Stream fgetwc() Get Next Wide Character fgetws() Get a Wide-Character String fileno() Get the File Descriptor from an Open Stream fldata() Retrieve File Information flocate() Locate a VSAM Record floor() Round Down to Integral Value fmod() Calculate Floating-Point Remainder | fmtmsg() Display a Message in the Specified Format | fnmatch() Match Filename or Pathname fopen() Open a File | fork() *** Create a New Process fpathconf() Determine Configurable Pathname Variables fprintf() Format and Write Data fputc() Write a Character fputs() Write a String fputwc() Output a Wide-Character fputws() Output a Wide-Character String fread() Read Items free() Free a Block of Storage freopen() Redirect an Open File frexp() Extract Mantissa and Exponent of the Floating-Point Value fscanf() Read and Format Data fseek() Change File Position fsetpos() Set File Position fstat() Get Status Information about a File % fstatvfs() Get File system information fsync() Write Changes to Direct-Access Storage ftell() Get Current File Position | ftok() Generate an Inter Process Communication (IPC) key ftruncate() Truncate a File | ftw() Traverse a File tree fupdate() Update a VSAM Record fwrite() Write Items gamma() Calculate Gamma Function | gcvt() Convert double to String getc() Read a Character getcwd() Get Pathname of the Working Directory | getdate() Convert User format date and time % getdtablesize() Get the File descriptor Table size getegid() Get the Effective Group ID getenv() Get Value of Environment Variables geteuid() Get the Effective User ID getgid() Get the Real Group ID getgrgid() Access the Group Database by ID getgrnam() Access the Group Database by Name getgroups() Get a List of Supplementary Group IDs getgroupsbyname( ) Get Supplementary Group IDs by User Name % gethostbyaddr() Get a Host Entry by address % gethostbyname() Get a Host address by name % gethostent() Work with a Host Entry % gethostid() Get the unique identifier of the current Host % gethostname() Get the name of the current Host getlogin() Get the User Login Name getmccoll() Get Next Collating Element from String % getnetbyaddr() Get a Network Entry by address % getnetbyname() Get a Network Entry % getnetent() Work with a Network Entry | getopt() Command option parsing | getpagesize() Get the current page size | getpass() Read a String of Characters without echo % getpeername() Get the name of a peer Socket getpgrp() Get the Process Group ID getpid() Get the Process ID getppid() Get the Parent Process ID % getprotobyname() Get a Prototype Entry % getprotobynumber() Get a Prototype Entry % getprotoent() Work with a Protocol Entry getpwnam() Access the User Database by User Name getpwuid() Access the User Database by User ID gets() Read a String % getservbyname() Get a Server Entry % getservbyport() Get a service Entry by Port % getservent() Work with a Server Entry % getsockname() Get the Socket Name % getsockopt() Get the Options Associated with a Socket | getsubopt() Parse Suboption Arguments getsyntx() Return LC_SYNTAX Characters gettimeofday() Get Date and Time getuid() Get the Real User ID | getutxent() Read next Entry in utmpx Database | getutxid() Search by ID utmpx Database | getutxline() Search by line utmpx Database | getw() Put a machine word on a stream getwc() Get a Wide Character getwchar() Get a Wide Character getwmccoll() Get Next Collating Element from Wide String | glob() Generate Pathnames matching a pattern | globfree() Free storage allocate by glob() gmtime() Convert Time to Broken-Down UTC Time | hcreate() Create Hash Search Tables | hdestroy() Destroys Hash Search Tables | hsearch() Search Hash Tables % htonl() Translate Address Host to Network Long % htons() Translate Unsigned Short Integer into Network Byte Order hypot() Calculate Hypotenuse iconv() Code Conversion iconv_close() Deallocate Code Conversion Descriptor iconv_open() Allocate Code Conversion Descriptor | ilogb() Integer Unbiased Exponent | index() Search for Character % inet_addr() Internet Address Manipulation % inet_lnaof() Internet Address Manipulation % inet_makeaddr() Internet Address Manipulation % inet_netof() Internet Address Manipulation % inet_Network() Internet Address Manipulation % inet_ntoa() Internet Address Manipulation | initstate() Initialize generator for random() | insque() Insert an element into a doubly-linked list % ioctl() Control device isalnum() Test for Upper or Lowercase letter or decimal digits | isascii() Test for 7-bit US-ASCII Character isatty() Test if Descriptor Represents a Terminal isblank() Test for Blank Character Classification iscics() Verifies Whether CICS is Running iscntrl() Test for Control Classification isdigit() Test for Hexadecimal-Digit Classification isgraph() Test for Graphic Classification islower() Test for Lower Case ismccollel() Identify a Multi-Character Collating Element | isnan() Test for NaN isPosixOn() Test for Posix Runtime Option isprint() Test for Printable Character Classification ispunct() Test for Punctuation Classification isspace() Test for Space Character Classification isupper() Test for Uppercase Letter Classification iswalnum() Test for Upper or Lowercase letter or decimal digits iswblank() Test for Blank Character Classification iswcntrl() Test for Control Classification iswctype() Test for Character Property iswdigit() Test for Hexadecimal-Digit Classification iswgraph() Test for Graphic Classification iswlower() Test for Lower Case iswprint() Test for Printable Character Classification iswpunct() Test for Punctuation Classification iswspace() Test for Space Character Classification iswupper() Test for Uppercase Letter Classification iswxdigit() Test for Hexadecimal-Digit Classification isxdigit() Test for Hexadecimal-Digit Classification jn() Bessel Functions of the First Kind | jrand48() Pseudo-random Number Generator j0() Bessel Functions of the First Kind j1() Bessel Functions of the First Kind kill() Send a Signal to a Process | killpg() Send a Signal to a Process Group labs() Calculate long Absolute Value | lcong48() Pseudo-random Number Initializer ldexp() Multiply by a Power of Two ldiv() Compute Quotient and Remainder of Integral Division | lfind() Linear search routine | lgamma() Log gamma Function __librel() Query Release Level link() Create a Link to a File % listen() Prepare the a Server for Incoming Client Requests localdtconv() Date/Time Formatting Convention Inquiry localeconv() Query Numeric Conventions localtime() Convert Time and Correct for Local Time | lockf() Record locking on Files log() Calculate Natural Logarithm | logb() Unbiased exponent | log1p() Natural log of x + 1 log10() Calculate Base 10 Logarithm longjmp() Restore Stack Environment | _longjmp() Non-Local Goto | lrand48() Pseudo-random Number Generator | lsearch() Linear search and update lseek() Change the Offset of a File lstat() Get Status of File or Symbolic Link | l64a() Convert long to base-64 String representation malloc() Reserve Storage Block maxcoll() Return Maximum Collating Element mblen() Calculate Length of Multibyte Character mbrlen() Calculate Length of Multibyte Character mbrtowc() Convert a Multibyte Character to a Wide Character mbsinit() Test State Object for Initial State mbsrtowcs() Convert a Multibyte String to a Wide-Character String mbstowcs() Convert Multibyte Characters to Wide Character mbtowc() Convert Multibyte Character to Wide Character | memccpy() Copy Bytes in Memory memchr() Search Buffer memcmp() Compare Bytes memcpy() Copy Buffer memmove() Move Buffer memset() Set Buffer to Value mkdir() Make a Directory mkfifo() Make a FIFO Special File mknod() Make a FIFO or Character Special File | mkstemp() Make a unique Filename | mktemp() Make a unique Filename mktime() Convert Local Time modf() Extract Fractional and Integral Parts of Floating-Point Value mount() Make a File System Available | mrand48() Pseudo-random Number Generator | msgctl() Message control operations | msgget() Get Message queue | msgrcv() Message Receive Operation | msgsnd() Message Send operations | msgxrcv() Extended Message receive operation | nextafter() Next representable double float | nftw() Traverse a File tree nl_langinfo() Retrieve Locale Information | nrand48() Pseudo-random Number Generator % ntohl() Translate a Long Integer into Host Byte Order % ntohs() Translate an Unsigned Short Integer into Host Byte Order open() Open a File opendir() Open a Directory pathconf() Determine Configurable Pathname Variables pause() Suspend a Process Pending a Signal | pclose() Close a Pipe Stream to or from a Process perror() Print Error Message pipe() Create an Unnamed Pipe | popen() Initiate a Pipe Stream to or from a Process pow() Raise to Power printf() Format and Write Data pthread_attr_destroy() Destroy the Thread Attributes Object pthread_attr_getdetachstate() Get the Detach State Attribute pthread_attr_getstacksize() Get the Thread Attribute Stacksize Object pthread_attr_getsynctype_np() Get the Thread Sync Type pthread_attr_getweight_np() Get Weight of Thread Attribute Object pthread_attr_init() Initialize a Thread Attribute Object pthread_attr_setdetachstate() Set the Detach State Attribute Object pthread_attr_setstacksize() Set the Stacksize Attribute Object pthread_attr_setweight_np() Set Weight of Thread Attribute Object pthread_cancel() Cancel a Thread pthread_cleanup_pop() Remove a Cleanup Handler pthread_cleanup_push() Establish a Cleanup Handler pthread_cond_broadcast() Broadcast a Condition pthread_cond_destroy() Destroy the Condition Variable Object pthread_cond_init() Initialize a Condition Variable pthread_cond_signal() Signal a Condition pthread_cond_timedwait() Wait on a Condition Variable pthread_cond_wait() Wait on a Condition Variable pthread_condattr_destroy() Destroy Condition Variable Attribute Object pthread_condattr_getkind_np() Get Kind Attribute from a Condition Variable Attribute Object pthread_condattr_init() Initialize a Condition Attribute Object pthread_condattr_setkind_np() Set Kind Attribute from a Condition Variable Attribute Object pthread_create() Create a Thread pthread_detach() Detach a Thread pthread_equal() Compare Thread IDs pthread_exit() Exit a Thread pthread_getspecific() Get the Thread-Specific Value for a Key pthread_join() Wait for a Thread to End pthread_join_d4_np() Wait for a Thread to End pthread_key_create() Create Thread-Specific Data Key pthread_kill() Send a Signal to a Thread pthread_mutex_destroy() Delete a Mutex Object pthread_mutex_init() Initialize a Mutex Object pthread_mutex_lock() Wait for a Lock on a Mutex Object pthread_mutex_trylock() Attempt to Lock a Mutex Object pthread_mutex_unlock() Unlock a Mutex Object pthread_mutexattr_destroy() Destroy a Mutex Attribute Object pthread_mutexattr_getkind_np() Get Kind from a Mutex Attribute Object pthread_mutexattr_init() Initialize a Mutex Attribute Object pthread_mutexattr_setkind_np() Set Kind for a Mutex Attribute Object pthread_once() Invoke a Function Once pthread_self() Get the Caller pthread_setintr() Set Thread's Cancelability State pthread_setintrtype() Set Thread's Cancelability Type pthread_setspecific() Set the Thread-Specific Value for a Key pthread_testintr() Establish a Cancelability Point pthread_yield() Release the Processor to Other Threads putc() Write a Character putchar() Write a Character puts() Write a String | pututxline() Write Entry to utmpx Database | putw() Put a Machine Word on a Stream putwc() Output a Wide Character putwchar() Output a Wide Character to Standard Output qsort() Sort Array raise() Raise Signal rand() Generate Random Number | random() A Better Random-Number Generator | re_comp() Compile Regular Expression | re_exec() Match Regular Expression read() Read From a File readdir() Read an Entry from a Directory readlink() Read the Value of a Symbolic Link % readv() Read from a File realloc() Change Reserved Storage Block Size % recv() Receive Data on a Socket % recvfrom() Receive Messages on a Socket % recvmsg() Receive Messages from a Socket and Store in an Array of Message Headers regcomp() Compile Regular Expression regerror() Return Error Message regexec() Execute Compiled Regular Expression regfree() Free Memory for Regular Expression release() Delete a Load Module | remainder() Remainder remove() Delete File | remque() Remove an element from a doubly-linked list rename() Rename File rewind() Set File Position to Beginning of File rewinddir() Reposition a Directory Stream to the Beginning rindex() Search for Character | rint() Round to nearest integral value rmdir() Remove a Directory rpmatch() Test for a Yes/No Response Match | sbrk() Change space allocation | scalb() Load exponent scanf() Read and Format Data | seed48() Pseudo-random Number Initializer % select() Monitor Activity on a set of Sockets % selectex() Monitor Activity on a set of Sockets Using an ECB | semctl() Semaphore Control Operations | semget() Get a Set of Semaphores | semop() Semapohore operations % send() Send a Message to a Connected Socket % sendmsg() Send a Message to a Socket % sendto() Send a Message to a Socket setbuf() Control Buffering setegid() Set the Effective Group ID setenv() Add, Delete, and Change Environment Variables seteuid() Set the Effective User ID setgid() Set the Group ID % sethostent() Work with a Host Entry setjmp() Preserve Stack Environment | _setjmp() Set Jump Point for a Non-Local Goto setlocale() Set Locale % setnetent() Work with a Network Entry % setpeer() Preset the Socket Peer Address setpgid() Set Process Group ID for Job Control | setpgrp() Set Process Group ID % setprotoent() Work with a Protocol Entry % setservent() Work with a Server Entry setsid() Create Session, Set Process Group ID % setsockopt() Get the Options Associated with a Socket | setstate() Change generator for random() setuid() Set the Effective User ID | setutxent() Resets to start of utmpx Database setvbuf() Control Buffering | shmat() Shared Memory attach operation | shmctl() Shared Memory control operations | shmdt() Shared Memory detach operation | shmget() Get a shared Memory segment % shutdown() Shut Down All or Part of a Duplex Connection sigaction() Examine or Change a Signal Action sigaddset() Add a Signal to the Signal Mask | sigaltstack() Set and/or Get Signal Alternate Stack Context sigdelset() Delete a Signal from the Signal Mask sigemptyset() Initialize a Signal Mask to Exclude All Signals sigfillset() Initialize a Signal Mask to Include All Signals | sighold() Add a Signal to a Thread's Signal Mask | sigignore() Set Disposition to Ignore a Signal | siginterrupt() Allow Signals to Interrupt Functions sigismember() Test If a Signal Is in a Signal Mask siglongjmp() Restore the Stack Environment and Signal Mask signal() Handle Interrupts | __signgam() Return signgam reference | sigpause() Unblock a Signal and Wait for a Signal sigpending() Examine Pending Signals sigprocmask() Examine or Change a Thread | sigrelse() Remove a Signal from a Thread's Signal Mask | sigset() Change a Signal Action and/or a Thread's Signal Mask sigsetjmp() Save Stack Environment and Signal Mask | sigstack() Set and/or Get Signal Stack Context sigsuspend() Wait for a Signal sigwait() Wait for an Asynchronous Signal sin() Calculate Sine sinh() Calculate Hyperbolic Sine sleep() Suspend Execution of a Process % socket() Create a Socket % socketpair() Create a pair of Sockets spawn() Spawn a New Process spawnp() Spawn a New Process sprintf() Format and Write Data to Buffer sqrt() Calculate Square Root srand() Set Seed for rand() Function | srandom() Use seed to initialize generator for random() | srand48() Pseudo-random Number Initializer sscanf() Read and Format Data from Buffer stat() Get File Information % statvfs() Get File system information | strcasecmp() Case-insensitive String comparison strcat() Concatenate Strings strchr() Search for Character strcmp() Compare Strings strcoll() Compare Strings strcpy() Copy String strcspn() Compare Strings | strdup() Duplicate a String strerror() Get Pointer to Runtime Error Message strfmon() Convert Monetary Value to String strftime() Convert to Formatted Time strlen() Determine String Length | strncasecmp() Case-insensitive String comparison strncat() Concatenate Strings strncmp() Compare Strings strncpy() Copy String strpbrk() Find Characters in String strptime() Date and Time Conversion strrchr() Find Last Occurrence of Character in String strspn() Search String strstr() Locate Substring strtocoll() Return Collating Element for String strtod() Convert Character String to double strtok() Tokenize String strtol() Convert Character String to long strtoul() Convert String to Unsigned Integer strxfrm() Transform String | swab() Copy and swap Bytes swprintf() Write Wide Characters to a Wide-Character Array swscanf() Read a Wide-Character String symlink() Create a Symbolic Link to a Pathname sysconf() Determine System Configuration Options system() Execute a Command tan() Calculate Tangent tanh() Calculate Hyperbolic Tangent tcdrain() Wait Until Output Has Been Transmitted tcflow() Suspend or Resume Data Flow on a Terminal tcflush() Flush Input or Output on a Terminal tcgetattr() Get the Attributes for a Terminal tcgetpgrp() Get the Foreground Process Group ID tcsendbreak() Send a Break Condition to a Terminal tcsetattr() Set the Attributes for a Terminal tcsetpgrp() Set the Foreground Process Group ID | tdelete() Binary tree delete | tempnam() Generate a Temporary File Name | tfind() Binary Tree Find Node time() Determine Current Time times() Get Process and Child Process Times tmpfile() Create Temporary File tmpnam() Produce Temporary File Name | toascii() Translate integer to a 7-bit ASCII Character tolower() Convert Character Case toupper() Convert Character Case towlower() Convert Wide-Character Case towupper() Convert Wide Character Case | tsearch() Binary tree search ttyname() Get the Name of a Terminal ttyslot() Find the slot in the utmpx File of the current use | twalk() Binary tree walk tzset() Set the Time Zone umask() Set or Display the File Mode Creation Mask umount() Remove a Virtual File System uname() Display Current Operating System Name ungetc() Push Character onto Input Stream ungetwc() Push a Wide Character onto a Stream unlink() Remove a Directory Entry | usleep() Suspend execution for an interval utime() Set File Access and Modification Times | utimes() Set File access and modification times | __utmpxname() Changes the utmpx Database Name va_arg() Access Function Arguments va_end() Access Function Arguments va_start() Access Function Arguments | valloc() Page aligned Memory allocator | vfork() *** Create a new Process vfprintf() Format and Print Data to Stream vprintf() Format and Print Data to stdout vsprintf() Format and Print Data to Buffer vswprintf() Write Wide Characters w_getpsent() Get Process Data w_statfs() Get the File System Status % w_statvfs() Get the File System Status wait() Wait for a Child Process to End | waitid() Wait for child Processto change state waitpid() Wait for a Specific Child Process to End wcrtomb() Convert a Wide Character to a Multibyte Character wcscat() Append to Wide-Character String wcschr() Search for Wide-Character Substring wcscmp() Compare Wide-Character Strings wcscoll() Language Collation String Comparison wcscpy() Copy Wide-Character String wcscspn() Find Offset of First Wide-Character Match wcsftime() Format Date and Time wcsid() Character Set ID for Wide Character wcslen() Calculate Length of Wide-Character String wcsncat() Append to Wide-Character String wcsncmp() Compare Wide-Character Strings wcsncpy() Copy Wide-Character String wcspbrk() Locate First Wide Characters in String wcsrchr() Locate Last Wide Character in String wcsrtombs() Convert Wide-Character String to Multibyte String wcsspn() Search for Wide Characters in a String wcsstr() Locate a Wide Character Sequence wcstod() Convert Wide-Character String to a Double Floating Point wcstok() Break a Wide-Character String into Tokens wcstol() Convert a Wide-Character String to a Long Integer wcstombs() Convert Wide-Character String to Multibyte Character String wcstoul() Convert a Wide-Character String to an Unsigned Long Integer wcswcs() Locate Wide-Character Substring in Wide-Character String wcswidth() Determine the Display Width of a Wide-Character String wcsxfrm() Transform a Wide-Character String wctob() Convert Wide Character to Byte wctomb() Convert Wide Character to Multibyte Character wctype() Obtain Handle for Character Property Classification wcwidth() Determine the Display Width of a Wide Character | wordexp() Perform shell word expansions | wordfree() Perform shell word expansions write() Write to a File % writev() Write on a File yn() Bessel Functions of the Second Kind y0() Bessel Functions of the Second Kind y1() Bessel Functions of the Second Kind *** This is not a complete implementation of either fork() or vfork(). Refer to the IBM C for VM/ESA Library Reference, SC23-3908-01, for the list of restrictions and requirements.
Return to OpenExtensions for z/VM