Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
PKCS7_SET_TYPE(3)      FreeBSD Library Functions Manual	     PKCS7_SET_TYPE(3)

NAME
     PKCS7_set_type, PKCS7_set0_type_other -- initialize type of PKCS#7	Con-
     tentInfo

SYNOPSIS
     #include <openssl/pkcs7.h>

     int
     PKCS7_set_type(PKCS7 *p7, int type);

     int
     PKCS7_set0_type_other(PKCS7 *p7, int type,	ASN1_TYPE *content);

DESCRIPTION
     These functions set the type of an	unused ContentInfo structure p7.

     The function PKCS7_set_type() also	allocates and initializes an empty
     child object in p7.  The type argument can	be any of these	NIDs, creating
     a child object of the indicated data type:

     type argument		     data type of child	    version
     NID_pkcs7_data		     ASN1_OCTET_STRING	    n.a.
     NID_pkcs7_digest		     PKCS7_DIGEST	    0
     NID_pkcs7_encrypted	     PKCS7_ENCRYPT	    0
     NID_pkcs7_enveloped	     PKCS7_ENVELOPE	    0
     NID_pkcs7_signed		     PKCS7_SIGNED	    1
     NID_pkcs7_signedAndEnveloped    PKCS7_SIGN_ENVELOPE    1

     If	the provided type is invalid, p7 remains unchanged and
     PKCS7_set_type() fails.

     If	memory allocation fails, PKCS7_set_type() fails	and p7 may remain in
     an	inconsistent state.

     The function PKCS7_set0_type_other() accepts an arbitrary NID as the type
     and also sets the content,	neither	checking it in any way nor copying it.

     For both functions, the rest of the internal state	of p7 remains un-
     changed.

RETURN VALUES
     The function PKCS7_set_type() returns 1 on	success	or 0 on	failure.

     The function PKCS7_set0_type_other() does no error	handling at all	and
     always returns 1.

SEE ALSO
     ASN1_OCTET_STRING_new(3), ASN1_TYPE_new(3), PKCS7_encrypt(3),
     PKCS7_new(3), PKCS7_set_content(3), PKCS7_sign(3)

HISTORY
     The function PKCS7_set_type() first appeared in SSLeay 0.8.1 and
     PKCS7_set0_type_other() in	OpenSSL	0.9.8.	Both have been available since
     OpenBSD 2.4.

CAVEATS
     If	p7 has already been in use before being	passed to one of these func-
     tions, it will report success even	though it leaks	memory.	 Later on, if
     other functions try to use	p7 in its former role, they are	likely to mis-
     behave.

FreeBSD	13.0			 May 20, 2020			  FreeBSD 13.0

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUES | SEE ALSO | HISTORY | CAVEATS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=PKCS7_set_type&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help