## SOAP Binding utility function for ID-WSF 2.0

SOAP Binding utility function for ID-WSF 2.0

## Functions

char * | lasso_soap_envelope_sb2_get_provider_id ()
const char * | lasso_soap_envelope_sb2_get_redirect_request_url ()
LassoIdWsf2Sb2TargetIdentity * | lasso_soap_envelope_sb2_get_target_identity_header ()
LassoIdWsf2Sb2UserInteractionHeader * | lasso_soap_envelope_get_sb2_user_interaction_header ()

## Description

## Functions

### lasso_soap_envelope_sb2_get_provider_id ()

    char *
    lasso_soap_envelope_sb2_get_provider_id
                                   (LassoSoapEnvelope *soap_envelope);

Return the providerID contained in the sb2:Sender header.

#### Parameters

soap_envelope | a LassoSoapEnvelope object |

#### Returns

the providerID string or NULL if no sb2:Sender header is present.

### lasso_soap_envelope_sb2_get_redirect_request_url ()

    const char *
    lasso_soap_envelope_sb2_get_redirect_request_url
                                   (LassoSoapEnvelope *soap_envelope);

Return the redirect request URL from the sb2:RedirectRequest SOAP Fault detail.

The WSC MUST verify that this URL belong to the WSP. You can do this by comparing the domain with the one in the `LassoProfile.msg_url` field

The WSC MUST redirect the User Agent to this URL with a GET or POST request. It MUST add a parameter named ReturnToURL giving the URL where the WSP will send the User Agent after the interaction. It MAY add an IDP parameter indicating to the WSP how to authenticate the principal if no preexisting session with the User Agent exists

The WSP must check that the ReturnToURL belon to the WSP, by using the providerID URL for example.

After the interaction the WSC must redirect the User Agent to the ReturnToURL URL adding a parameter named ResendMessage. If ResendMessage is 0 or false, it means that the principal refused to continue the process. Any other value means that the prinicpal accepted and so the WSC can try again its request.

In order to succeed the request need to refer to the SOAP Fault response containing the RedirectRequest element. See `lasso_soap_envelope_get_relates_to()`, and LassoWsAddrAttributedURI.

#### Parameters

soap_envelope | a LassoSoapEnvelope object |

#### Returns

the redirect URL string or NULL if no sb2:RedirectRequest detail is present.

[transfer none][allow-none]

### lasso_soap_envelope_sb2_get_target_identity_header ()

    LassoIdWsf2Sb2TargetIdentity *
    lasso_soap_envelope_sb2_get_target_identity_header
                                   (LassoSoapEnvelope *soap_envelope);

Return the first sb2:TargetIdentity header.

#### Parameters

soap_envelope | a LassoSoapEnvelope object. |

#### Returns

the first LassoIdWsf2Sb2TargetIdentity object found in the headers of the `soap_envelope` , or NULL if none is found.

[transfer none]

### lasso_soap_envelope_get_sb2_user_interaction_header ()

    LassoIdWsf2Sb2UserInteractionHeader *
    lasso_soap_envelope_get_sb2_user_interaction_header
                                   (LassoSoapEnvelope *soap_envelope,
                                    gboolean create);