x509: XML Security Library Reference Manual

Home Download GitHub News Documentation FAQ Tutorial API reference Examples XML Digital Signature XML Encryption XML Canonicalization Reporting Bugs Mailing list Related Authors
## x509 x509 — X509 certificates implementation for Microsoft Crypto API. |
## Stability Level Stable, unless otherwise indicated ## Functions
xmlSecKeyDataId | xmlSecMSCryptoKeyDataX509GetKlass ()
PCCERT_CONTEXT | xmlSecMSCryptoKeyDataX509GetKeyCert ()
int | xmlSecMSCryptoKeyDataX509AdoptKeyCert ()
int | xmlSecMSCryptoKeyDataX509AdoptCert ()
PCCERT_CONTEXT | xmlSecMSCryptoKeyDataX509GetCert ()
xmlSecSize | xmlSecMSCryptoKeyDataX509GetCertsSize ()
int | xmlSecMSCryptoKeyDataX509AdoptCrl ()
PCCRL_CONTEXT | xmlSecMSCryptoKeyDataX509GetCrl ()
xmlSecSize | xmlSecMSCryptoKeyDataX509GetCrlsSize ()
xmlSecKeyDataId | xmlSecMSCryptoKeyDataRawX509CertGetKlass ()
xmlSecKeyDataStoreId | xmlSecMSCryptoX509StoreGetKlass ()
int | xmlSecMSCryptoX509StoreAdoptCert ()
int | xmlSecMSCryptoX509StoreAdoptKeyStore ()
int | xmlSecMSCryptoX509StoreAdoptTrustedStore ()
int | xmlSecMSCryptoX509StoreAdoptUntrustedStore ()
void | xmlSecMSCryptoX509StoreEnableSystemTrustedCerts ()
## Types and Values
#define | xmlSecMSCryptoKeyDataX509Id
#define | xmlSecMSCryptoKeyDataRawX509CertId
#define | xmlSecMSCryptoX509StoreId
## Description ## Functions ### xmlSecMSCryptoKeyDataX509GetKlass ()
    xmlSecKeyDataId
    xmlSecMSCryptoKeyDataX509GetKlass (void);
