LassoLecp

LassoLecp — Liberty Enabled Client and Proxy Profile (ID-FF)

Functions

Types and Values

struct LassoLecp

Description

Functions

lasso_lecp_new ()

LassoLecp *
lasso_lecp_new (LassoServer *server);

Creates a new LassoLecp.

Parameters

server

the LassoServer

 

Returns

a newly created LassoLecp object; or NULL if an error occured


lasso_lecp_build_authn_request_envelope_msg ()

lasso_error_t
lasso_lecp_build_authn_request_envelope_msg
                               (LassoLecp *lecp);

Builds an enveloped authentication request message. Sets msg_body to that message.

Parameters

lecp

a LassoLecp

 

Returns

0 on success; or a negative value otherwise.


lasso_lecp_build_authn_request_msg ()

lasso_error_t
lasso_lecp_build_authn_request_msg (LassoLecp *lecp);

Builds an authentication request. The data for the sending of the request are stored in msg_url and msg_body (SOAP POST).

Parameters

lecp

a LassoLecp

 

Returns

0 on success; or a negative value otherwise.


lasso_lecp_build_authn_response_msg ()

lasso_error_t
lasso_lecp_build_authn_response_msg (LassoLecp *lecp);

Builds the lecp authentication response message (base64). Sets msg_body to that message.

Parameters

lecp

a LassoLecp

 

Returns

0 on success; or a negative value otherwise.


lasso_lecp_build_authn_response_envelope_msg ()

lasso_error_t
lasso_lecp_build_authn_response_envelope_msg
                               (LassoLecp *lecp);

Builds the enveloped LECP authentication response message (SOAP message). Sets msg_body to that message.

Parameters

lecp

a LassoLecp

 

Returns

0 on success; or a negative value otherwise.


lasso_lecp_destroy ()

void
lasso_lecp_destroy (LassoLecp *lecp);

Destroys a LassoLecp object

Parameters

lecp

a LassoLecp

 

lasso_lecp_init_authn_request ()

lasso_error_t
lasso_lecp_init_authn_request (LassoLecp *lecp,
                               const char *remote_providerID);

Initializes a new lib:AuthnRequest.

Parameters

lecp

a LassoLecp

 

remote_providerID

the providerID of the identity provider. When NULL, the first known identity provider is used.

 

Returns

0 on success; or a negative value otherwise.


lasso_lecp_process_authn_request_msg ()

lasso_error_t
lasso_lecp_process_authn_request_msg (LassoLecp *lecp,
                                      const char *authn_request_msg);

Processes received authentication request, checks it is signed correctly, checks if requested protocol profile is supported, etc.

Parameters

lecp

a LassoLecp

 

authn_request_msg

the authentication request received

 

Returns

0 on success; or a negative value otherwise.


lasso_lecp_process_authn_request_envelope_msg ()

lasso_error_t
lasso_lecp_process_authn_request_envelope_msg
                               (LassoLecp *lecp,
                                const char *request_msg);

Processes received enveloped authentication request, extracts the authentication request out of it.

Parameters

lecp

a LassoLecp

 

request_msg

the enveloped authentication request received

 

Returns

0 on success; or a negative value otherwise.


lasso_lecp_process_authn_response_envelope_msg ()

lasso_error_t
lasso_lecp_process_authn_response_envelope_msg
                               (LassoLecp *lecp,
                                const char *response_msg);

Processes received enveloped authentication response, extracts the authentication response out of it and stores it in response .

Parameters

lecp

a LassoLecp

 

response_msg

the enveloped authentication response received

 

Returns

0 on success; or a negative value otherwise.

Types and Values

struct LassoLecp

struct LassoLecp {
	LassoLogin parent;

	LassoLibAuthnRequestEnvelope *authnRequestEnvelope;
	LassoLibAuthnResponseEnvelope *authnResponseEnvelope;
	char *assertionConsumerServiceURL;
};