ibm-information-center/dist/eclipse/plugins/i5OS.ic.apis_5.4.0.1/qsylstuc.htm

1675 lines
49 KiB
HTML
Raw Normal View History

2024-04-02 14:02:31 +00:00
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Copyright" content="Copyright (c) 2006 by IBM Corporation">
<title>List User Certificates (QSYLSTUC, QsyListUserCertificates)
API</title>
<!-- Begin Header Records ========================================== -->
<!-- All rights reserved. Licensed Materials Property of IBM -->
<!-- US Government Users Restricted Rights -->
<!-- Use, duplication or disclosure restricted by -->
<!-- GSA ADP Schedule Contract with IBM Corp. -->
<!-- Sec SCRIPT A converted by B2H R4.1 (346) (CMS) by V2KEA304 -->
<!-- at RCHVMW2 on 17 Feb 1999 at 11:05:09 -->
<!-- Edited by Kersten Jan 02 -->
<!--End Header Records -->
<link rel="stylesheet" type="text/css" href="../rzahg/ic.css">
</head>
<body>
<a name="Top_Of_Page"></a>
<!-- Java sync-link -->
<script language="Javascript" src="../rzahg/synch.js" type="text/javascript">
</script>
<h2>List User Certificates (QSYLSTUC, QsyListUserCertificates) API</h2>
<div class="box" style="width: 80%;">
<br>
&nbsp;&nbsp;<img src="delta.gif" alt="Start of change">Required Parameter Group for QSYLSTUC:<br>
<!-- iddvc RMBR -->
<br>
<table width="100%">
<tr>
<td align="center" valign="top" width="10%">1</td>
<td align="left" valign="top" width="50%">Qualified user space name</td>
<td align="left" valign="top" width="20%">Input</td>
<td align="left" valign="top" width="20%">Char(20)</td>
</tr>
<tr>
<td align="center" valign="top">2</td>
<td align="left" valign="top">User name</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(*)
</td>
</tr>
<tr>
<td align="center" valign="top">3</td>
<td align="left" valign="top">Format name</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(8)</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="left" valign="top">Selection control</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(*)</td>
</tr>
<tr>
<td align="center" valign="top">5</td>
<td align="left" valign="top">Error code</td>
<td align="left" valign="top">I/O</td>
<td align="left" valign="top">Char(*)</td>
</tr>
</table>
<br>
&nbsp;&nbsp;Default Public Authority: *USE<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Threadsafe: Yes<br>
<!-- iddvc RMBR -->
<br>
</div>
<br>
<div class="box" style="width: 80%;">
<br>
&nbsp;&nbsp;Syntax for QsyListUserCertificates:<br>
<pre>
#include &lt;qsydigid.h&gt;
void QsyListUserCertificates
(char *<em>Qualified_user_space_name</em>,
void *<em>User_name</em>,
char *<em>Format_name</em>,
char *<em>Selection_control</em>,
void *<em>Error_code</em>);
</pre>
&nbsp;&nbsp;Service Program: QSYDIGID<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Default Public Authority: *USE<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Threadsafe: Yes<img src="deltaend.gif" alt="End of change"><br>
<!-- iddvc RMBR -->
<br>
</div>
<p>The List User Certificates (OPM, QSYLSTUC; ILE,
QsyListUserCertificates) API lists the certificates that are associated
with the user profile. The generated list replaces any existing list in
the user space.</p>
<p>A common scenario is that only one certificate is associated with an
i5/OS user profile at any given time, but more than one certificate may
be associated with the same i5/OS user profile if each certificate is
unique. The same certificate is not allowed to be associated with more
than one i5/OS user profile.</p>
<p>Because certificates vary in length, the actual number of certificates
that can be returned using the List User Certificates API will also vary.
The total length of all of the certificates that have been added and the
size of the user space determine the actual number that can be returned.
In general, if more than a few hundred certificates are associated with an
i5/OS user profile partial results may be returned when attempting to use
the List User Certificates API to list the certificates. In addition to
this maximum that varies due to certificate lengths, the List User
Certificates API will not list more than 1000 certificates
per user profile,
no matter how
small the certificates are for the user profile.</p>
<p>Selection control pairs that the caller may specify to do additional
processing of the list may be useful for a user space that is smaller than
the maximum size of a user space when the caller does not have authority
to change the size of the user space. If more certificates are associated
with an i5/OS user profile than can be returned by the List User
Certificates API, the information status field in the generic header is
set to indicate that the results are partial or incomplete.</p>
<br>
<h3>Authorities and Locks</h3>
<dl>
<dt><em>User Profile Authority</em></dt>
<dd>*USE</dd>
<dd>If *ALL is specified for the user profile name, the caller of this API must have
*ALLOBJ special authority</dd>
<dd>If an EIM identifier is specified for the user profile name, the caller of this API must have
*ALLOBJ special authority</dd>
<dt><em>User Space Authority</em></dt>
<dd>*CHANGE</dd>
<dt><em>User Space Library Authority</em></dt>
<dd>*EXECUTE</dd>
</dl>
<br>
<h3>Required Parameter Group</h3>
<dl>
<dt><strong>Qualified user space name</strong></dt>
<dd>INPUT; CHAR(20)
<p>The name of the existing user space used to return the list of user
certificates. The first 10 characters specify the user space name, and the
second 10 characters specify the library.</p>
<p>You can use these special values for the library name:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td valign="top"><em>*CURLIB</em></td>
<td valign="top">The current library is used to locate the
user space. If there is no current library, QGPL (general purpose library)
is used.</td>
</tr>
<tr>
<td valign="top"><em>*LIBL</em></td>
<td valign="top">The library list is used to locate the user space.</td>
</tr>
</table>
<br>
</dd>
<dt><strong>User name</strong></dt>
<dd>INPUT; CHAR(*)
<p>The name of the user profile or the Enterprise Identity Mapping (EIM) identifier.
</p>
<p>The following are valid selections:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td valign="top"><em>*CURRENT</em></td>
<td valign="top">The user profile that is currently
running. The value must be 10 characters, blank padded.
</td>
</tr>
<tr>
<td valign="top"><em>*ALL</em></td>
<td valign="top">All user profiles on this system.
The value must be 10 characters, blank padded.</td>
</tr>
<tr>
<td valign="top"><em>user profile</em></td>
<td valign="top">The name of the user profile.
The value must be 10 characters, blank padded.</td>
</tr>
<tr>
<td valign="top"><em>EIM identifier</em></td>
<td valign="top">To specify an EIM identifier for this parameter, the data must have the following format:
<table cellpadding="5">
<tr>
<td valign="top"><em>char(8)</em></td>
<td valign="top">The special value *EIMID.</td>
</tr>
<tr>
<td valign="top"><em>binary(4)</em></td>
<td valign="top">The hex length of the EIM identifier.</td>
</tr>
<tr>
<td valign="top"><em>char(*)</em></td>
<td valign="top">The EIM identifier.</td>
</tr>
</table>
</td>
</tr>
</table>
<br>
</dd>
<dt><strong>Format name</strong></dt>
<dd>INPUT; CHAR(8)
<p>The content and format of the information that is returned for each
certificate in the list data section of the qualified user space name.</p>
<p>The possible format names are:</p>
<table cellpadding="5">
<!-- cols="35 65" -->
<tr>
<td valign="top"><em><a href="#HDRCERT100">CERT0100</a></em></td>
<td valign="top">Certificates in ASN.1 format</td>
</tr>
<tr>
<td valign="top"><em><a href="#HDRCERT200">CERT0200</a></em></td>
<td valign="top">Certificates in plain text format</td>
</tr>
</table>
<br>
</dd>
<dt><strong>Selection control</strong></dt>
<dd>INPUT; CHAR(*)
<p>The structure that contains strings of interest and is used to limit
which certificates are returned. For the format of this structure, see <a
href="#HDRSELTCNT">Selection Control</a>.</p>
</dd>
<dt><strong>Error code</strong></dt>
<dd>I/O; CHAR(*)
<p>The structure in which to return error information. For the format of
the structure, see <a href="../apiref/error.htm#hdrerrcod">Error Code
Parameter</a>.</p>
</dd>
</dl>
<br>
<h3><a name="HDRRETULST">Format</a></h3>
<p>The certificate list generated in the user space consists of the
following:</p>
<ul>
<li>A user area</li>
<li>A generic header</li>
<li>An input parameter section</li>
<li>A list data section</li>
</ul>
<p>In the generic header, the offset and length of the header section are
set to zero because the header section is not used. The list data section
has variable length entries, so the size of each entry is set to 0 in the
generic header. For details about the user area and generic header,
including which field indicates the number of entries returned or the
offset to the first entry, see <a href="../apiref/usf.htm">User Space Format for
List APIs</a>. For details about the formats in the list data section, see
<a href="#HDRCERT100">Certificate Format CERT0100 (ASN.1)</a> and <a href=
"#HDRCERT200">Certificate Format CERT0200 (Plain Text)</a>.</p>
<p>For details about the remaining items, see the following sections. For
descriptions of each field in the list returned, see <a href=
"#HDRCINPRMD">Field Descriptions</a>.</p>
<h4><a name="HDRCRTIPRM">Input Parameter Section</a></h4>
<table border width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">BINARY(4)</td>
<td align="left" valign="top" width="60%">Bytes returned in the returned
records feedback information</td>
</tr>
<tr>
<td align="center" valign="top">0</td>
<td align="center" valign="top">0</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">User space name</td>
</tr>
<tr>
<td align="center" valign="top">10</td>
<td align="center" valign="top">A</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">User space library name</td>
</tr>
<tr>
<td align="center" valign="top">20</td>
<td align="center" valign="top">14</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">User name</td>
</tr>
<tr>
<td align="center" valign="top">30</td>
<td align="center" valign="top">1E</td>
<td align="left" valign="top">CHAR(8)</td>
<td align="left" valign="top">Format name</td>
</tr>
<tr>
<td align="center" valign="top">38</td>
<td align="center" valign="top">26</td>
<td align="left" valign="top">CHAR(2)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top">40</td>
<td align="center" valign="top">28</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to selection control</td>
</tr>
<tr>
<td align="center" valign="top">44</td>
<td align="center" valign="top">2C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to EIM identifier</td>
</tr>
<tr>
<td align="center" valign="top">48</td>
<td align="center" valign="top">30</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of EIM identifier</td>
</tr>
<tr>
<td align="left" valign="top" colspan="2" rowspan="3">The offset to this
selection control is specified in a previous offset variable.</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of selection control</td>
</tr>
<tr>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Number of selection pairs</td>
</tr>
<tr>
<td align="left" valign="top">ARRAY(*) of BINARY(4)</td>
<td align="left" valign="top">Displacements to selection pairs</td>
</tr>
<tr>
<td align="left" valign="top" colspan="2" rowspan="3">These fields repeat
for each selection pair specified.</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of selection pair</td>
</tr>
<tr>
<td align="left" valign="top">CHAR(20)</td>
<td align="left" valign="top">Selection name</td>
</tr>
<tr>
<td align="left" valign="top">ARRAY(*) of CHAR</td>
<td align="left" valign="top">Selection value</td>
</tr>
<tr>
<td align="center" valign="top">
</td>
<td align="center" valign="top"></td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">EIM identifier</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRCERLST">List Data Section</a></h3>
<p>The list data section consists of certificates that are all set to one
of the following formats as specified in the call to the API. The generic
header has the number of list entries field.</p>
<h3><a name="HDRCERT100">Certificate Format CERT0100 (ASN.1)</a></h3>
<p> The CERT0100 format consists of a certificate handle and the entire
certificate encoded in ASN.1 DER (Abstract Syntax Notation 1 Distinguished
Encoding Rules) format. The fields specified by the offsets and lengths in
this format are not text fields.</p>
<br>
<table border width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">BINARY(4)</td>
<td align="left" valign="top" width="60%">Returned length of this
certificate and format information</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="center" valign="top">4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Available length of this certificate and
format information</td>
</tr>
<tr>
<td align="center" valign="top">8</td>
<td align="center" valign="top">8</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to certificate handle</td>
</tr>
<tr>
<td align="center" valign="top">12</td>
<td align="center" valign="top">C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of certificate handle</td>
</tr>
<tr>
<td align="center" valign="top">16</td>
<td align="center" valign="top">10</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to ASN.1 format certificate</td>
</tr>
<tr>
<td align="center" valign="top">20</td>
<td align="center" valign="top">14</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of ASN.1 format certificate</td>
</tr>
<tr>
<td align="center" valign="top">24
</td>
<td align="center" valign="top">18</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to EIM identifier</td>
</tr>
<tr>
<td align="center" valign="top">28
</td>
<td align="center" valign="top">1C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of EIM identifier</td>
</tr>
<tr>
<td align="center" valign="top">32
</td>
<td align="center" valign="top">20</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to EIM local registry name</td>
</tr>
<tr>
<td align="center" valign="top">36
</td>
<td align="center" valign="top">24</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of EIM local registry name</td>
</tr>
<tr>
<td align="center" valign="top">40
</td>
<td align="center" valign="top">28</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to user name</td>
</tr>
<tr>
<td align="center" valign="top">44
</td>
<td align="center" valign="top">2C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of user name</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">ARRAY(*) of CHAR</td>
<td align="left" valign="top">Fields specified by their offsets and
lengths above</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRCERT200">Certificate Format CERT0200 (Plain Text)</a></h3>
<p>The CERT0200 format consists of a certificate handle and some of the
sections of the certificate parsed into a more readable format. A field
with a offset of 0 indicates
that the field does not have a corresponding set of characters for the
field value. A field length of 0 indicates that the field is empty, that
it is not used in the certificate, or that it is not recognized. The
fields specified by the offsets and lengths in this format are not all
text fields.</p>
<table border width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">BINARY(4)</td>
<td align="left" valign="top" width="60%">Returned length of this
certificate and format information</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="center" valign="top">4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Available length of this certificate and
format information</td>
</tr>
<tr>
<td align="center" valign="top">8</td>
<td align="center" valign="top">8</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to certificate handle</td>
</tr>
<tr>
<td align="center" valign="top">12</td>
<td align="center" valign="top">C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of certificate handle</td>
</tr>
<tr>
<td align="center" valign="top">16</td>
<td align="center" valign="top">10</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to version</td>
</tr>
<tr>
<td align="center" valign="top">20</td>
<td align="center" valign="top">14</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of version</td>
</tr>
<tr>
<td align="center" valign="top">24</td>
<td align="center" valign="top">18</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to serial number</td>
</tr>
<tr>
<td align="center" valign="top">28</td>
<td align="center" valign="top">1C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of serial number</td>
</tr>
<tr>
<td align="center" valign="top">32</td>
<td align="center" valign="top">20</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to issuer's common name</td>
</tr>
<tr>
<td align="center" valign="top">36</td>
<td align="center" valign="top">24</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of issuer's common name</td>
</tr>
<tr>
<td align="center" valign="top">40</td>
<td align="center" valign="top">28</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to issuer's country or region</td>
</tr>
<tr>
<td align="center" valign="top">44</td>
<td align="center" valign="top">2C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of issuer's country or region</td>
</tr>
<tr>
<td align="center" valign="top">48</td>
<td align="center" valign="top">30</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to issuer's state or province</td>
</tr>
<tr>
<td align="center" valign="top">52</td>
<td align="center" valign="top">34</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of issuer's state or province</td>
</tr>
<tr>
<td align="center" valign="top">56</td>
<td align="center" valign="top">38</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to issuer's locality</td>
</tr>
<tr>
<td align="center" valign="top">60</td>
<td align="center" valign="top">3C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of issuer's locality</td>
</tr>
<tr>
<td align="center" valign="top">64</td>
<td align="center" valign="top">40</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to issuer's organization</td>
</tr>
<tr>
<td align="center" valign="top">68</td>
<td align="center" valign="top">44</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of issuer's organization</td>
</tr>
<tr>
<td align="center" valign="top">72</td>
<td align="center" valign="top">48</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to issuer's organizational unit</td>
</tr>
<tr>
<td align="center" valign="top">76</td>
<td align="center" valign="top">4C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of issuer's organizational unit</td>
</tr>
<tr>
<td align="center" valign="top">80</td>
<td align="center" valign="top">50</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to issuer's postal code</td>
</tr>
<tr>
<td align="center" valign="top">84</td>
<td align="center" valign="top">54</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of issuer's postal code</td>
</tr>
<tr>
<td align="center" valign="top">88</td>
<td align="center" valign="top">58</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to validity period start</td>
</tr>
<tr>
<td align="center" valign="top">92</td>
<td align="center" valign="top">5C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of validity period start</td>
</tr>
<tr>
<td align="center" valign="top">96</td>
<td align="center" valign="top">60</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to validity period end</td>
</tr>
<tr>
<td align="center" valign="top">100</td>
<td align="center" valign="top">64</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of validity period end</td>
</tr>
<tr>
<td align="center" valign="top">104</td>
<td align="center" valign="top">68</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to subject's common name</td>
</tr>
<tr>
<td align="center" valign="top">108</td>
<td align="center" valign="top">6C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of subject's common name</td>
</tr>
<tr>
<td align="center" valign="top">112</td>
<td align="center" valign="top">70</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to subject's country or region</td>
</tr>
<tr>
<td align="center" valign="top">116</td>
<td align="center" valign="top">74</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of subject's country or region</td>
</tr>
<tr>
<td align="center" valign="top">120</td>
<td align="center" valign="top">78</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to subject's state or province</td>
</tr>
<tr>
<td align="center" valign="top">124</td>
<td align="center" valign="top">7C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of subject's state or province</td>
</tr>
<tr>
<td align="center" valign="top">128</td>
<td align="center" valign="top">80</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to subject's locality</td>
</tr>
<tr>
<td align="center" valign="top">132</td>
<td align="center" valign="top">84</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of subject's locality</td>
</tr>
<tr>
<td align="center" valign="top">136</td>
<td align="center" valign="top">88</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to subject's organization</td>
</tr>
<tr>
<td align="center" valign="top">140</td>
<td align="center" valign="top">8C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of subject's organization</td>
</tr>
<tr>
<td align="center" valign="top">144</td>
<td align="center" valign="top">90</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to subject's organizational unit</td>
</tr>
<tr>
<td align="center" valign="top">148</td>
<td align="center" valign="top">94</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of subject's organizational unit</td>
</tr>
<tr>
<td align="center" valign="top">152</td>
<td align="center" valign="top">98</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to subject's postal code</td>
</tr>
<tr>
<td align="center" valign="top">156</td>
<td align="center" valign="top">9C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of subject's postal code</td>
</tr>
<tr>
<td align="center" valign="top">160</td>
<td align="center" valign="top">A0</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to subject's public key
algorithm</td>
</tr>
<tr>
<td align="center" valign="top">164</td>
<td align="center" valign="top">A4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of subject's public key
algorithm</td>
</tr>
<tr>
<td align="center" valign="top">168</td>
<td align="center" valign="top">A8</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to issuer's unique ID (Version
2)</td>
</tr>
<tr>
<td align="center" valign="top">172</td>
<td align="center" valign="top">AC</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of issuer's unique ID (Version
2)</td>
</tr>
<tr>
<td align="center" valign="top">176</td>
<td align="center" valign="top">B0</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to subject's unique ID (Version
2)</td>
</tr>
<tr>
<td align="center" valign="top">180</td>
<td align="center" valign="top">B4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of subject's unique ID (Version
2)</td>
</tr>
<tr>
<td align="center" valign="top">184</td>
<td align="center" valign="top">B8</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to issuer's e-mail address</td>
</tr>
<tr>
<td align="center" valign="top">188</td>
<td align="center" valign="top">BC</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of issuer's e-mail address</td>
</tr>
<tr>
<td align="center" valign="top">192</td>
<td align="center" valign="top">C0</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to subject's e-mail address</td>
</tr>
<tr>
<td align="center" valign="top">196</td>
<td align="center" valign="top">C4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of subject's e-mail address</td>
</tr>
<tr>
<td align="center" valign="top">200</td>
<td align="center" valign="top">C8</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to EIM identifier</td>
</tr>
<tr>
<td align="center" valign="top">204</td>
<td align="center" valign="top">CC</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of EIM identifier</td>
</tr>
<tr>
<td align="center" valign="top">208</td>
<td align="center" valign="top">D0</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to EIM local registry name</td>
</tr>
<tr>
<td align="center" valign="top">212</td>
<td align="center" valign="top">D4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of EIM local registry name</td>
</tr>
<tr>
<td align="center" valign="top">216</td>
<td align="center" valign="top">D8</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to user name</td>
</tr>
<tr>
<td align="center" valign="top">220</td>
<td align="center" valign="top">DC</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of user name</td>
</tr>
<tr>
<td align="center" valign="top"></td>
<td align="center" valign="top"></td>
<td align="left" valign="top">ARRAY(*) of CHAR</td>
<td align="left" valign="top">Certificate information fields
</td>
</tr>
</table>
<h3><a name="HDRSELTCNT">Selection Control</a></h3>
<p>The criteria is used to select or match certificates based on specified
information.</p>
<p>This parameter is useful to reduce the total number of certificates
that are returned in the list. The list of certificates is generated with
only the specific selections that are of interest.</p>
<p>The following shows the format of the selection control parameter. For
detailed descriptions of the fields in the table, see <a href=
"#HDRCINPRMD">Field Descriptions</a>.</p>
<table border width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">BINARY(4)</td>
<td align="left" valign="top" width="60%">Length of selection control</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="center" valign="top">4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Number of selection pairs</td>
</tr>
<tr>
<td align="center" valign="top">8</td>
<td align="center" valign="top">8</td>
<td align="left" valign="top">ARRAY(*) of BINARY(4)</td>
<td align="left" valign="top">Displacements to selection pairs</td>
</tr>
<tr>
<td colspan="2" rowspan="3">These fields repeat for each selection pair
specified</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of selection pair</td>
</tr>
<tr>
<td align="left" valign="top">CHAR(20)</td>
<td align="left" valign="top">Selection name</td>
</tr>
<tr>
<td align="left" valign="top">ARRAY(*) of CHAR</td>
<td align="left" valign="top">Selection value</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRCINPRMD">Field Descriptions</a></h3>
<p><strong>Available length of this certificate and format
information.</strong> The available length of this certificate and format
information. If this length is more than the returned length of this
certificate and format information field, then not all of the fields were
returned.</p>
<p><strong>Certificate information fields.</strong> The actual data in the
certificate. Specific fields can be accessed by using the offset to that
specific field. </p>
<p><strong>Displacements to selection pairs.</strong> An array of
displacements to selection pairs from the beginning of the selection
control.</p>
<p><strong>EIM identifier.</strong> The EIM identifier
that was specified on the call to the API.</p>
<p><strong>Format name.</strong> The format of the returned output.</p>
<p><strong>Length of ASN.1 format certificate.</strong> The length of the
ASN.1 DER format certificate. This length refers to a field of hexadecimal
bytes.</p>
<p><strong>Length of certificate handle.</strong> The length of the
certificate handle. This length refers to a field of hexadecimal
bytes.</p>
<p><strong>Length of EIM identifier.</strong> The length of the
EIM identifier that was specified on the call to the API or
to which the certificate is associated.</p>
<p><strong>Length of EIM local registry name.</strong> The length of the
EIM local registry name. This registry would be the target registry for the
user name's association to the EIM identifier.</p>
<p><strong>Length of issuer's common name.</strong> The length of the
field that indicates the issuer's common name.</p>
<p><strong>Length of issuer's country or region.</strong> The length of the field
that indicates the issuer's country or region.</p>
<p> <strong>Length of issuer's e-mail address.</strong> The length of the
field that indicates the issuer's e-mail address.</p>
<p><strong>Length of issuer's locality.</strong> The length of the field
that indicates the issuer's locality.</p>
<p><strong>Length of issuer's organization.</strong> The length of the
field that indicates the issuer's organization.</p>
<p><strong>Length of issuer's organizational unit.</strong> The length of
the field that indicates the issuer's organizational unit.</p>
<p><strong>Length of issuer's postal code.</strong> The length of the
field that indicates the issuer's postal code.</p>
<p><strong>Length of issuer's state or province.</strong> The length of
the field that indicates the issuer's state or province.</p>
<p><strong>Length of issuer's unique ID (Version 2).</strong> The length
of the field that indicates the issuer's unique ID (Version 2). This
length refers to a field of hexadecimal bytes.</p>
<p><strong>Length of selection control.</strong> The total number of bytes
for the length itself, the bytes for the number of selection pairs, and
the bytes for the array of displacements. It also includes the sum of the
lengths of the selection pairs. The length of the selection control will
vary due to the array of displacements and the selection pairs. A length
of zero indicates that no selection control pairs are specified.</p>
<p><strong>Length of selection pair.</strong> The length of the selection
name and selection value fields and the bytes for the length itself. The
length of the selection pair will vary due to the selection value. Valid
values that are used are 24 bytes or larger. A value of 24 corresponds to
a selection value that is empty and means that certificates should be
returned when the corresponding value in the certificate is also empty or
not recognized.</p>
<p><strong>Length of serial number.</strong> The length of the field that
indicates the serial number.</p>
<p><strong>Length of subject's common name.</strong> The length of the
field that indicates the subject's common name.</p>
<p><strong>Length of subject's country or region.</strong> The length of the field
that indicates the subject's country or region.</p>
<p><strong>Length of subject's e-mail address.</strong> The length of the
field that indicates the subject's e-mail address.</p>
<p><strong>Length of subject's locality.</strong> The length of the field
that indicates the subject's locality.</p>
<p><strong>Length of subject's organization.</strong> The length of the
field that indicates the subject's organization.</p>
<p><strong>Length of subject's organizational unit.</strong> The length of
the field that indicates the subject's organizational unit.</p>
<p><strong>Length of subject's postal code.</strong> The length of the
field that indicates the subject's postal code.</p>
<p><strong>Length of subject's public key algorithm.</strong> The length
of the field that indicates the subject's public key algorithm.</p>
<p><strong>Length of subject's state or province.</strong> The length of
the field that indicates the subject's state or province.</p>
<p><strong>Length of subject's unique ID (Version 2).</strong> The length
of the field that indicates the subject's unique ID (Version 2). This
length refers to a field of hexadecimal bytes.</p>
<p><strong>Length of user name.</strong> The length of the field that
indicates the user name to which the certificate is associated.</p>
<p><strong>Length of validity period start.</strong> The length of the
field that indicates the beginning date of the validity period. The first
8 characters consist of 4 characters for the year, 2 characters for the
month, and 2 characters for the day.
The last 6 characters consist of 2 characters for the hours, 2 characters
for the minutes, and 2 characters for the seconds.
</p>
<p><strong>Length of validity period end.</strong> The length of the field
that indicates the ending date of the validity period. The first 8
characters consist of 4 characters for the year, 2 characters for the
month, and 2 characters for the day.
The last 6 characters consist of 2 characters for the hours, 2 characters
for the minutes, and 2 characters for the seconds.
</p>
<p><strong>Length of version.</strong> The length of the field that
indicates the version. This length refers to a field of hexadecimal
bytes.</p>
<p><strong>Number of selection pairs.</strong> The number of separate
selection pairs in the generated list of certificates. All of the
selection pairs must be satisfied for each certificate that is returned.
If the number of selection pairs is 0, then all certificates are returned.
The maximum allowed number of selection pairs is defined as
QSY_MAX_SEL_NAMES.</p>
<p><strong>Offset to ASN.1 format certificate.</strong> The offset to the
ASN.1 DER format certificate. This offset refers to a field of hexadecimal
bytes.</p>
<p><strong>Offset to certificate handle.</strong> The offset to the
certificate handle. This offset refers to a field of hexadecimal
bytes.</p>
<p><strong>Offset to EIM identifier.</strong> The offset to the
EIM identifier that was specified on the call to the API or
to which the certificate is associated.</p>
<p><strong>Offset to EIM local registry name.</strong> The offset to the
EIM local registry name.</p>
<p><strong>Offset to issuer's common name.</strong> The offset to the
field that indicates the issuer's common name.</p>
<p><strong>Offset to issuer's country or region.</strong> The offset to the field
that indicates the issuer's country or region.</p>
<p><strong>Offset to issuer's e-mail address.</strong> The offset to the
field that indicates the issuer's e-mail address.</p>
<p><strong>Offset to issuer's locality.</strong> The offset to the field
that indicates the issuer's locality.</p>
<p><strong>Offset to issuer's organization.</strong> The offset to the
field that indicates the issuer's organization.</p>
<p><strong>Offset to issuer's organizational unit.</strong> The offset to
the field that indicates the issuer's organizational unit.</p>
<p><strong>Offset to issuer's postal code.</strong> The offset to the
field that indicates the issuer's postal code.</p>
<p><strong>Offset to issuer's state or province.</strong> The offset to
the field that indicates the issuer's state or province.</p>
<p><strong>Offset to issuer's unique ID (Version 2).</strong> The offset
to the field that indicates the issuer's unique ID (Version 2). This
offset refers to a field of hexadecimal bytes.</p>
<p><strong>Offset to selection control.</strong> The offset to the
selection control. The first field of the selection control is the length
of selection control.</p>
<p><strong>Offset to serial number.</strong> The offset to the field that
indicates the serial number.</p>
<p><strong>Offset to subject's common name.</strong> The offset to the
field that indicates the subject's common name.</p>
<p><strong>Offset to subject's country or region.</strong> The offset to the field
that indicates the subject's country or region.</p>
<p><strong>Offset to subject's e-mail address.</strong> The offset to the
field that indicates the subject's e-mail address.</p>
<p><strong>Offset to subject's locality.</strong> The offset to the field
that indicates the subject's locality.</p>
<p><strong>Offset to subject's organization.</strong> The offset to the
field that indicates the subject's organization.</p>
<p><strong>Offset to subject's organizational unit.</strong> The offset to
the field that indicates the subject's organizational unit.</p>
<p><strong>Offset to subject's postal code.</strong> The offset to the
field that indicates the subject's postal code.</p>
<p><strong>Offset to subject's public key algorithm.</strong> The offset
to the field that indicates the subject's public key algorithm.</p>
<p><strong>Offset to subject's state or province.</strong> The offset to
the field that indicates the subject's state or province.</p>
<p><strong>Offset to subject's unique ID (Version 2).</strong> The offset
to the field that indicates the subject's unique ID (Version 2). This
offset refers to a field of hexadecimal bytes.</p>
<p><strong>Offset to user name.</strong> The offset to the
user name to which the certificate is associated.</p>
<p><strong>Offset to validity period start.</strong> The offset to the
field that indicates the beginning date of the validity period.</p>
<p><strong>Offset to validity period end.</strong> The offset to the field
that indicates the ending date of the validity period.</p>
<p><strong>Offset to version.</strong> The offset to the field that
indicates the version. This offset refers to a field of hexadecimal
bytes.</p>
<p><strong>Reserved.</strong> An ignored field.</p>
<p><strong>Returned length of this certificate and format
information.</strong> The total length of this certificate and format
information that was returned. This length is for one certificate.</p>
<p><strong>Selection name.</strong> The selection that is used to limit
which certificates from the validation list are returned. Selections
indicate which fields of the certificate are to be examined for matching
selection values. Selection names cannot be specified more than once.
Selection names are defined with length QSY_SELCTRL_NAME_LEN.</p>
<p>Valid selection names are:</p>
<table cellpadding="5">
<!-- cols="30 70" -->
<tr>
<td valign="top"><strong>COMMONNAME</strong></td>
<td valign="top">Client's common name</td>
</tr>
<tr>
<td valign="top"><strong>COUNTRY</strong></td>
<td valign="top">Country or region in which the client resides</td>
</tr>
<tr>
<td valign="top"><strong>LOCALITY</strong></td>
<td valign="top">Locality in which the client resides</td>
</tr>
<tr>
<td valign="top"><strong>STATEORPROVINCE</strong></td>
<td valign="top">State or province in which the client resides</td>
</tr>
<tr>
<td valign="top"><strong>ORGANIZATION</strong></td>
<td valign="top">Organization of the client</td>
</tr>
<tr>
<td valign="top"><strong>ORGANIZATIONALUNIT</strong></td>
<td valign="top">Organizational unit of the client</td>
</tr>
<tr>
<td valign="top"><strong>PUBLICKEY</strong></td>
<td valign="top">Public key of the certificate. This value is not text. It
is the entire public key information as found in the certificate in ASN.1
DER format and it includes the tags and lengths. The actual public key
found in the certificate is compared with the specified selection value
that corresponds with this selection name. It is not returned in the list
data section when the CERT0200 format name is specified.</td>
</tr>
<tr>
<td valign="top"><strong>EXPIRATIONDAYS</strong></td>
<td valign="top">Certificates that are expired or will expire
in the specified number of days. This value will be the number of days in
character format (zoned decimal).</td>
</tr>
<tr>
<td valign="top"><strong>CERTIFICATEHANDLE</strong></td>
<td valign="top">Handle for the certificate.</td>
</tr>
</table>
<br>
<p><strong>Selection value.</strong> The array of characters that is used
for matching the corresponding field of the certificate. A match in the
certificate indicates that the certificate is of interest. If the
certificate does not contain matching characters in its corresponding
field, the certificate will not be returned as part of the list. The
length of the selection value can be determined by subtracting the fixed
lengths of the selection name field and the length field from the length
of selection pair. The comparison of the fields is done in the CCSID of
the job and is case sensitive.</p>
<p>Example values:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td valign="top">John Smith</td>
<td valign="top"></td>
</tr>
<tr>
<td valign="top">US</td>
<td valign="top"></td>
</tr>
<tr>
<td valign="top">NY</td>
<td valign="top"></td>
</tr>
<tr>
<td valign="top">XYZ Data Security, Inc.</td>
<td valign="top"></td>
</tr>
<tr>
<td valign="top">Secure Server Certification Authority</td>
<td valign="top"></td>
</tr>
</table>
<br>
<p>For example, to limit the certificates that are returned to only
certificates that have US for the country or region, use the available definitions
such as the 20-character name field defined by QSY_COUNTRY to indicate the
following values in the selection control:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td valign="top">Length of selection control: 38</td>
<td valign="top"></td>
</tr>
<tr>
<td valign="top">Number of selection pairs: 1</td>
<td valign="top"></td>
</tr>
<tr>
<td valign="top">Displacement to selection pair: 12</td>
<td valign="top"></td>
</tr>
</table>
<br>
<p>The corresponding selection pair for this example would use the
following values:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td valign="top">Length of selection pair: 26</td>
<td valign="top"></td>
</tr>
<tr>
<td valign="top">Selection name: COUNTRY</td>
<td valign="top"></td>
</tr>
<tr>
<td valign="top">Selection value: US</td>
<td valign="top"></td>
</tr>
</table>
<br>
<p>For another example, to indicate that all certificates that are found
are to be returned, the selection control could indicate that there are no
selection pairs to be used either by specifying that the length of the
selection control is 0, and no selection pairs value will be checked, or
by specifying that the number of selection pairs is 0 as follows:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td valign="top">Length of selection control: 8</td>
<td valign="top"></td>
</tr>
<tr>
<td valign="top">Number of selection pairs: 0</td>
<td valign="top"></td>
</tr>
</table>
<br>
<p><strong>User name.</strong> The name of the user profile that is
specified on the call to the API.
If this field contains *EIMID, then the Offset to EIM identifier and Length of
EIM identifier fields can be used to determine the EIM identifier value that
was specified on the call to the API.
</p>
<p><strong>User space library name.</strong> The library that contains the
user space, as specified in the call to the API.</p>
<p><strong>User space name.</strong> The name of the user space.</p>
<br>
<br>
<h3><a name="Header_33">Error Messages</a></h3>
<table width="100%">
<tr>
<th align="left" valign="top">Message ID</th>
<th align="left" valign="top">Error Message Text</th>
</tr>
<tr>
<td valign="top">CPFA0AA E</td>
<td valign="top">Error occurred while attempting to obtain space.</td>
</tr>
<tr>
<td valign="top">CPF1F41 E</td>
<td valign="top">Severe error occurred while addressing parameter
list.</td>
</tr>
<tr>
<td valign="top">CPF2204 E</td>
<td valign="top">User profile &amp;1 not found.</td>
</tr>
<tr>
<td valign="top">CPF2213 E</td>
<td valign="top">Not able to allocate user profile &amp;1.</td>
</tr>
<tr>
<td valign="top">CPF2217 E</td>
<td valign="top">Not authorized to user profile &amp;1.</td>
</tr>
<tr>
<td valign="top">CPF222E E</td>
<td valign="top">&amp;1 special authority is required.
</td>
</tr>
<tr>
<td valign="top">CPF2222 E</td>
<td valign="top">Storage limit is greater than specified for user profile
&amp;1.</td>
</tr>
<tr>
<td valign="top">CPF227B E</td>
<td valign="top">Certificate is not correct for the specified type.</td>
</tr>
<tr>
<td valign="top">CPF227E E</td>
<td valign="top">Selection control is not valid.</td>
</tr>
<tr>
<td valign="top">CPF3BFF E</td>
<td valign="top">Required option &amp;1 is not available.
</td>
</tr>
<tr>
<td valign="top">CPF3CF1 E</td>
<td valign="top">Error code parameter not valid.</td>
</tr>
<tr>
<td valign="top">CPF3CF2 E</td>
<td valign="top">Error(s) occurred during running of &amp;1 API.</td>
</tr>
<tr>
<td valign="top">CPF3C1E E</td>
<td valign="top">Required parameter &amp;1 omitted.</td>
</tr>
<tr>
<td valign="top">CPF3C21 E</td>
<td valign="top">Format name &amp;1 is not valid.</td>
</tr>
<tr>
<td valign="top">CPF3C36 E</td>
<td valign="top">Number of parameters, &amp;1, entered for this API was
not valid.</td>
</tr>
<tr>
<td valign="top">CPF3C90 E</td>
<td valign="top">Literal value cannot be changed.</td>
</tr>
<tr>
<td valign="top">CPF4AB9 E</td>
<td valign="top">User certificate function not successful.
</td>
</tr>
<tr>
<td valign="top">CPF9801 E</td>
<td valign="top">Object &amp;2 in library &amp;3 not found.</td>
</tr>
<tr>
<td valign="top">CPF9802 E</td>
<td valign="top">Not authorized to object &amp;2 in &amp;3.</td>
</tr>
<tr>
<td valign="top">CPF9803 E</td>
<td valign="top">Cannot allocate object &amp;2 in library &amp;3.</td>
</tr>
<tr>
<td valign="top">CPF9804 E</td>
<td valign="top">Object &amp;2 in library &amp;3 damaged.</td>
</tr>
<tr>
<td valign="top">CPF9872 E</td>
<td valign="top">Program or service program &amp;1 in library &amp;2
ended. Reason code &amp;3.</td>
</tr>
</table>
<hr>
API introduced: V4R2
<hr>
<center>
<table cellpadding="2" cellspacing="2">
<tr align="center">
<td valign="middle" align="center"><a href="#Top_Of_Page">Top</a> | <a
href="secex1.htm">Digital Certificate Mgmt APIs</a> | <a href="sec.htm">
Security APIs</a> | <a href="aplist.htm">APIs by category</a></td>
</tr>
</table>
</center>
</body>
</html>