i5/OS Secure Sockets Layer (SSL_) APIs
i5/OS(TM) SSL_ APIs, when used in addition to the existing i5/OS Sockets APIs,
provide the functions required for applications to establish secure
communications. An application using SSL for secure communications is basically
a client/server application written using sockets.
The SSL_ APIs are:
- QlgSSL_Init() (Initialize the current job for SSL (using NLS-enabled path name)) is used to establish the SSL security information to be used for all SSL sessions for the current job.
- SSL_Create() (Enable SSL support for the specified socket descriptor) is used by a program to enable SSL support for the specified socket descriptor.
- SSL_Destroy() (End SSL support for the specified SSL session) is used by a program to end SSL support for the specified SSL session.
- SSL_Handshake() (Initiate the SSL handshake protocol) is used by a program to initiate the SSL handshake protocol. Both the client and the server program must call the SSL_Handshake verb in order to initiate the handshake processing.
- SSL_Init() (Initialize the current job for SSL) is used to establish the SSL security information to be used for all SSL sessions for the current job.
- SSL_Init_Application() (Establish the SSL security information) is used to establish the SSL security information to be used for all SSL sessions for the current job based on the specified application identifier.
- SSL_Perror() (Print SSL error message) prints an error message to stderr.
- SSL_Read() (Receive data from an SSL-enabled socket descriptor) is used by a program to receive data from an SSL-enabled socket descriptor.
- SSL_Strerror() (Retrieve SSL runtime error message) is used to retrieve an error message and associated text string which describes an SSL return value.
- SSL_Write() (Write data to an SSL-enabled socket descriptor) is used by a program to write data to an SSL-enabled socket descriptor.
Note: These functions use header (include) files from the
library QSYSINC, which is optionally installable. Make sure QSYSINC is
installed on your system before using any of the functions. See Header Files for UNIX-Type Functions for the file and member
name of each header file.
See the following examples for more information: