fix type parameters from const char to const xmlChar. add function to build response

This commit is contained in:
Nicolas Clapies 2004-03-30 08:55:37 +00:00
parent 54aaf688c6
commit ad962a15da
8 changed files with 137 additions and 132 deletions

View File

@ -1,28 +1,23 @@
#include <lasso/protocols/federation_termination_notification.h>
xmlChar *lasso_build_url_encoded_message_federationTerminationNotification(LassoNode *request)
{
}
LassoNode *lasso_build_federationTerminationNotification(const char *metadata,
LassoNode *nameIdentifier,
const char *consent)
LassoNode *lasso_build_federationTerminationNotification(const xmlChar *providerID,
LassoNode *nameIdentifier,
const xmlChar *consent)
{
LassoNode *notification;
notification = lasso_lib_federation_termination_notification_new();
lasso_samlp_request_abstract_set_requestID(LASSO_SAMLP_REQUEST_ABSTRACT(notification),
(const xmlChar *)lasso_build_unique_id(32));
(const xmlChar *)lasso_build_unique_id(32));
lasso_samlp_request_abstract_set_minorVersion(LASSO_SAMLP_REQUEST_ABSTRACT(notification),
lassoLibMinorVersion);
lassoLibMinorVersion);
lasso_samlp_request_abstract_set_issueInstance(LASSO_SAMLP_REQUEST_ABSTRACT(notification),
lasso_get_current_time());
lasso_get_current_time());
lasso_samlp_request_abstract_set_majorVersion(LASSO_SAMLP_REQUEST_ABSTRACT(notification),
lassoLibMajorVersion);
lassoLibMajorVersion);
lasso_lib_federation_termination_notification_set_providerID(LASSO_LIB_FEDERATION_TERMINATION_NOTIFICATION(notification), "badproviderid.com"); // FIXME
lasso_lib_federation_termination_notification_set_providerID(LASSO_LIB_FEDERATION_TERMINATION_NOTIFICATION(notification), providerID);
lasso_lib_federation_termination_notification_set_nameIdentifier(LASSO_LIB_FEDERATION_TERMINATION_NOTIFICATION(notification), nameIdentifier);

View File

@ -28,10 +28,8 @@ e Place, Suite 330, Boston, MA 02111-1307 USA
#include <lasso/lasso.h>
xmlChar *lasso_build_url_encoded_message_federationTerminationNotification(LassoNode *);
LassoNode *lasso_build_federationTerminationNotification(const char *metadata,
LassoNode *nameIdentifier,
const char *consent);
LassoNode *lasso_build_federationTerminationNotification(const xmlChar *providerID,
LassoNode *nameIdentifier,
const xmlChar *consent);
#endif /* __FEDERATION_TERMINATION_NOTIFICATION_H__ */

View File

