- Home
- Download
- News
- Documentation

- FAQ
- Tutorial
- API reference
- Examples

- XML Digital Signature

- Online Verifier

- XML Encryption
- XML Canonicalization
- Reporting Bugs
- Mailing list
- Related
- Authors

XML Security Library Reference Manual
<<< Previous Page | Home | Up | Next Page >>>

# app

## Name

app --

## Synopsis

    int         xmlSecMSCryptoAppInit           (const char *config);
    int         xmlSecMSCryptoAppShutdown       (void);
    const char* xmlSecMSCryptoAppGetCertStoreName
                                                (void);
    int         xmlSecMSCryptoAppDefaultKeysMngrInit
                                                (xmlSecKeysMngrPtr mngr);
    int         xmlSecMSCryptoAppDefaultKeysMngrAdoptKey
                                                (xmlSecKeysMngrPtr mngr,
                                                 xmlSecKeyPtr key);
    int         xmlSecMSCryptoAppDefaultKeysMngrLoad
                                                (xmlSecKeysMngrPtr mngr,
                                                 const char *uri);
    int         xmlSecMSCryptoAppDefaultKeysMngrSave
                                                (xmlSecKeysMngrPtr mngr,
                                                 const char *filename,
                                                 xmlSecKeyDataType type);
    int         xmlSecMSCryptoAppKeysMngrCertLoad
                                                (xmlSecKeysMngrPtr mngr,
                                                 const char *filename,
                                                 xmlSecKeyDataFormat format,
                                                 xmlSecKeyDataType type);
    int         xmlSecMSCryptoAppKeysMngrCertLoadMemory
                                                (xmlSecKeysMngrPtr mngr,
                                                 const xmlSecByte *data,
                                                 xmlSecSize dataSize,
                                                 xmlSecKeyDataFormat format,
                                                 xmlSecKeyDataType type);
    xmlSecKeyPtr xmlSecMSCryptoAppKeyLoad       (const char *filename,
                                                 xmlSecKeyDataFormat format,
                                                 const char *pwd,
                                                 void *pwdCallback,
                                                 void *pwdCallbackCtx);
    xmlSecKeyPtr xmlSecMSCryptoAppKeyLoadMemory (const xmlSecByte *data,
                                                 xmlSecSize dataSize,
                                                 xmlSecKeyDataFormat format,
                                                 const char *pwd,
                                                 void *pwdCallback,
                                                 void *pwdCallbackCtx);
    xmlSecKeyPtr xmlSecMSCryptoAppPkcs12Load    (const char *filename,
                                                 const char *pwd,
                                                 void *pwdCallback,
                                                 void *pwdCallbackCtx);
    xmlSecKeyPtr xmlSecMSCryptoAppPkcs12LoadMemory
                                                (const xmlSecByte *data,
                                                 xmlSecSize dataSize,
                                                 const char *pwd,
                                                 void *pwdCallback,
                                                 void *pwdCallbackCtx);
    int         xmlSecMSCryptoAppKeyCertLoad    (xmlSecKeyPtr key,
                                                 const char *filename,
                                                 xmlSecKeyDataFormat format);
    int         xmlSecMSCryptoAppKeyCertLoadMemory
                                                (xmlSecKeyPtr key,
                                                 const xmlSecByte *data,
                                                 xmlSecSize dataSize,
                                                 xmlSecKeyDataFormat format);
    void*       xmlSecMSCryptoAppGetDefaultPwdCallback
                                                (void);

## Description

## Details

### xmlSecMSCryptoAppInit ()

    int         xmlSecMSCryptoAppInit           (const char *config);

General crypto engine initialization. This function is used by XMLSec command line utility and called before `xmlSecInit` function.

`config` : | the name of another then the default ms certificate store.
Returns : | 0 on success or a negative value otherwise.

### xmlSecMSCryptoAppShutdown ()

    int         xmlSecMSCryptoAppShutdown       (void);