The MSCrypto X509 key data klass (http://www.w3.org/TR/xmldsig-core/sec-X509Data). #### Returns the X509 data klass. ### xmlSecMSCryptoKeyDataX509GetKeyCert ()
    PCCERT_CONTEXT
    xmlSecMSCryptoKeyDataX509GetKeyCert (xmlSecKeyDataPtr data);
Gets the certificate from which the key was extracted. #### Parameters
data | the pointer to X509 key data. |
#### Returns the key's certificate or NULL if key data was not used for key extraction or an error occurs. ### xmlSecMSCryptoKeyDataX509AdoptKeyCert ()
    int
    xmlSecMSCryptoKeyDataX509AdoptKeyCert (xmlSecKeyDataPtr data,
                                           PCCERT_CONTEXT cert);
Sets the key's certificate in `data` . #### Parameters
data | the pointer to X509 key data. |
cert | the pointer to MSCRYPTO X509 certificate. |
#### Returns 0 on success or a negative value if an error occurs. ### xmlSecMSCryptoKeyDataX509AdoptCert ()
    int
    xmlSecMSCryptoKeyDataX509AdoptCert (xmlSecKeyDataPtr data,
                                        PCCERT_CONTEXT cert);
Adds certificate to the X509 key data. #### Parameters
data | the pointer to X509 key data. |
cert | the pointer to MSCRYPTO X509 certificate. |
#### Returns 0 on success or a negative value if an error occurs. ### xmlSecMSCryptoKeyDataX509GetCert ()
    PCCERT_CONTEXT
    xmlSecMSCryptoKeyDataX509GetCert (xmlSecKeyDataPtr data,
                                      xmlSecSize pos);
Gets a certificate from X509 key data. #### Parameters
data | the pointer to X509 key data. |
pos | the desired certificate position. |
#### Returns the pointer to certificate or NULL if `pos` is larger than the number of certificates in `data` or an error occurs. ### xmlSecMSCryptoKeyDataX509GetCertsSize ()
    xmlSecSize
    xmlSecMSCryptoKeyDataX509GetCertsSize (xmlSecKeyDataPtr data);
Gets the number of certificates in `data` . #### Parameters
data | the pointer to X509 key data. |
#### Returns te number of certificates in `data` . ### xmlSecMSCryptoKeyDataX509AdoptCrl ()
    int
    xmlSecMSCryptoKeyDataX509AdoptCrl (xmlSecKeyDataPtr data,
                                       PCCRL_CONTEXT crl);
Adds CRL to the X509 key data. #### Parameters
data | the pointer to X509 key data. |
crl | the pointer to MSCrypto X509 CRL. |
#### Returns 0 on success or a negative value if an error occurs. ### xmlSecMSCryptoKeyDataX509GetCrl ()
    PCCRL_CONTEXT
    xmlSecMSCryptoKeyDataX509GetCrl (xmlSecKeyDataPtr data,
                                     xmlSecSize pos);
Gets a CRL from X509 key data. #### Parameters
data | the pointer to X509 key data. |
pos | the desired CRL position. |
#### Returns the pointer to CRL or NULL if `pos` is larger than the number of CRLs in `data` or an error occurs. ### xmlSecMSCryptoKeyDataX509GetCrlsSize ()
    xmlSecSize
    xmlSecMSCryptoKeyDataX509GetCrlsSize (xmlSecKeyDataPtr data);
Gets the number of CRLs in `data` . #### Parameters
data | the pointer to X509 key data. |
#### Returns te number of CRLs in `data` . ### xmlSecMSCryptoKeyDataRawX509CertGetKlass ()
    xmlSecKeyDataId
    xmlSecMSCryptoKeyDataRawX509CertGetKlass
                                   (void);
The raw X509 certificates key data klass. #### Returns raw X509 certificates key data klass. ### xmlSecMSCryptoX509StoreGetKlass ()
    xmlSecKeyDataStoreId
    xmlSecMSCryptoX509StoreGetKlass (void);
The MSCrypto X509 certificates key data store klass. #### Returns pointer to MSCrypto X509 certificates key data store klass. ### xmlSecMSCryptoX509StoreAdoptCert ()
    int
    xmlSecMSCryptoX509StoreAdoptCert (xmlSecKeyDataStorePtr store,
                                      PCCERT_CONTEXT cert,
                                      xmlSecKeyDataType type);
Adds trusted (root) or untrusted certificate to the store. #### Parameters
store | the pointer to X509 key data store klass. |
cert | the pointer to PCCERT_CONTEXT X509 certificate. |
type | the certificate type (trusted/untrusted). |
#### Returns 0 on success or a negative value if an error occurs. ### xmlSecMSCryptoX509StoreAdoptKeyStore ()
    int
    xmlSecMSCryptoX509StoreAdoptKeyStore (xmlSecKeyDataStorePtr store,
                                          HCERTSTORE keyStore);
Adds `keyStore` to the list of key stores. #### Parameters
store | the pointer to X509 key data store klass. |
keyStore | the pointer to keys store. |
#### Returns 0 on success or a negative value if an error occurs. ### xmlSecMSCryptoX509StoreAdoptTrustedStore ()
    int
    xmlSecMSCryptoX509StoreAdoptTrustedStore
                                   (xmlSecKeyDataStorePtr store,
                                    HCERTSTORE trustedStore);
Adds `trustedStore` to the list of trusted certs stores. #### Parameters
store | the pointer to X509 key data store klass. |
trustedStore | the pointer to certs store. |
#### Returns 0 on success or a negative value if an error occurs. ### xmlSecMSCryptoX509StoreAdoptUntrustedStore ()
    int
    xmlSecMSCryptoX509StoreAdoptUntrustedStore
                                   (xmlSecKeyDataStorePtr store,
                                    HCERTSTORE untrustedStore);
Adds `trustedStore` to the list of un-trusted certs stores. #### Parameters
store | the pointer to X509 key data store klass. |
untrustedStore | the pointer to certs store. |
#### Returns 0 on success or a negative value if an error occurs. ### xmlSecMSCryptoX509StoreEnableSystemTrustedCerts ()
    void
    xmlSecMSCryptoX509StoreEnableSystemTrustedCerts
                                   (xmlSecKeyDataStorePtr store,
                                    int val);
Enables/disables the system trusted certs. #### Parameters
store | the pointer to X509 key data store klass. |
val | the enable/disable flag |
## Types and Values ### xmlSecMSCryptoKeyDataX509Id
    #define             xmlSecMSCryptoKeyDataX509Id
The MSCrypto X509 data klass. ### xmlSecMSCryptoKeyDataRawX509CertId
    #define             xmlSecMSCryptoKeyDataRawX509CertId
The MSCrypto raw X509 certificate klass. ### xmlSecMSCryptoX509StoreId
    #define             xmlSecMSCryptoX509StoreId
The MSCrypto X509 store klass.