@ -1,41 +1,38 @@
#include <lasso/protocols/logout.h>
xmlChar *lasso_build_url_encoded_message_logoutRequest(LassoNode *request)
{
}
LassoNode *lasso_build_logoutRequest(const char *metadata,
LassoNode *nameIdentifier,
const char *sessionIndex,
const char *relayState,
const char *consent)
LassoNode *lasso_build_logoutRequest(const xmlChar *providerID,
LassoNode *nameIdentifier,
const xmlChar *sessionIndex,
const xmlChar *relayState,
const xmlChar *consent)
{
LassoNode *request;
request = lasso_lib_logout_request_new();
lasso_samlp_request_abstract_set_requestID(LASSO_SAMLP_REQUEST_ABSTRACT(request),
(const xmlChar *)lasso_build_unique_id(32));
(const xmlChar *)lasso_build_unique_id(32));
lasso_samlp_request_abstract_set_minorVersion(LASSO_SAMLP_REQUEST_ABSTRACT(request),
lassoLibMinorVersion);
lassoLibMinorVersion);
lasso_samlp_request_abstract_set_issueInstance(LASSO_SAMLP_REQUEST_ABSTRACT(request),
lasso_get_current_time());
lasso_get_current_time());
lasso_samlp_request_abstract_set_majorVersion(LASSO_SAMLP_REQUEST_ABSTRACT(request),
lassoLibMajorVersion);
lassoLibMajorVersion);
lasso_lib_logout_request_set_providerID(LASSO_LIB_LOGOUT_REQUEST(request),
"badproviderid.com"); // FIXME
providerID);
lasso_lib_logout_request_set_nameIdentifier(LASSO_LIB_LOGOUT_REQUEST(request), nameIdentifier);
lasso_lib_logout_request_set_nameIdentifier(LASSO_LIB_LOGOUT_REQUEST(request),
nameIdentifier);
if(sessionIndex){
lasso_lib_logout_request_set_sessionIndex(LASSO_LIB_LOGOUT_REQUEST(request), sessionIndex);
lasso_lib_logout_request_set_sessionIndex(LASSO_LIB_LOGOUT_REQUEST(request),
sessionIndex);
}
if(relayState){
lasso_lib_logout_request_set_relayState(LASSO_LIB_LOGOUT_REQUEST(request),
relayState);
relayState);
}
if(consent){
@ -46,31 +43,26 @@ LassoNode *lasso_build_logoutRequest(const char *metadata,
}
xmlChar *lasso_build_url_encoded_message_logoutResponse(LassoNode *response)
{
}
LassoNode *lasso_build_logoutResponse(LassoNode *request,
const char *statusCodeValue,
const char *relayState)
const xmlChar *providerID,
const xmlChar *statusCodeValue,
const xmlChar *relayState)
{
LassoNode *response, *ss, *ssc;
response = lasso_lib_logout_response_new();
lasso_samlp_response_abstract_set_responseID(LASSO_SAMLP_RESPONSE_ABSTRACT(response),
(const xmlChar *)lasso_build_unique_id(32));
(const xmlChar *)lasso_build_unique_id(32));
lasso_samlp_response_abstract_set_minorVersion(LASSO_SAMLP_RESPONSE_ABSTRACT(response),
lassoLibMinorVersion);
lassoLibMinorVersion);
lasso_samlp_response_abstract_set_majorVersion(LASSO_SAMLP_RESPONSE_ABSTRACT(response),
lassoLibMajorVersion);
lassoLibMajorVersion);
lasso_samlp_response_abstract_set_issueInstance(LASSO_SAMLP_RESPONSE_ABSTRACT(response),
lasso_get_current_time());
lasso_get_current_time());
lasso_lib_status_response_set_providerID(LASSO_LIB_STATUS_RESPONSE(response),
"badproviderid.com"); // FIXME
providerID);
ss = lasso_samlp_status_new();
ssc = lasso_samlp_status_code_new();
@ -79,7 +71,8 @@ LassoNode *lasso_build_logoutResponse(LassoNode *request,
lasso_samlp_response_set_status(LASSO_SAMLP_RESPONSE(response), LASSO_SAMLP_STATUS(ss));
if(relayState){
lasso_lib_status_response_set_relayState(LASSO_LIB_STATUS_RESPONSE(response), relayState);
lasso_lib_status_response_set_relayState(LASSO_LIB_STATUS_RESPONSE(response),
relayState);
}
return(response);

View File

@ -3,18 +3,15 @@
#include <lasso/lasso.h>
xmlChar *lasso_build_url_encoded_message_logoutRequest(LassoNode *);
LassoNode *lasso_build_logoutRequest(const xmlChar *providerID,
LassoNode *nameIdentifier,
const xmlChar *sessionIndex,
const xmlChar *relayState,
const xmlChar *consent);
LassoNode *lasso_build_logoutRequest(const char *metadata,
LassoNode *nameIdentifier,
const char *sessionIndex,
const char *relayState,
const char *consent);
xmlChar *lasso_build_url_encoded_message_logoutResponse(LassoNode *);
LassoNode *lasso_build_logoutResponse(LassoNode *request,
const char*codeValue,
const char*relayState);
LassoNode *lasso_build_logoutResponse(LassoNode *request,
const xmlChar *providerID,
const xmlChar *codeValue,
const xmlChar *relayState);
#endif /* __LOGOUT_H__ */

View File

@ -1,78 +1,67 @@
#include <lasso/protocols/register_name_identifier.h>
xmlChar *lasso_build_url_encoded_message_registerNameIdentifierRequest(LassoNode *request)
{
}
LassoNode *lasso_build_registerNameIdentifierRequest(const char *metadata,
LassoNode *idpProvidedNameIdentifer,
LassoNode *spProvidedNameIdentifier,
LassoNode *oldProvidedNameIdentifier,
const char *relayState)
LassoNode *lasso_build_registerNameIdentifierRequest(const xmlChar *providerID,
LassoNode *idpProvidedNameIdentifer,
LassoNode *spProvidedNameIdentifier,
LassoNode *oldProvidedNameIdentifier,
const xmlChar *relayState)
{
LassoNode *request;
request = lasso_lib_register_name_identifier_request_new();
lasso_samlp_request_abstract_set_requestID(LASSO_SAMLP_REQUEST_ABSTRACT(request),
(const xmlChar *)lasso_build_unique_id(32));
(const xmlChar *)lasso_build_unique_id(32));
lasso_samlp_request_abstract_set_minorVersion(LASSO_SAMLP_REQUEST_ABSTRACT(request),
lassoLibMinorVersion);
lassoLibMinorVersion);
lasso_samlp_request_abstract_set_issueInstance(LASSO_SAMLP_REQUEST_ABSTRACT(request),
lasso_get_current_time());
lasso_get_current_time());
lasso_samlp_request_abstract_set_majorVersion(LASSO_SAMLP_REQUEST_ABSTRACT(request),
lassoLibMajorVersion);
lassoLibMajorVersion);
lasso_lib_register_name_identifier_request_set_providerID(LASSO_LIB_REGISTER_NAME_IDENTIFIER_REQUEST(
request),
"badproviderid.com"); // FIXME
lasso_lib_register_name_identifier_request_set_providerID(LASSO_LIB_REGISTER_NAME_IDENTIFIER_REQUEST(request), providerID);
lasso_lib_register_name_identifier_request_set_idp_provided_name_identifier(LASSO_LIB_REGISTER_NAME_IDENTIFIER_REQUEST(request), idpProvidedNameIdentifer);
lasso_lib_register_name_identifier_request_set_sp_provided_name_identifier(LASSO_LIB_REGISTER_NAME_IDENTIFIER_REQUEST(request), spProvidedNameIdentifier);
lasso_lib_register_name_identifier_request_set_old_provided_name_identifier(LASSO_LIB_REGISTER_NAME_IDENTIFIER_REQUEST(request), oldProvidedNameIdentifier);
lasso_lib_register_name_identifier_request_set_old_provided_name_identifier(LASSO_LIB_REGISTER_NAME_IDENTIFIER_REQUEST(request), oldProvidedNameIdentifier);
if(relayState){
lasso_lib_register_name_identifier_request_set_relayState(LASSO_LIB_REGISTER_NAME_IDENTIFIER_REQUEST(request), relayState);
lasso_lib_register_name_identifier_request_set_relayState(LASSO_LIB_REGISTER_NAME_IDENTIFIER_REQUEST(request), relayState);
}
return(request);
}
xmlChar *lasso_build_url_encoded_message_registerNameIdentifierResponse(LassoNode *response)
{
}
LassoNode *lasso_build_registerNameIdentifierResponse(LassoNode *response,
const char *statusCodeValue,
const char *relayState)
LassoNode *lasso_build_registerNameIdentifierResponse(LassoNode *request,
const xmlChar *providerID,
const xmlChar *statusCodeValue,
const xmlChar *relayState)
{
LassoNode *response, *ss, *ssc;
response = lasso_lib_register_name_identifier_response_new();
lasso_samlp_response_abstract_set_responseID(LASSO_SAMLP_RESPONSE_ABSTRACT(response),
(const xmlChar *)lasso_build_unique_id(32));
(const xmlChar *)lasso_build_unique_id(32));
lasso_samlp_response_abstract_set_minorVersion(LASSO_SAMLP_RESPONSE_ABSTRACT(response),
lassoLibMinorVersion);
lassoLibMinorVersion);
lasso_samlp_response_abstract_set_majorVersion(LASSO_SAMLP_RESPONSE_ABSTRACT(response),
lassoLibMajorVersion);
lassoLibMajorVersion);
lasso_samlp_response_abstract_set_issueInstance(LASSO_SAMLP_RESPONSE_ABSTRACT(response),
lasso_get_current_time());
lasso_get_current_time());
lasso_lib_status_response_set_providerID(LASSO_LIB_STATUS_RESPONSE(response),
"badproviderid.com"); // FIXME
providerID);
ss = lasso_samlp_status_new();
ssc = lasso_samlp_status_code_new();
lasso_samlp_status_code_set_value(LASSO_SAMLP_STATUS_CODE(ssc), statusCodeValue);
lasso_samlp_status_set_statusCode(LASSO_SAMLP_STATUS(ss), LASSO_SAMLP_STATUS_CODE(ssc));
lasso_samlp_response_set_status(LASSO_SAMLP_RESPONSE(response), LASSO_SAMLP_STATUS(ss));
if(relayState){
lasso_lib_status_response_set_relayState(LASSO_LIB_STATUS_RESPONSE(response), relayState);
}

