Home Download News Documentation FAQ Tutorial API reference Examples XML Digital Signature Online Verifier XML Encryption XML Canonicalization Reporting Bugs Mailing list Related Authors
# app ## Name app -- Application functions implementation for NSS. ## Synopsis
    int                 xmlSecNssAppInit                    (const char *config);
    int                 xmlSecNssAppShutdown                (void);
    int                 xmlSecNssAppDefaultKeysMngrInit     (xmlSecKeysMngrPtr mngr);
    int                 xmlSecNssAppDefaultKeysMngrAdoptKey (xmlSecKeysMngrPtr mngr,
                                                             xmlSecKeyPtr key);
    int                 xmlSecNssAppDefaultKeysMngrLoad     (xmlSecKeysMngrPtr mngr,
                                                             const char *uri);
    int                 xmlSecNssAppDefaultKeysMngrSave     (xmlSecKeysMngrPtr mngr,
                                                             const char *filename,
                                                             xmlSecKeyDataType type);
    int                 xmlSecNssAppKeysMngrCertLoad        (xmlSecKeysMngrPtr mngr,
                                                             const char *filename,
                                                             xmlSecKeyDataFormat format,
                                                             xmlSecKeyDataType type);
    int                 xmlSecNssAppKeysMngrCertLoadMemory  (xmlSecKeysMngrPtr mngr,
                                                             const xmlSecByte *data,
                                                             xmlSecSize dataSize,
                                                             xmlSecKeyDataFormat format,
                                                             xmlSecKeyDataType type);
    int                 xmlSecNssAppKeysMngrCertLoadSECItem (xmlSecKeysMngrPtr mngr,
                                                             SECItem *secItem,
                                                             xmlSecKeyDataFormat format,
                                                             xmlSecKeyDataType type);
    xmlSecKeyPtr        xmlSecNssAppKeyLoad                 (const char *filename,
                                                             xmlSecKeyDataFormat format,
                                                             const char *pwd,
                                                             void *pwdCallback,
                                                             void *pwdCallbackCtx);
    xmlSecKeyPtr        xmlSecNssAppKeyLoadMemory           (const xmlSecByte *data,
                                                             xmlSecSize dataSize,
                                                             xmlSecKeyDataFormat format,
                                                             const char *pwd,
                                                             void *pwdCallback,
                                                             void *pwdCallbackCtx);
    xmlSecKeyPtr        xmlSecNssAppKeyLoadSECItem          (SECItem *secItem,
                                                             xmlSecKeyDataFormat format,
                                                             const char *pwd,
                                                             void *pwdCallback,
                                                             void *pwdCallbackCtx);
    xmlSecKeyPtr        xmlSecNssAppPkcs12Load              (const char *filename,
                                                             const char *pwd,
                                                             void *pwdCallback,
                                                             void *pwdCallbackCtx);
    xmlSecKeyPtr        xmlSecNssAppPkcs12LoadMemory        (const xmlSecByte *data,
                                                             xmlSecSize dataSize,
                                                             const char *pwd,
                                                             void *pwdCallback,
                                                             void *pwdCallbackCtx);
    xmlSecKeyPtr        xmlSecNssAppPkcs12LoadSECItem       (SECItem *secItem,
                                                             const char *pwd,
                                                             void *pwdCallback,
                                                             void *pwdCallbackCtx);
    int                 xmlSecNssAppKeyCertLoad             (xmlSecKeyPtr key,
                                                             const char *filename,
                                                             xmlSecKeyDataFormat format);
    int                 xmlSecNssAppKeyCertLoadMemory       (xmlSecKeyPtr key,
                                                             const xmlSecByte *data,
                                                             xmlSecSize dataSize,
                                                             xmlSecKeyDataFormat format);
    int                 xmlSecNssAppKeyCertLoadSECItem      (xmlSecKeyPtr key,
                                                             SECItem *secItem,
                                                             xmlSecKeyDataFormat format);
    xmlSecKeyPtr        xmlSecNssAppKeyFromCertLoadSECItem  (SECItem *secItem,
                                                             xmlSecKeyDataFormat format);
    void*               xmlSecNssAppGetDefaultPwdCallback   (void);
