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()
The SAMLv2 protocol defines 5 XML types which we need to map to
LassoNode objectes so thay can be serialized from XML and back into
XML.
ecp:RelayState
ecp:Request
ecp:Response
paos:Request
paso:Response
This patch addes these 5 new LassoNode's and updates the build
configuration to include them.
Signed-off-by: John Dennis <jdennis@redhat.com>
License: MIT
Instad of referring to an old FSF address, point the reader to the FSF
website where the latest licenses and addresses are published.
Signed-off-by: Simo Sorce <simo@redhat.com>
* bindings/bindings.py:
Allow to build constants using other constants (prefix string), the
constant type is retrieved from the prefix existing record.
* bindings/bindings.py:
parse idwsf_strings.h to get ID-WSF constants.
* bindings/utils.py:
add an is_rc check function, to check for 'error code' return type.
* bindings/perl/lang.py:
only raise errors for 'int' or 'gint' return type
* bindings/python/lang.py:
- always create a normal function binding.
- for functions starting with 'get' try to create a corresponding
property, but if a corresponding member already exists, fails, and
print a warning about getter function/member field clash.
- make type dispatching on return_type more explicite.
* bindings/bindings.py:
add possibility to skip generating bindings for structures to
overrides.xml.
parse element-type annotation /* of XXX */ for hashtable objects.
output to stderr warning about skipped objects.
parse idwsf_strings.h
* bindings/overrides.xml:
skip more ID-WSF 1.0 functions in java and perl.
skip structure LassoAuthentication.
* XS files is autogenerated using bindings/binding.py model of the
Lasso API. All constants are in the Lasso::Constants package, the
LASSO_ prefix is removed.
All classes are now Lasso::ClassName, field accessor also serves as
setters, i.e you can do this:
$name_id = Lasso::Saml2NameID::new();
$name_id->content('coin');
print $name_id->content;
Is still missing:
- a lot of test files,
- support for hashtables,
- and throwing exceptions when return code is non-zero.
* tools/api.py:
use parser from the binding generator to output a list of symbols
* bindings/bindings.py;
add private flags to not clobber 'private' fields of structures or
methods not exported in bindings like _get_type.
Bindings: in bindings.py, improve regular expression for declarations
Bindings: parse gobject-introspection annotation in return value
documentation, add cast to C calls when parameter type is const in java
binding, problem arise with const char ** arrays
* bindings/bindings.py
* bindings/utils.py:
add convenience function to treat arguments tuple:
(type,name,{annotations}).
introduce new argument options, fix that arguments are 3-tuple of the
form (type,name,annotations), where annotations is a dictionary.
Key of this dictionnary can be:
- optional, wheter the argument is necessary, it means it has a
default value.
- out, means that the pointer is a pointer of pointer, for bindings
that can return exceptions, it will be returned instead of the
integer error code, the only way to access error codes will be
exceptions.
- element-type, contained type of a list or an array,
- key-type, value-type, type of respectively the key and value of a
GHashTable.
- transfer, wheter a the callee(for arguments)/caller(for return
values) owns the values passed, it can be none,container(if the
callee/caller only owns the container not the contained value) or
full.
doc.parameters is now a 3-tuple of (attribute-name,
attribute-description, attribute-annotations) where
attribute-annotations is a string of the form '(option1)(option2
option-arguments) etc.'.
- add predicates for xml, list and time_t values. improve predicates
for cstring and const modifier.
* bindings/overrides.xml:
'out' arguments are not well supported for java, so skip functions
using them.
* bindings/java/lang.py bindings/php5/php_code.py
bindings/php5/wrapper_source.py bindings/python/lang.py:
- update language specifig binding generators for handling new
annotations.
- improve python method declaration, handle optional arguments with
default values, factorize this chode in two methods,
get_python_arg_decl and defval_to_python_value.
* bindings/python/tests/Makefile.am
bindings/python/tests/idwsf1_tests.py
bindings/python/tests/idwsf2_tests.py:
make test work with out of source build dir.
* lasso/xml/xml_idff.h:
this header file reference all id-ff 1.2 elements
* lasso/xml/xml_idwsf.h:
this header file reference all id-wsf 1.0 elements
* lasso/xml/saml-2.0/xml_saml2.h:
this header file reference all saml-2.0 elements
* bindings/bindings.py:
parsing of argument type is still not advanced enough, so in order to
remove spurious warnings, skip function directly during parsing just
before the treatment of function signature.
merging benjamin stuff and adding --enable-id-wsf when id-wsf is asked
Original author: Frederic Peters <fpeters@0d.be>
Date: 2008-03-25 18:23:46.535000+01:00
parse docstrings (such as the parsed form is available to all languages) and
format them as epydoc in the python binding
Original author: Frederic Peters <fpeters@0d.be>
Date: 2007-11-22 15:45:03.610000+01:00