View File

@ -3,19 +3,15 @@
#include <lasso/lasso.h>
xmlChar *lasso_build_url_encoded_message_registerNameIdentifierRequest(LassoNode *);
LassoNode *lasso_build_registerNameIdentifierRequest(const char *metadata,
LassoNode *idpProvidedNameIdentifer,
LassoNode *spProvidedNameIdentifier,
LassoNode *oldProvidedNameIdentifier,
const char *relayState);
xmlChar *lasso_build_url_encoded_message_registerNameIdentifierResponse(LassoNode *);
LassoNode *lasso_build_registerNameIdentifierResponse(LassoNode *request,
const char*codeValue,
const char*relayState);
LassoNode *lasso_build_registerNameIdentifierRequest(const xmlChar *providerID,
LassoNode *idpProvidedNameIdentifer,
LassoNode *spProvidedNameIdentifier,
LassoNode *oldProvidedNameIdentifier,
const xmlChar *relayState);
LassoNode *lasso_build_registerNameIdentifierResponse(LassoNode *request,
const xmlChar *providerID,
const xmlChar *codeValue,
const xmlChar *relayState);
#endif /* __REGISTER_NAME_IDENTIFIER_H__ */

View File

@ -1,11 +1,5 @@
#include <lasso/protocols/single_sign_on_and_federation.h>
xmlChar *lasso_build_url_encoded_message_authnRequest(LassoNode *request)
{
xmlChar *authority = "https://idpprovider.com";
xmlChar *query;
}
LassoNode *lasso_build_authnRequest(const xmlChar *providerID,
const xmlChar *nameIDPolicy,
const xmlChar *isPassive,
@ -20,7 +14,7 @@ LassoNode *lasso_build_authnRequest(const xmlChar *providerID,
const xmlChar *consent)
{
LassoNode *request;
// build AuthnRequest class
request = lasso_lib_authn_request_new();
@ -32,34 +26,73 @@ LassoNode *lasso_build_authnRequest(const xmlChar *providerID,
lasso_get_current_time());
lasso_samlp_request_abstract_set_majorVersion(LASSO_SAMLP_REQUEST_ABSTRACT(request),
lassoLibMajorVersion);
lasso_lib_authn_request_set_providerID(LASSO_LIB_AUTHN_REQUEST(request),
providerID);
if(nameIDPolicy){
lasso_lib_authn_request_set_nameIDPolicy(LASSO_LIB_AUTHN_REQUEST(request), nameIDPolicy);
}
if(isPassive){
lasso_lib_authn_request_set_isPassive(LASSO_LIB_AUTHN_REQUEST(request), isPassive);
}
if(forceAuthn){
lasso_lib_authn_request_set_forceAuthn(LASSO_LIB_AUTHN_REQUEST(request), forceAuthn);
}
if(assertionConsumerServiceID){
lasso_lib_authn_request_set_assertionConsumerServiceID(LASSO_LIB_AUTHN_REQUEST(request),
assertionConsumerServiceID);
}
if(relayState!=NULL){
lasso_lib_authn_request_set_relayState(LASSO_LIB_AUTHN_REQUEST(request), relayState);
}
if(consent!=NULL){
lasso_lib_authn_request_set_consent(LASSO_LIB_AUTHN_REQUEST(request), consent);
}
return(request);
}
LassoNode *lasso_build_authnResponse(LassoNode *request,
const xmlChar *providerID)
{
LassoNode *response;
response = lasso_lib_authn_response_new();
lasso_samlp_response_abstract_set_responseID(LASSO_SAMLP_RESPONSE_ABSTRACT(response),
(const xmlChar *)lasso_build_unique_id(32));
lasso_samlp_request_abstract_set_majorVersion(LASSO_SAMLP_REQUEST_ABSTRACT(response),
lassoLibMajorVersion);
lasso_samlp_request_abstract_set_minorVersion(LASSO_SAMLP_REQUEST_ABSTRACT(response),
lassoLibMinorVersion);
lasso_samlp_request_abstract_set_issueInstance(LASSO_SAMLP_REQUEST_ABSTRACT(response),
lasso_get_current_time());
return(response);
}
LassoNode *lasso_build_response(LassoNode *request,
const xmlChar *providerID)
{
LassoNode *response;
response = lasso_samlp_response_new();
lasso_samlp_response_abstract_set_responseID(LASSO_SAMLP_RESPONSE_ABSTRACT(response),
(const xmlChar *)lasso_build_unique_id(32));
lasso_samlp_request_abstract_set_majorVersion(LASSO_SAMLP_REQUEST_ABSTRACT(response),
lassoSamlMajorVersion);
lasso_samlp_request_abstract_set_minorVersion(LASSO_SAMLP_REQUEST_ABSTRACT(response),
lassoSamlMinorVersion);
lasso_samlp_request_abstract_set_issueInstance(LASSO_SAMLP_REQUEST_ABSTRACT(response),
lasso_get_current_time());
return(response);
}

View File

@ -2,8 +2,7 @@
#define SINGLE_SIGN_ON_AND_FEDERATION_H
#include <lasso/lasso.h>
xmlChar *lasso_build_url_encoded_message_authnRequest(LassoNode *);
#include <glib.h>
LassoNode *lasso_build_authnRequest(const xmlChar *providerID,
const xmlChar *nameIDPolicy,
@ -18,4 +17,9 @@ LassoNode *lasso_build_authnRequest(const xmlChar *providerID,
const xmlChar **idpList,
const xmlChar *consent);
LassoNode *lasso_build_authnResponse(LassoNode *request,
const xmlChar *providerID);
LassoNode *lasso_build_response(LassoNode *request,
const xmlChar *providerID);
#endif