z/OS Cryptographic Services System SSL Programming
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Using System SSL on z/OS

z/OS Cryptographic Services System SSL Programming
SC14-7495-00

System SSL provides programming interfaces to write both client and server applications. These programming interfaces provide functionality that is associated with either the SSL environment layer or secure socket connection layer. The SSL environment layer defines the general attributes of the environment, such as the key database file name, stash file name and session timeout. The secure socket connection layer defines the attributes that are associated with each secure connection being established, such as the file descriptor and certificate label. The SSL application program must first create the SSL environment layer. Once the environment is created, one or more instances of the secure socket connection layer can be associated with the SSL environment. Each of these secure socket connections can be established and closed independently of each other.

Each layer has four general function calls:
  • open
  • attribute_set
  • initialize
  • close

In addition, the secure socket connection layer has read and write function calls for reading and writing secure data between the two SSL enabled applications.

The open function calls return a handle (an environment handle or a secure socket connection handle) that must be passed back as a parameter on subsequent function calls. An instance of a secure socket connection handle is associated with an environment by passing the environment handle as a parameter on the gsk_secure_socket_open() call. The gsk_secure_socket_open() function is completely thread safe. Invocations to the gsk_secure_socket open() function can be issued from different threads within an environment. Read and write functions are full-duplex, so asynchronous read and write function calls can be performed from different threads for a given secure socket connection. However, there can only be one read and one write call in progress at one time for any secure socket connection handle.

For every open, there must be a corresponding close.

In addition to these functions, various gsk_attribute_set ...() and gsk_attribute_get...() functions exist to define and retrieve attributes values associated with either the environment or secure socket connection layers. The syntax of these function calls is the same for both the environment and the secure socket connection layers. The target for the set/get function is determined by the handle specified on the function call.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014