summaryrefslogtreecommitdiffstats
path: root/secure/lib/libcrypto/man/d2i_X509.3
diff options
context:
space:
mode:
Diffstat (limited to 'secure/lib/libcrypto/man/d2i_X509.3')
-rw-r--r--secure/lib/libcrypto/man/d2i_X509.320
1 files changed, 9 insertions, 11 deletions
diff --git a/secure/lib/libcrypto/man/d2i_X509.3 b/secure/lib/libcrypto/man/d2i_X509.3
index ead4c2b..e5f63a8 100644
--- a/secure/lib/libcrypto/man/d2i_X509.3
+++ b/secure/lib/libcrypto/man/d2i_X509.3
@@ -1,4 +1,4 @@
-.\" Automatically generated by Pod::Man 2.27 (Pod::Simple 3.28)
+.\" Automatically generated by Pod::Man 2.27 (Pod::Simple 3.30)
.\"
.\" Standard preamble:
.\" ========================================================================
@@ -133,7 +133,7 @@
.\" ========================================================================
.\"
.IX Title "d2i_X509 3"
-.TH d2i_X509 3 "2015-01-15" "1.0.1l" "OpenSSL"
+.TH d2i_X509 3 "2015-03-19" "1.0.1m" "OpenSSL"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
@@ -165,8 +165,11 @@ successful a pointer to the \fBX509\fR structure is returned. If an error
occurred then \fB\s-1NULL\s0\fR is returned. If \fBpx\fR is not \fB\s-1NULL\s0\fR then the
returned structure is written to \fB*px\fR. If \fB*px\fR is not \fB\s-1NULL\s0\fR
then it is assumed that \fB*px\fR contains a valid \fBX509\fR
-structure and an attempt is made to reuse it. If the call is
-successful \fB*in\fR is incremented to the byte following the
+structure and an attempt is made to reuse it. This \*(L"reuse\*(R" capability is present
+for historical compatibility but its use is \fBstrongly discouraged\fR (see \s-1BUGS\s0
+below, and the discussion in the \s-1RETURN VALUES\s0 section).
+.PP
+If the call is successful \fB*in\fR is incremented to the byte following the
parsed data.
.PP
\&\fIi2d_X509()\fR encodes the structure pointed to by \fBx\fR into \s-1DER\s0 format.
@@ -342,12 +345,6 @@ In some versions of OpenSSL the \*(L"reuse\*(R" behaviour of \fId2i_X509()\fR wh
persist if they are not present in the new one. As a result the use
of this \*(L"reuse\*(R" behaviour is strongly discouraged.
.PP
-Current versions of OpenSSL will not modify \fB*px\fR if an error occurs.
-If parsing succeeds then \fB*px\fR is freed (if it is not \s-1NULL\s0) and then
-set to the value of the newly decoded structure. As a result \fB*px\fR
-\&\fBmust not\fR be allocated on the stack or an attempt will be made to
-free an invalid pointer.
-.PP
\&\fIi2d_X509()\fR will not return an error in many versions of OpenSSL,
if mandatory fields are not initialized due to a programming error
then the encoded structure may contain invalid data or omit the
@@ -360,7 +357,8 @@ always succeed.
or \fB\s-1NULL\s0\fR if an error occurs. The error code that can be obtained by
\&\fIERR_get_error\fR\|(3). If the \*(L"reuse\*(R" capability has been used
with a valid X509 structure being passed in via \fBpx\fR then the object is not
-modified in the event of error.
+freed in the event of error but may be in a potentially invalid or inconsistent
+state.
.PP
\&\fIi2d_X509()\fR returns the number of bytes successfully encoded or a negative
value if an error occurs. The error code can be obtained by
OpenPOWER on IntegriCloud