ProxyPolicy
Data Structures
Get a method for ASN1 conversion
New
Free
Duplicate
Compare
Print to a BIO stream
Print to a File Stream
Set the Policy Language Field
Get the Policy Language Field
Set the Policy Field
Get the Policy Field
Convert from Internal to DER encoded form
Convert from DER encoded form to Internal
Detailed Description
- Author:
- Sam Meder
-
Sam Lang
The proxypolicy set of data structures and functions provides an interface to generating a PROXYPOLICY structure which is maintained as a field in the PROXYCERTINFO structure, and ultimately gets written to a DER encoded string.
- See also:
- Further Information about proxy policies is available in the X.509 Proxy Certificate Profile document.
Function Documentation
ASN1_METHOD* PROXYPOLICY_asn1_meth |
( |
|
) |
|
Creates an ASN1_METHOD structure, which contains pointers to routines that convert any PROXYPOLICY structure to its associated ASN1 DER encoded form and vice-versa.
- Returns:
- the ASN1_METHOD object
Allocates and initializes a new PROXYPOLICY structure.
- Returns:
- pointer to the new PROXYPOLICY
Frees a PROXYPOLICY.
- Parameters:
-
| policy | the proxy policy to free |
Makes a copy of the proxypolicy - this function allocates space for a new PROXYPOLICY, so the returned PROXYPOLICY must be freed when its no longer needed.
- Parameters:
-
| policy | the proxy policy to copy |
- Returns:
- the new PROXYPOLICY
Compares two PROXYPOLICY structs for equality This function first compares the policy language numeric id's, if they're equal, it then compares the two policies.
- Returns:
- 0 if equal, nonzero if not
int PROXYPOLICY_print |
( |
BIO * |
bp, |
|
|
PROXYPOLICY * |
policy | |
|
) |
| | |
Prints the PROXYPOLICY struct using the BIO stream.
- Parameters:
-
| bp | the BIO stream to print to |
| policy | the PROXYPOLICY to print |
- Returns:
- 1 on success, 0 on error
int PROXYPOLICY_print_fp |
( |
FILE * |
fp, |
|
|
PROXYPOLICY * |
policy | |
|
) |
| | |
Prints the PROXYPOLICY to the file stream FILE*.
- Parameters:
-
| fp | the FILE* stream to print to |
| policy | the PROXYPOLICY to print |
- Returns:
- number of bytes printed, -2 or -1 on error
int PROXYPOLICY_set_policy_language |
( |
PROXYPOLICY * |
policy, |
|
|
ASN1_OBJECT * |
policy_language | |
|
) |
| | |
Sets the policy language of the PROXYPOLICY.
- Parameters:
-
| policy | the PROXYPOLICY to set the policy language of |
| policy_language | the policy language to set it to |
- Returns:
- 1 on success, 0 on error
ASN1_OBJECT* PROXYPOLICY_get_policy_language |
( |
PROXYPOLICY * |
policy |
) |
|
Gets the policy language of the PROXYPOLICY.
- Parameters:
-
| policy | the proxy policy to get the policy language of |
- Returns:
- the policy language as an ASN1_OBJECT
int PROXYPOLICY_set_policy |
( |
PROXYPOLICY * |
proxypolicy, |
|
|
unsigned char * |
policy, |
|
|
int |
length | |
|
) |
| | |
Sets the policy of the PROXYPOLICY.
- Parameters:
-
| proxypolicy | the proxy policy to set the policy of |
| policy | the policy to set it to |
| length | the length of the policy |
- Returns:
- 1 on success, 0 on error
unsigned char* PROXYPOLICY_get_policy |
( |
PROXYPOLICY * |
policy, |
|
|
int * |
length | |
|
) |
| | |
Gets the policy of a PROXYPOLICY.
- Parameters:
-
| policy | the PROXYPOLICY to get the policy of |
| length | the length of the returned policy - this value gets set by this function |
- Returns:
- the policy
int i2d_PROXYPOLICY |
( |
PROXYPOLICY * |
a, |
|
|
unsigned char ** |
pp | |
|
) |
| | |
Converts a PROXYPOLICY from its internal structure to a DER encoded form.
- Parameters:
-
| a | the PROXYPOLICY to convert |
| pp | the buffer to put the DER encoding in |
- Returns:
- the length of the DER encoding in bytes
Converts the PROXYPOLICY from its DER encoded form to an internal PROXYPOLICY structure.
- Parameters:
-
| a | the PROXYPOLICY struct to set |
| pp | the DER encoding to get the PROXYPOLICY from |
| length | the length of the DER encoding |
- Returns:
- the resulting PROXYPOLICY in its internal structure form - this variable has been allocated using _new routines, so it needs to be freed once its no longer used