Top |
struct | xmlSecKeysMngr |
struct | xmlSecKeyStore |
#define | xmlSecKeyStoreIdUnknown |
struct | xmlSecKeyStoreKlass |
#define | xmlSecSimpleKeysStoreId |
xmlSecKeysMngrPtr
xmlSecKeysMngrCreate (void
);
Creates new keys manager. Caller is responsible for freeing it with xmlSecKeysMngrDestroy function.
void
xmlSecKeysMngrDestroy (xmlSecKeysMngrPtr mngr
);
Destroys keys manager created with xmlSecKeysMngrCreate function.
xmlSecKeyPtr xmlSecKeysMngrFindKey (xmlSecKeysMngrPtr mngr
,const xmlChar *name
,xmlSecKeyInfoCtxPtr keyInfoCtx
);
Lookups key in the keys manager keys store. The caller is responsible for destroying the returned key using xmlSecKeyDestroy method.
mngr |
the pointer to keys manager. |
|
name |
the desired key name. |
|
keyInfoCtx |
the pointer to <dsig:KeyInfo/> node processing context. |
xmlSecKeyPtr xmlSecKeysMngrFindKeyFromX509Data (xmlSecKeysMngrPtr mngr
,xmlSecKeyX509DataValuePtr x509Data
,xmlSecKeyInfoCtxPtr keyInfoCtx
);
Lookups key in the keys manager keys store. The caller is responsible for destroying the returned key using xmlSecKeyDestroy method.
mngr |
the pointer to keys manager. |
|
x509Data |
the X509 data to use for searching the keys. |
|
keyInfoCtx |
the pointer to <dsig:KeyInfo/> node processing context. |
int xmlSecKeysMngrAdoptKeysStore (xmlSecKeysMngrPtr mngr
,xmlSecKeyStorePtr store
);
Adopts keys store in the keys manager mngr
.
xmlSecKeyStorePtr
xmlSecKeysMngrGetKeysStore (xmlSecKeysMngrPtr mngr
);
Gets the keys store.
int xmlSecKeysMngrAdoptDataStore (xmlSecKeysMngrPtr mngr
,xmlSecKeyDataStorePtr store
);
Adopts data store in the keys manager.
xmlSecKeyDataStorePtr xmlSecKeysMngrGetDataStore (xmlSecKeysMngrPtr mngr
,xmlSecKeyDataStoreId id
);
Lookups the data store of given klass id
in the keys manager.
xmlSecKeyPtr (*xmlSecGetKeyCallback) (xmlNodePtr keyInfoNode
,xmlSecKeyInfoCtxPtr keyInfoCtx
);
Reads the <dsig:KeyInfo/> node keyInfoNode
and extracts the key.
keyInfoNode |
the pointer to <dsig:KeyInfo/> node. |
|
keyInfoCtx |
the pointer to <dsig:KeyInfo/> node processing context. |
xmlSecKeyPtr xmlSecKeysMngrGetKey (xmlNodePtr keyInfoNode
,xmlSecKeyInfoCtxPtr keyInfoCtx
);
Reads the <dsig:KeyInfo/> node keyInfoNode
and extracts the key.
keyInfoNode |
the pointer to <dsig:KeyInfo/> node. |
|
keyInfoCtx |
the pointer to <dsig:KeyInfo/> node processing context. |
xmlSecKeyStorePtr
xmlSecKeyStoreCreate (xmlSecKeyStoreId id
);
Creates new store of the specified klass klass
. Caller is responsible
for freeing the returned store by calling xmlSecKeyStoreDestroy function.
void
xmlSecKeyStoreDestroy (xmlSecKeyStorePtr store
);
Destroys the store created with xmlSecKeyStoreCreate function.
xmlSecKeyPtr xmlSecKeyStoreFindKey (xmlSecKeyStorePtr store
,const xmlChar *name
,xmlSecKeyInfoCtxPtr keyInfoCtx
);
Lookups key in the store. The caller is responsible for destroying the returned key using xmlSecKeyDestroy method.
store |
the pointer to keys store. |
|
name |
the desired key name. |
|
keyInfoCtx |
the pointer to <dsig:KeyInfo/> node processing context. |
xmlSecKeyPtr xmlSecKeyStoreFindKeyFromX509Data (xmlSecKeyStorePtr store
,xmlSecKeyX509DataValuePtr x509Data
,xmlSecKeyInfoCtxPtr keyInfoCtx
);
Lookups key in the store. The caller is responsible for destroying the returned key using xmlSecKeyDestroy method.
store |
the pointer to keys store. |
|
x509Data |
the X509 data to use for search. |
|
keyInfoCtx |
the pointer to <dsig:KeyInfo/> node processing context. |
#define xmlSecKeyStoreIsValid(store)
Macro. Returns 1 if store
is not NULL and store->id
is not NULL
or 0 otherwise.
#define xmlSecKeyStoreCheckId(store, storeId)
Macro. Returns 1 if store
is valid and store
's id is equal to storeId
.
#define xmlSecKeyStoreCheckSize(store, size)
Macro. Returns 1 if store
is valid and stores
's object has at least size
bytes.
int
(*xmlSecKeyStoreInitializeMethod) (xmlSecKeyStorePtr store
);
Keys store specific initialization method.
void
(*xmlSecKeyStoreFinalizeMethod) (xmlSecKeyStorePtr store
);
Keys store specific finalization (destroy) method.
xmlSecKeyPtr (*xmlSecKeyStoreFindKeyMethod) (xmlSecKeyStorePtr store
,const xmlChar *name
,xmlSecKeyInfoCtxPtr keyInfoCtx
);
Keys store specific find method. The caller is responsible for destroying the returned key using xmlSecKeyDestroy method.
xmlSecKeyPtr (*xmlSecKeyStoreFindKeyFromX509DataMethod) (xmlSecKeyStorePtr store
,xmlSecKeyX509DataValuePtr x509Data
,xmlSecKeyInfoCtxPtr keyInfoCtx
);
Keys store specific find method. The caller is responsible for destroying the returned key using xmlSecKeyDestroy method.
#define xmlSecKeyStoreKlassGetName(klass)
Macro. Returns store klass name.
int (*xmlSecSimpleKeysStoreAdoptKeyFunc) (xmlSecKeyStorePtr store
,xmlSecKeyPtr key
);
Adds key
to the store
. On success, the store
owns the key
.
xmlSecKeyStoreId
xmlSecSimpleKeysStoreGetKlass (void
);
The simple list based keys store klass.
int xmlSecSimpleKeysStoreAdoptKey (xmlSecKeyStorePtr store
,xmlSecKeyPtr key
);
Adds key
to the store
.
int xmlSecSimpleKeysStoreLoad (xmlSecKeyStorePtr store
,const char *uri
,xmlSecKeysMngrPtr keysMngr
);
Reads keys from an XML file.
int xmlSecSimpleKeysStoreLoad_ex (xmlSecKeyStorePtr store
,const char *uri
,xmlSecKeysMngrPtr keysMngr
,xmlSecSimpleKeysStoreAdoptKeyFunc adoptKeyFunc
);
Reads keys from an XML file.
int xmlSecSimpleKeysStoreSave (xmlSecKeyStorePtr store
,const char *filename
,xmlSecKeyDataType type
);
Writes keys from store
to an XML file.
xmlSecPtrListPtr
xmlSecSimpleKeysStoreGetKeys (xmlSecKeyStorePtr store
);
Gets list of keys from simple keys store.
struct xmlSecKeysMngr { xmlSecKeyStorePtr keysStore; xmlSecPtrList storesList; xmlSecGetKeyCallback getKey; };
The keys manager structure.
xmlSecKeyStorePtr |
the key store (list of keys known to keys manager). |
|
xmlSecPtrList |
the list of key data stores known to keys manager. |
|
xmlSecGetKeyCallback |
the callback used to read <dsig:KeyInfo/> node. |
struct xmlSecKeyStore { xmlSecKeyStoreId id; /* for the future */ void* reserved0; void* reserved1; };
The keys store.
#define xmlSecKeyStoreIdUnknown ((xmlSecKeyDataStoreId)NULL)
The "unknown" id.
struct xmlSecKeyStoreKlass { xmlSecSize klassSize; xmlSecSize objSize; /* data */ const xmlChar* name; /* constructors/destructor */ xmlSecKeyStoreInitializeMethod initialize; xmlSecKeyStoreFinalizeMethod finalize; /* key loopkup */ xmlSecKeyStoreFindKeyMethod findKey; xmlSecKeyStoreFindKeyFromX509DataMethod findKeyFromX509Data; /* for the future */ void* reserved0; };
The keys store id (klass).
xmlSecSize |
the store klass size. |
|
xmlSecSize |
the store obj size. |
|
the store's name. |
||
xmlSecKeyStoreInitializeMethod |
the store's initialization method. |
|
xmlSecKeyStoreFinalizeMethod |
the store's finalization (destroy) method. |
|
xmlSecKeyStoreFindKeyMethod |
the store's method to find key by key name. |
|
xmlSecKeyStoreFindKeyFromX509DataMethod |
the store's method to find key based on x509 data. |
|
reserved for the future. |