## Description Application functions implementation for NSS. ## Details ### xmlSecNssAppInit ()
    int                 xmlSecNssAppInit                    (const char *config);
General crypto engine initialization. This function is used by XMLSec command line utility and called before `xmlSecInit` function.
`config` : | the path to NSS database files.
Returns : | 0 on success or a negative value otherwise.
### xmlSecNssAppShutdown ()
    int                 xmlSecNssAppShutdown                (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.
### xmlSecNssAppDefaultKeysMngrInit ()
    int                 xmlSecNssAppDefaultKeysMngrInit     (xmlSecKeysMngrPtr mngr);
Initializes `mngr` with NSS keys store xmlSecNssKeysStoreId and a default NSS crypto key data stores.
`mngr` : | the pointer to keys manager.
Returns : | 0 on success or a negative value otherwise.
### xmlSecNssAppDefaultKeysMngrAdoptKey ()
    int                 xmlSecNssAppDefaultKeysMngrAdoptKey (xmlSecKeysMngrPtr mngr,
                                                             xmlSecKeyPtr key);
Adds `key` to the keys manager `mngr` created with xmlSecNssAppDefaultKeysMngrInit function.
`mngr` : | the pointer to keys manager.
`key` : | the pointer to key.
Returns : | 0 on success or a negative value otherwise.
### xmlSecNssAppDefaultKeysMngrLoad ()
    int                 xmlSecNssAppDefaultKeysMngrLoad     (xmlSecKeysMngrPtr mngr,
                                                             const char *uri);
Loads XML keys file from `uri` to the keys manager `mngr` created with xmlSecNssAppDefaultKeysMngrInit function.
`mngr` : | the pointer to keys manager.
`uri` : | the uri.
Returns : | 0 on success or a negative value otherwise.
### xmlSecNssAppDefaultKeysMngrSave ()
    int                 xmlSecNssAppDefaultKeysMngrSave     (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.
### xmlSecNssAppKeysMngrCertLoad ()
    int                 xmlSecNssAppKeysMngrCertLoad        (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`
`mngr` : | the pointer to keys manager.
`filename` : | the certificate file.
`format` : | the certificate file format (PEM or DER).
`type` : | the certificate type (trusted/untrusted).
Returns : | 0 on success or a negative value otherwise.
### xmlSecNssAppKeysMngrCertLoadMemory ()
    int                 xmlSecNssAppKeysMngrCertLoadMemory  (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 pointer to keys manager.
`data` : | the key binary data.
`dataSize` : | the key binary data size.
`format` : | the certificate format (PEM or DER).
`type` : | the certificate type (trusted/untrusted).
Returns : | 0 on success or a negative value otherwise.
### xmlSecNssAppKeysMngrCertLoadSECItem ()
    int                 xmlSecNssAppKeysMngrCertLoadSECItem (xmlSecKeysMngrPtr mngr,
                                                             SECItem *secItem,
                                                             xmlSecKeyDataFormat format,
                                                             xmlSecKeyDataType type);
Reads cert from `secItem` and adds to the list of trusted or known untrusted certs in `store`
`mngr` : | the pointer to keys manager.
`secItem` : | the pointer to SECItem.
`format` : | the certificate format (PEM or DER).
`type` : | the certificate type (trusted/untrusted).
Returns : | 0 on success or a negative value otherwise.
### xmlSecNssAppKeyLoad ()
    xmlSecKeyPtr        xmlSecNssAppKeyLoad                 (const char *filename,
                                                             xmlSecKeyDataFormat format,
                                                             const char *pwd,
                                                             void *pwdCallback,
                                                             void *pwdCallbackCtx);
Reads key from 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.
### xmlSecNssAppKeyLoadMemory ()
    xmlSecKeyPtr        xmlSecNssAppKeyLoadMemory           (const xmlSecByte *data,
                                                             xmlSecSize dataSize,
                                                             xmlSecKeyDataFormat format,
                                                             const char *pwd,
                                                             void *pwdCallback,
                                                             void *pwdCallbackCtx);
Reads key from a binary `data`.
`data` : | the key binary data.
`dataSize` : | the key binary data size.
`format` : | the key data format.
`pwd` : | the key data2 password.
`pwdCallback` : | the key password callback.
`pwdCallbackCtx` : | the user context for password callback.
Returns : | pointer to the key or NULL if an error occurs.
### xmlSecNssAppKeyLoadSECItem ()
    xmlSecKeyPtr        xmlSecNssAppKeyLoadSECItem          (SECItem *secItem,
                                                             xmlSecKeyDataFormat format,
                                                             const char *pwd,
                                                             void *pwdCallback,
                                                             void *pwdCallbackCtx);
Reads key from a file
`secItem` : | the pointer to sec item.
`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.
### xmlSecNssAppPkcs12Load ()
    xmlSecKeyPtr        xmlSecNssAppPkcs12Load              (const char *filename,
                                                             const char *pwd,
                                                             void *pwdCallback,
                                                             void *pwdCallbackCtx);
Reads key and all associated certificates from the PKCS12 file. For uniformity, call xmlSecNssAppKeyLoad instead of this function. Pass in format=xmlSecKeyDataFormatPkcs12.
`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.
### xmlSecNssAppPkcs12LoadMemory ()
    xmlSecKeyPtr        xmlSecNssAppPkcs12LoadMemory        (const xmlSecByte *data,
                                                             xmlSecSize dataSize,
                                                             const char *pwd,
                                                             void *pwdCallback,
                                                             void *pwdCallbackCtx);
Reads key and all associated certificates from the PKCS12 binary data. For uniformity, call xmlSecNssAppKeyLoad instead of this function. Pass in format=xmlSecKeyDataFormatPkcs12.
`data` : | the key binary data.
`dataSize` : | the key binary data size.
`pwd` : | the PKCS12 password.
`pwdCallback` : | the password callback.
`pwdCallbackCtx` : | the user context for password callback.
Returns : | pointer to the key or NULL if an error occurs.
### xmlSecNssAppPkcs12LoadSECItem ()
    xmlSecKeyPtr        xmlSecNssAppPkcs12LoadSECItem       (SECItem *secItem,
                                                             const char *pwd,
                                                             void *pwdCallback,
                                                             void *pwdCallbackCtx);
Reads key and all associated certificates from the PKCS12 SECItem. For uniformity, call xmlSecNssAppKeyLoad instead of this function. Pass in format=xmlSecKeyDataFormatPkcs12.
`secItem` : | the `SECItem` object.
`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.
### xmlSecNssAppKeyCertLoad ()
    int                 xmlSecNssAppKeyCertLoad             (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.
### xmlSecNssAppKeyCertLoadMemory ()
    int                 xmlSecNssAppKeyCertLoadMemory       (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 key binary data.
`dataSize` : | the key binary data size.
`format` : | the certificate format.
Returns : | 0 on success or a negative value otherwise.
### xmlSecNssAppKeyCertLoadSECItem ()
    int                 xmlSecNssAppKeyCertLoadSECItem      (xmlSecKeyPtr key,
                                                             SECItem *secItem,
                                                             xmlSecKeyDataFormat format);
Reads the certificate from `secItem` and adds it to key
`key` : | the pointer to key.
`secItem` : | the pointer to SECItem.
`format` : | the certificate format.
Returns : | 0 on success or a negative value otherwise.
### xmlSecNssAppKeyFromCertLoadSECItem ()
    xmlSecKeyPtr        xmlSecNssAppKeyFromCertLoadSECItem  (SECItem *secItem,
                                                             xmlSecKeyDataFormat format);
Loads public key from cert.
`secItem` : | the `SECItem` object.
`format` : | the cert format.
Returns : | pointer to key or NULL if an error occurs.
### xmlSecNssAppGetDefaultPwdCallback ()
    void*               xmlSecNssAppGetDefaultPwdCallback   (void);
Gets default password callback.
Returns : | default password callback.