General crypto engine shutdown. This function is used by XMLSec command line utility and called after `xmlSecShutdown` function.

Returns : | 0 on success or a negative value otherwise.

### xmlSecMSCryptoAppGetCertStoreName ()

    const char* xmlSecMSCryptoAppGetCertStoreName
                                                (void);

Gets the MS Crypto certs store name set by `xmlSecMSCryptoAppInit` function.

Returns : | the MS Crypto certs name used by xmlsec-mscrypto.

### xmlSecMSCryptoAppDefaultKeysMngrInit ()

    int         xmlSecMSCryptoAppDefaultKeysMngrInit
                                                (xmlSecKeysMngrPtr mngr);

Initializes `mngr` with simple keys store xmlSecSimpleKeysStoreId and a default MSCrypto crypto key data stores.

`mngr` : | the pointer to keys manager.
Returns : | 0 on success or a negative value otherwise.

### xmlSecMSCryptoAppDefaultKeysMngrAdoptKey ()

    int         xmlSecMSCryptoAppDefaultKeysMngrAdoptKey
                                                (xmlSecKeysMngrPtr mngr,
                                                 xmlSecKeyPtr key);

Adds `key` to the keys manager `mngr` created with xmlSecMSCryptoAppDefaultKeysMngrInit function.

`mngr` : | the pointer to keys manager.
`key` : | the pointer to key.
Returns : | 0 on success or a negative value otherwise.

### xmlSecMSCryptoAppDefaultKeysMngrLoad ()

    int         xmlSecMSCryptoAppDefaultKeysMngrLoad
                                                (xmlSecKeysMngrPtr mngr,
                                                 const char *uri);

Loads XML keys file from `uri` to the keys manager `mngr` created with xmlSecMSCryptoAppDefaultKeysMngrInit function.

`mngr` : | the pointer to keys manager.
`uri` : | the uri.
Returns : | 0 on success or a negative value otherwise.

### xmlSecMSCryptoAppDefaultKeysMngrSave ()

    int         xmlSecMSCryptoAppDefaultKeysMngrSave
                                                (xmlSecKeysMngrPtr mngr,
                                                 const char *filename,
                                                 xmlSecKeyDataType type);

Saves keys from `mngr` to XML keys file.

`mngr` : | the pointer to keys manager.
`filename` : | the destination filename.
`type` : | the type of keys to save (public/private/symmetric).
Returns : | 0 on success or a negative value otherwise.

### xmlSecMSCryptoAppKeysMngrCertLoad ()

    int         xmlSecMSCryptoAppKeysMngrCertLoad
                                                (xmlSecKeysMngrPtr mngr,
                                                 const char *filename,
                                                 xmlSecKeyDataFormat format,
                                                 xmlSecKeyDataType type);

Reads cert from `filename` and adds to the list of trusted or known untrusted certs in `store` (not implemented yet).

`mngr` : | the keys manager.
`filename` : | the certificate file.
`format` : | the certificate file format.
`type` : | the flag that indicates is the certificate in `filename` trusted or not.
Returns : | 0 on success or a negative value otherwise.

### xmlSecMSCryptoAppKeysMngrCertLoadMemory ()

    int         xmlSecMSCryptoAppKeysMngrCertLoadMemory
                                                (xmlSecKeysMngrPtr mngr,
                                                 const xmlSecByte *data,
                                                 xmlSecSize dataSize,
                                                 xmlSecKeyDataFormat format,
                                                 xmlSecKeyDataType type);

Reads cert from `data` and adds to the list of trusted or known untrusted certs in `store`.

`mngr` : | the keys manager.
`data` : | the binary certificate.
`dataSize` : | size of binary certificate (data)
`format` : | the certificate file format.
`type` : | the flag that indicates is the certificate in `filename` trusted or not.
Returns : | 0 on success or a negative value otherwise.

