XML Security Library

LibXML2
LibXSLT
OpenSSL

app

Name

app -- Application functions implementation for NSS.

Synopsis

intxmlSecNssAppDefaultKeysMngrAdoptKey (xmlSecKeysMngrPtr mngr,
                                                         xmlSecKeyPtr key);
intxmlSecNssAppDefaultKeysMngrInit     (xmlSecKeysMngrPtr mngr);
intxmlSecNssAppDefaultKeysMngrLoad     (xmlSecKeysMngrPtr mngr,
                                                         const char *uri);
intxmlSecNssAppDefaultKeysMngrSave     (xmlSecKeysMngrPtr mngr,
                                                         const char *filename,
                                                         xmlSecKeyDataType type);
void *              xmlSecNssAppGetDefaultPwdCallback   (void);
intxmlSecNssAppInit                    (const char *config);
intxmlSecNssAppKeyCertLoad             (xmlSecKeyPtr key,
                                                         const char *filename,
                                                         xmlSecKeyDataFormat format);
intxmlSecNssAppKeyCertLoadMemory       (xmlSecKeyPtr key,
                                                         const xmlSecByte *data,
                                                         xmlSecSize dataSize,
                                                         xmlSecKeyDataFormat format);
intxmlSecNssAppKeyCertLoadSECItem      (xmlSecKeyPtr key,
                                                         SECItem *secItem,
                                                         xmlSecKeyDataFormat format);
xmlSecKeyPtr        xmlSecNssAppKeyFromCertLoadSECItem  (SECItem *secItem,
                                                         xmlSecKeyDataFormat format);
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);
intxmlSecNssAppKeysMngrCertLoad        (xmlSecKeysMngrPtr mngr,
                                                         const char *filename,
                                                         xmlSecKeyDataFormat format,
                                                         xmlSecKeyDataType type);
intxmlSecNssAppKeysMngrCertLoadMemory  (xmlSecKeysMngrPtr mngr,
                                                         const xmlSecByte *data,
                                                         xmlSecSize dataSize,
                                                         xmlSecKeyDataFormat format,
                                                         xmlSecKeyDataType type);
intxmlSecNssAppKeysMngrCertLoadSECItem (xmlSecKeysMngrPtr mngr,
                                                         SECItem *secItem,
                                                         xmlSecKeyDataFormat format,
                                                         xmlSecKeyDataType type);
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);
intxmlSecNssAppShutdown                (void);

Description

Application functions implementation for NSS.

Details

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.


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.


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.


xmlSecNssAppGetDefaultPwdCallback ()

void *              xmlSecNssAppGetDefaultPwdCallback   (void);

Gets default password callback.

Returns :

default password callback.


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.


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.


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.


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.


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.


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.