/** * xmlSecShutdown: * * Clean ups the XML Security Library. * * Returns 0 on success or a negative value otherwise. */ int xmlSecShutdown(void) { int res = 0; #ifndef XMLSEC_NO_XKMS xmlSecXkmsServerRequestIdsShutdown(); xmlSecXkmsRespondWithIdsShutdown(); #endif /* XMLSEC_NO_XKMS */ xmlSecTransformIdsShutdown(); xmlSecKeyDataIdsShutdown(); #ifndef XMLSEC_NO_CRYPTO_DYNAMIC_LOADING if(xmlSecCryptoDLShutdown() < 0) { xmlSecErr_a_ignorar5(XMLSEC_ERRORS_HERE, NULL, "xmlSecCryptoDLShutdown", XMLSEC_ERRORS_R_XMLSEC_FAILED, XMLSEC_ERRORS_NO_MESSAGE); res = -1; } #endif /* XMLSEC_NO_CRYPTO_DYNAMIC_LOADING */ xmlSecIOShutdown(); xmlSecErrorsShutdown(); return(res); }
PyObject *xmlsec_KeyDataIdsShutdown(PyObject *self, PyObject *args) { xmlSecKeyDataIdsShutdown(); Py_INCREF(Py_None); return (Py_None); }