### xmlSecMSCryptoAppKeyLoad ()

    xmlSecKeyPtr xmlSecMSCryptoAppKeyLoad       (const char *filename,
                                                 xmlSecKeyDataFormat format,
                                                 const char *pwd,
                                                 void *pwdCallback,
                                                 void *pwdCallbackCtx);

Reads key from the a file.

`filename` : | the key filename.
`format` : | the key file format.
`pwd` : | the key file password.
`pwdCallback` : | the key password callback.
`pwdCallbackCtx` : | the user context for password callback.
Returns : | pointer to the key or NULL if an error occurs.

### xmlSecMSCryptoAppKeyLoadMemory ()

    xmlSecKeyPtr xmlSecMSCryptoAppKeyLoadMemory (const xmlSecByte *data,
                                                 xmlSecSize dataSize,
                                                 xmlSecKeyDataFormat format,
                                                 const char *pwd,
                                                 void *pwdCallback,
                                                 void *pwdCallbackCtx);

Reads key from the a file.

`data` : | the key binary data.
`dataSize` : | the key data size.
`format` : | the key format.
`pwd` : | the key password.
`pwdCallback` : | the key password callback.
`pwdCallbackCtx` : | the user context for password callback.
Returns : | pointer to the key or NULL if an error occurs.

### xmlSecMSCryptoAppPkcs12Load ()

    xmlSecKeyPtr xmlSecMSCryptoAppPkcs12Load    (const char *filename,
                                                 const char *pwd,
                                                 void *pwdCallback,
                                                 void *pwdCallbackCtx);

Reads key and all associated certificates from the PKCS12 file

`filename` : | the PKCS12 key filename.
`pwd` : | the PKCS12 file password.
`pwdCallback` : | the password callback.
`pwdCallbackCtx` : | the user context for password callback.
Returns : | pointer to the key or NULL if an error occurs.

### xmlSecMSCryptoAppPkcs12LoadMemory ()

    xmlSecKeyPtr xmlSecMSCryptoAppPkcs12LoadMemory
                                                (const xmlSecByte *data,
                                                 xmlSecSize dataSize,
                                                 const char *pwd,
                                                 void *pwdCallback,
                                                 void *pwdCallbackCtx);

Reads key and all associated certificates from the PKCS12 binary

`data` : | the binary PKCS12 key in data.
`dataSize` : | size of binary pkcs12 data
`pwd` : | the PKCS12 file password.
`pwdCallback` : | the password callback.
`pwdCallbackCtx` : | the user context for password callback.
Returns : | pointer to the key or NULL if an error occurs.

### xmlSecMSCryptoAppKeyCertLoad ()

    int         xmlSecMSCryptoAppKeyCertLoad    (xmlSecKeyPtr key,
                                                 const char *filename,
                                                 xmlSecKeyDataFormat format);

Reads the certificate from $`filename` and adds it to key.

`key` : | the pointer to key.
`filename` : | the certificate filename.
`format` : | the certificate file format.
Returns : | 0 on success or a negative value otherwise.

### xmlSecMSCryptoAppKeyCertLoadMemory ()

    int         xmlSecMSCryptoAppKeyCertLoadMemory
                                                (xmlSecKeyPtr key,
                                                 const xmlSecByte *data,
                                                 xmlSecSize dataSize,
                                                 xmlSecKeyDataFormat format);

Reads the certificate from $`data` and adds it to key.

`key` : | the pointer to key.
`data` : | the binary certificate.
`dataSize` : | size of certificate binary (data)
`format` : | the certificate file format.
Returns : | 0 on success or a negative value otherwise.

### xmlSecMSCryptoAppGetDefaultPwdCallback ()

    void*       xmlSecMSCryptoAppGetDefaultPwdCallback
                                                (void);

Gets default password callback.

<<< Previous Page | Home | Up | Next Page >>>
XML Security Library for MSCrypto API Reference. | certkeys

Aleksey Sanin