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

955 lines
28 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>Sign Object (QYDOSGNO, QydoSignObject) 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. -->
<!-- Change History: -->
<!-- YYMMDD USERID Change description -->
<!-- QYDOSGNO SCR510 A converted by B2H R4.1 (346) (CMS) by V2CDIJAB -->
<!-- at RCHVMW2 on 17 Oct 2000 at 13:02:03 -->
<!-- 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 type="text/javascript" language="Javascript" src="../rzahg/synch.js">
</script>
<h2>Sign Object (QYDOSGNO, QydoSignObject) API</h2>
<div class="box" style="width: 80%;">
<br>
&nbsp;&nbsp;Required Parameter Group:<br>
<!-- iddvc RMBR -->
<br>
<table width="100%">
<tr>
<td align="center" valign="top" width="10%">1</td>
<td align="left" valign="top" width="50%">Object path name</td>
<td align="left" valign="top" width="20%">Input</td>
<td align="left" valign="top" width="20%">Char(*)</td>
</tr>
<tr>
<td align="center" valign="top">2</td>
<td align="left" valign="top">Length of object path name</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Binary(4)</td>
</tr>
<tr>
<td align="center" valign="top">3</td>
<td align="left" valign="top">Format of object path 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">Application identifier</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">Length of application identifier</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Binary(4)</td>
</tr>
<tr>
<td align="center" valign="top">6</td>
<td align="left" valign="top">Replace duplicate signature</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(1)</td>
</tr>
<tr>
<td align="center" valign="top">7</td>
<td align="left" valign="top">Multiple objects characteristics</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(*)</td>
</tr>
<tr>
<td align="center" valign="top">8</td>
<td align="left" valign="top">Length of multiple objects characteristics</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Binary(4)</td>
</tr>
<tr>
<td align="center" valign="top">9</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;Service Program Name: QYDOSGN1<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Default Public Authority: *USE<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Threadsafe: No<br>
<!-- iddvc RMBR -->
<br>
</div>
<p>The Sign Object (OPM, QYDOSGNO; ILE, QydoSignObject) API allows the local
system to certify that the object being signed is trustworthy as of the time
the object is being signed.</p>
<p>The application identifier will be used to find the certificate needed to
sign this object. The certificate will be used later to verify the contents of
this object have not changed and this certificate will be reported as having
signed this object.</p>
<br>
<h3>Authorities and Locks</h3>
<dl>
<dt><em>Authority Required</em></dt>
<dd>For objects in a library:
<ul>
<li>*OBJOPR and *OBJMGT authority to the object</li>
<li>*OBJOPR and *EXECUTE authority to the library.</li>
</ul>
For objects in a directory:
<ul>
<li>*R and *OBJMGT authority to the object</li>
<li>*X authority to each directory in the path<br>
*R for the directory with wildcards (that is, a pattern is specified)<br>
*RX authority to each subdirectory searched if the subdirectories parameter
specifies 1.</li>
</ul>
<p>To use this API, you must be authorized to the object signing applications
function associated with your application identifier through iSeries
Navigator's application administration support. The Change Function Usage
Information (QSYCHFUI) API, with a function ID of the same name as the
application identifier, also can be used to change the list of users that are
allowed to use this application identifier.</p>
<p>See the <a href="open.htm">open()</a> API for the authority needed to the
results path name. The file is open for append and is created if it does not
already exist.</p>
</dd>
<dt><em>Locks</em></dt>
<dd>Object will be locked exclusive no read.</dd>
</dl>
<br>
<h3>Required Parameter Group</h3>
<dl>
<dt><strong>Object path name</strong></dt>
<dd>INPUT; CHAR(*)
<p>The path name of the object you want to sign. If the object is not in a
library, the name may be relative to the current directory or may specify the
entire path name. If the object is in a library the name must be in the form
'/QSYS.LIB/libname.LIB/objname.objtype' if you are using format OBJN0100 object
path naming. For example to sign a program named NEWEMPL in library PAYROLL,
the qualified object name would be '/QSYS.LIB/PAYROLL.LIB/NEWEMPL.PGM' if you
are using format OBJN0100 object path naming. Also if you are using format
OBJN0100 object path naming, this parameter is assumed to be represented in the
coded character set identifier (CCSID) currently in effect for the job. If the
CCSID of the job is 65535, this parameter is assumed to be represented in the
default CCSID of the job.</p>
<p>The path name may contain wildcard characters. '*' represents any number of
unknown characters. '?' represents any single unknown character. For example,
to specify all the program objects in library MYLIB, using format OBJN0100, you
could specify '/QSYS.LIB/MYLIB.LIB/*.PGM'. If you want to sign all signable objects in a library or
directory, specify the last part of the path name as simply '*'. For example to
sign all signable objects in MYLIB, assuming you are using format OBJN0100, you
could specify '/QSYS.LIB/MYLIB.LIB/*'.</p>
<p>If the object is in the QSYS
file system, it must an object type *PGM, *SRVPGM, *MODULE, *SQLPKG, *FILE
(save file), or *CMD. </p>
</dd>
<dt><strong>Length of object path name</strong></dt>
<dd>INPUT; BINARY(4)
<p>The length of the object path name. If the format of object path name is
OBJN0200, this field must include the QLG path name structure in addition to
the path name itself. If the format of object path name is OBJN0100, only the
path name itself is included.</p>
</dd>
<dt><strong>Format of object path name</strong></dt>
<dd>INPUT; CHAR(8)
<p>The format of the object path name parameter.</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>OBJN0100</em></td>
<td align="left" valign="top">The object path name is a simple path name.</td>
</tr>
<tr>
<td align="left" valign="top"><em>OBJN0200</em></td>
<td align="left" valign="top">The object path name is an LG-type path
name.</td>
</tr>
</table>
<br>
</dd>
<dt><strong>Application identifier</strong></dt>
<dd>INPUT; CHAR(*)
<p>The user-supplied application ID to sign objects with. The application type
must be 4 (object signing) and it must be assigned to a valid certificate
label. User-supplied application IDs should not preface their application ID
with QIBM. User-supplied application IDs should start with the company name to
eliminate most problems that involve unique names. Application IDs should use
an underscore (_) to separate parts of the name (for example,
QIBM_OS400_HOSTSERVER). Also, IDs for related applications should start with
the same name (for example, QIBM_DIRSRV_SERVER and
QIBM_DIRSRV_REPLICATION).</p>
<p>The following characters are allowed in an application ID. The first
character of the application ID must be one of the following:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top" nowrap><em>A-Z</em></td>
<td align="left" valign="top">Uppercase A-Z</td>
</tr>
</table>
<p>The remaining characters in the application ID must be made up of the
following characters:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top" nowrap><em>A-Z</em></td>
<td align="left" valign="top">Uppercase A-Z</td>
</tr>
<tr>
<td align="left" valign="top"><em>0-9</em></td>
<td align="left" valign="top">Digits 0-9</td>
</tr>
<tr>
<td align="left" valign="top"><em>.</em></td>
<td align="left" valign="top">Period</td>
</tr>
<tr>
<td align="left" valign="top"><em>_</em></td>
<td align="left" valign="top">Underscore</td>
</tr>
</table>
<br>
</dd>
<dt><strong>Length of application identifier</strong></dt>
<dd>INPUT; BINARY(4)
<p>The length of the specified application identifier. This length must be a
value from 1 to 30.</p>
</dd>
<dt><strong>Replace duplicate signature</strong></dt>
<dd>INPUT; CHAR(1)
<p>Whether the old signature is
left or replaced if a signature using the same certificate as the application
identifier above uses is detected.</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">Leave the old signature and report an error.</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">Replace the old signature.</td>
</tr>
</table>
<br>
</dd>
<dd>
<p>If the object contents have
changed since the first time this certificate signed the object, the signature
is replaced automatically. This parameter only affects signatures where the
content has not changed.</p>
</dd>
<dt><strong>Multiple objects characteristics</strong></dt>
<dd>INPUT; CHAR(*)
<p>How multiple objects specified on the object path name parameter are
handled. See <a href="#HDRMLTGP1">Multiple objects characteristics format</a>
for details on the format of this parameter. This field may be NULL if the
length of multiple objects characteristics is 0.</p>
</dd>
<dt><strong>Length of multiple objects characteristics</strong></dt>
<dd>INPUT; BINARY(4)
<p>The length of the specified multiple objects characteristics. This length
may be 0 if you want to use the default values for all these characteristics or
1 or greater to indicate how many bytes of the characteristics should be
used.</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="HDRMLTGP1">Multiple objects characteristics format</a></h3>
<p>The format of the multiple objects characteristics is shown in the following
table. For detailed descriptions of the fields in the tables, see <a href=
"#HDRMLTGP2">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%">CHAR(1)</td>
<td align="left" valign="top" width="60%">Subdirectories</td>
</tr>
<tr>
<td align="center" valign="top">1</td>
<td align="center" valign="top">1</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Stop of first error</td>
</tr>
<tr>
<td align="center" valign="top">
2</td>
<td align="center" valign="top">2</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Sign only core part of object</td>
</tr>
<tr>
<td align="center" valign="top">3</td>
<td align="center" valign="top">3</td>
<td align="left" valign="top">CHAR(5)</td>
<td align="left" valign="top">Reserved</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 results file path name</td>
</tr>
<tr>
<td align="center" valign="top">12</td>
<td align="center" valign="top">0C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of results file path name</td>
</tr>
<tr>
<td align="center" valign="top">16</td>
<td align="center" valign="top">10</td>
<td align="left" valign="top">CHAR(8)</td>
<td align="left" valign="top">Format of results file path name</td>
</tr>
<tr>
<td align="center" valign="top">24</td>
<td align="center" valign="top">18</td>
<td align="left" valign="top">CHAR(8)</td>
<td align="left" valign="top">Format of contents of the results file</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Results file path name</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRMLTGP2">Field Descriptions</a></h3>
<p><strong>Format of content of the results file.</strong> The format of the
content of the file containing the results of this call.</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>RSLT0100</em></td>
<td align="left" valign="top">The basic information is returned for each object
specified by the object path name parameter.</td>
</tr>
</table>
<p><strong>Format of results path name.</strong> The format of the results path
name parameter.</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>OBJN0100</em></td>
<td align="left" valign="top">The results path name is a simple path name.</td>
</tr>
<tr>
<td align="left" valign="top"><em>OBJN0200</em></td>
<td align="left" valign="top">The results path name is an LG-type path
name.</td>
</tr>
</table>
<p><strong>Length of results path name.</strong> The length of the results path
name. 0 length means no results files are used, and the results path name and
format of results path name parameter values are not used. If the format of
results path name is OBJN0200, this field must include the QLG path name
structure in addition to the path name itself. If the format of results path
name is OBJN0100, only the path name itself is included.</p>
<p><strong>Offset to results path name.</strong> Offset from the beginning of
this structure to the results path name.</p>
<p><strong>Reserved.</strong> This field currently is not used. It is filled
with binary zeroes.</p>
<p><strong>Results path name.</strong> The path name of the object you want to
contain the results on this call. This object may not be in a library (that is,
it may not be under the /QSYS.LIB directory). The name may be relative to the
current directory or may specify the entire path name. For example, to store
results in a file called SIGNED.LST in the MYDIR directory, the results path
name would be '/MYDIR/SIGNED.LST'. If you are using format OBJN0100, this
parameter is assumed to be represented in the coded character set identifier
(CCSID) currently in effect for the job. If the CCSID of the job is 65535, this
parameter is assumed to be represented in the default CCSID of the job.</p>
<p>If this is an existing file, results are appended to the end of the file.
Otherwise, a new file is created.</p>
<p>The default is not to have a
results file.</p>
<p><strong>Sign only core part of object.</strong> Whether the entire object be
signed or not. This value only applies to objects that can have the core part
of the object signed. Objects which cannot have only a core part of the object
signed will sign the entire object, independent of the value specified
here.</p>
<p>Currently, only *CMD objects can have a core part of the object signed.</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">The entire object should be signed. This is the
default value.</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">Only the core part of the object should be
signed.</td>
</tr>
</table>
<p>A value of hex 00 will be treated as the default value for this field. This
can happen when a program written in V5R1 (where this field was not defined) is
run on V5R2. </p>
<p><strong>Stop on first error.</strong> Whether control should be returned on
the first error found.</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">Continue processing objects even if some errors
are found.</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">Stop on the first object that detects an error.
This is the default value.</td>
</tr>
</table>
<p><strong>Subdirectories.</strong> Whether objects in directories under the
directory specified in the object path name parameter should be processed
also.</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">Process objects in the directory specified in the
object path name parameter only. This is the default value.</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">Process objects in the directory specified in the
object name path parameter and in all directories under that directory.</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRLOBJA1A">RSLT0100 format</a></h3>
<p>The following table describes the order and format of the data returned in
the RSLT0100 format. This data is repeated for each object that was attempted
to be processed. For detailed descriptions of the fields in the tables, see <a
href="#HDRRSLTA1">Field Descriptions</a>.</p>
<p><strong>Note:</strong>All data in this file will be in CCSID 13488. New
files will be created in this CCSID. If an existing file is named that has a
different CCSID, an error will be reported.</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%">CHAR(7)</td>
<td align="left" valign="top" width="60%">Message identifier</td>
</tr>
<tr>
<td align="center" valign="top">7</td>
<td align="center" valign="top">7</td>
<td align="left" valign="top">CHAR(9)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top">16</td>
<td align="center" valign="top">10</td>
<td align="left" valign="top">CHAR(8)</td>
<td align="left" valign="top">Date</td>
</tr>
<tr>
<td align="center" valign="top">24</td>
<td align="center" valign="top">18</td>
<td align="left" valign="top">CHAR(8)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top">32</td>
<td align="center" valign="top">20</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Operation type</td>
</tr>
<tr>
<td align="center" valign="top">33</td>
<td align="center" valign="top">21</td>
<td align="left" valign="top">CHAR(15)</td>
<td align="left" valign="top">Operation type description</td>
</tr>
<tr>
<td align="center" valign="top">48</td>
<td align="center" valign="top">30</td>
<td align="left" valign="top">CHAR(8)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top">56</td>
<td align="center" valign="top">38</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Fully qualified object name</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRRSLTA1">Field Descriptions</a></h3>
<p><strong>Date.</strong> The date the operation took place. The format will be
YYYYMMDD. For example, June 30, 2002 will be 20020630.</p>
<p><strong>Fully qualified object name.</strong> The simple path name from the
root to the object being signed. The field will be terminated with a new line
character.</p>
<p><strong>Message identifier.</strong> The error message used to report
failure. This field is blank if no error was detected for this object.</p>
<p><strong>Operation type.</strong> The operation that was attempted.</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">Signing operation</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">Verifying operation</td>
</tr>
</table>
<p><strong>Operation type description.</strong> Short word description of the
operation that was attempted.</p>
<p><strong>Reserved.</strong> This field currently is not used. It is filled
with blanks.</p>
<br>
<h3>Error Messages</h3>
<table width="100%" cellpadding="5">
<!-- cols="15 85" -->
<tr>
<th align="left" valign="top">Message ID</th>
<th align="left" valign="top">Error Message Text</th>
</tr>
<tr>
<td width="15%" valign="top">CPF9803 E</td>
<td width="85%" valign="top">Cannot allocate object &amp;2 in library
&amp;3.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA085 E</td>
<td align="left" valign="top">Home directory not found for user &amp;1.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA086 E</td>
<td align="left" valign="top">Matching quote not found in path name.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA087 E</td>
<td align="left" valign="top">Path name contains null character.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA088 E</td>
<td align="left" valign="top">Path name pattern not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA089 E</td>
<td align="left" valign="top">Pattern not allowed in path name.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA08B E</td>
<td align="left" valign="top">Path name cannot begin with *.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA08C E</td>
<td align="left" valign="top">Pattern not allowed in path name directory.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA08D E</td>
<td align="left" valign="top">Request information value is not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA08E E</td>
<td align="left" valign="top">More than one name matches pattern.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA091 E</td>
<td align="left" valign="top">Pattern not allowed in user name.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA092 E</td>
<td align="left" valign="top">Path name not converted.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA094 E</td>
<td align="left" valign="top">Path name not specified.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA09C E</td>
<td align="left" valign="top">Not authorized to object.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA0A4 E</td>
<td align="left" valign="top">Too many open files for process.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA0AA E</td>
<td align="left" valign="top">Error occurred while attempting to obtain space.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA0D4 E</td>
<td align="left" valign="top">File system error occurred.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB720 E</td>
<td align="left" valign="top">No signable object was found.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB721 E</td>
<td align="left" valign="top">Object supports signing, but *TGTRLS prevents signing.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB724 E</td>
<td align="left" valign="top">Option &amp;2 of the operating system is required to work with
object signatures.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB72B E</td>
<td align="left" valign="top">Object not found.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB72C E</td>
<td align="left" valign="top">The object cannot currently be signed or verified.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB72E E</td>
<td align="left" valign="top">The parameter for replace duplicate signature is not
valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB731 E</td>
<td align="left" valign="top">Sign object certificate database does not exist.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB735 E</td>
<td align="left" valign="top">The digital signing API parameter &amp;1 is not large
enough.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB736 E</td>
<td align="left" valign="top">The digital signing API parameter &amp;1 is not small
enough.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB737 E</td>
<td align="left" valign="top">The digital signing API parameter &amp;1 is a null
pointer.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB738 E</td>
<td align="left" valign="top">The digital signing API parameter &amp;1 is not a valid format
type.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB739 E</td>
<td align="left" valign="top">The digital signing API parameter &amp;1 is out of range.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB73A E</td>
<td align="left" valign="top">The password for the certificate key database needs to be
set.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB73F E</td>
<td align="left" valign="top">The signing application certificate is expired.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB740 E</td>
<td align="left" valign="top">The format name for the pathname is not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB741 E</td>
<td align="left" valign="top">The length of the path name parameter is not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB742 E</td>
<td align="left" valign="top">The subdirectory option is an invalid value.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB743 E</td>
<td align="left" valign="top">The value for stopping on the first error is not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB744 E</td>
<td align="left" valign="top">The format of the results file for the digital signing API is
an incorrect value.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB745 E</td>
<td align="left" valign="top">The format name for the results file path name is not
valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB746 E</td>
<td align="left" valign="top">The results file path name length is not large enough.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB747 E</td>
<td align="left" valign="top">Object is in a state which is not eligible to be signed.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB748 E</td>
<td align="left" valign="top">Object signed by IBM, not eligible to be signed.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB749 E</td>
<td align="left" valign="top">Object signature operation ended abnormally. &amp;3 objects
attempted, &amp;2 objects successfully processed.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB74A E</td>
<td align="left" valign="top">The application identifier on the digital signing API is not
in a valid state.</td>
</tr>
<tr>
<td align="left" valign="top">CPFB74C E</td>
<td align="left" valign="top">Object contains no data to sign (it is empty).</td>
</tr>
<tr>
<td align="left" valign="top">CPFB74D E</td>
<td align="left" valign="top">Results file could not be used.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBC50 E</td>
<td align="left" valign="top">No path names match input path names.</td>
</tr>
</table>
<br>
<hr>
API introduced: V5R1
<hr>
<center>
<table cellpadding="2" cellspacing="2">
<tr align="center">
<td valign="middle" align="center"><a href="#Top_Of_Page">Top</a> | <a href=
"sec.htm">Security APIs</a> | <a href="aplist.htm">APIs by category</a></td>
</tr>
</table>
</center>
</body>
</html>