Four new accesors:
lasso_samlp2_extensions_get_any
lasso_samlp2_extensions_set_any
lasso_samlp2_extensions_get_attributes
lasso_samlp2_extensions_set_attributes
The two new pseudo field are fully supported in the python binding.
node = lasso.Samlp2Extensions()
node.any = '<test>ok</test>'
node.attributes = {'{http://entrouvert.org/}attribute1': 'value'}
print node.dump()
Libxml stopped exposing the internal of the xmlOutputBuffer structure;
it was replace by proper use of the API and of the xmlBuffer structure.
There could be regression for older version of libxml as some functions
appeared in recent version of libxml; but the reference API document
does not give any introduction date for functions so it's hard to be
sure.
Some use case ask for passing simple libxml content node (i.e just an
UTF-8 string) when a method argument or a field of the xmlNode* type.
This commit add a static method in bindings/utils.c named
lasso_string_fragment_to_xmlnode which does this transform by trying to
parse an XML document then by trying to parse a well balanced XML
fragment of only one node (if there is more than one node such as in the
string " xxx <tag/> yyy ", we free the node list and return NULL).
* it seems that PyImport_ImportModule is not deterministic. Sometimes it
returns True for modules which we know are present ('logging').
Importing 'sys' first seems to make 'logging' accessible (complete
cargo cult programming).
* There is now two paths to get a logger in the python binding:
- first try to get an objet from lasso.logger
- if it doesn't exist or is None, the try logging.getLogger('lasso')
* use utils.h macros to manipulate fields.
* use utils.py function to filter variables, argument and return types.
* finish support of hashtables of strings for php5 and python.
* bindings/pyhton/wrapper_top.c (set_hashtable_of_pygobject):
second argument (int*ppos) of PyDict_Next must be reinitialized to
zero before each traversal (see Python C API
http://docs.python.org/c-api/dict.html).
Patch from Iban Rodríguez of the Desarrollo de Producto Electrónico,
Spain.
* lots of files: Explicitely set all field of initialized structures,
in order to remove -Wno-missing-field-initilizers from needed
compiler options when using -Wall -Wextra.
This code permit to set flags, separated by commas, space,
tabulations, or colons. This flags activates debug functions like,
suppressing validations of signatures or print debugging message about
deallocations.
The new flags are defined in /lasso/debug.h they can be set using an
environment variable named LASSO_FLAG or a function named
lasso_set_flag.
There are two flags currently:
- verify-signature:
To deactivate it, pass 'no-verify-signature' inside LASSO_DEBUG.
It desactivate signature verification, inside two functions:
lasso_query_verify_signature and lasso_provider_verify_signature.
- memory-debug:
It enabled reporting of memory deallocation inside generic memory
dellaocator for LassoNode objects and also in bindings.
- lasso/xml/xml.c: do not free a null hash table pointer.