LassoLibAuthnRequestEnvelope

## LassoLibAuthnRequestEnvelope LassoLibAuthnRequestEnvelope — <lib:AuthnRequestEnvelope> |

## Synopsis

    struct              LassoLibAuthnRequestEnvelope;
    LassoLibAuthnRequestEnvelope * lasso_lib_authn_request_envelope_new
                                                            (void);
    LassoLibAuthnRequestEnvelope * lasso_lib_authn_request_envelope_new_full
                                                            (LassoLibAuthnRequest *authnRequest,
                                                             char *providerID,
                                                             char *assertionConsumerServiceURL);

## Description

Figure 4. Schema fragment for lib:AuthnRequestEnvelope

    <xs:element name="AuthnRequestEnvelope" type="AuthnRequestEnvelopeType"/>
    <xs:complexType name="AuthnRequestEnvelopeType">
      <xs:complexContent>
        <xs:extension base="RequestEnvelopeType">
          <xs:sequence>
            <xs:element ref="AuthnRequest"/>
            <xs:element ref="ProviderID"/>
            <xs:element name="ProviderName" type="xs:string" minOccurs="0"/>
            <xs:element name="AssertionConsumerServiceURL" type="xs:anyURI"/>
            <xs:element ref="IDPList" minOccurs="0"/>
            <xs:element name="IsPassive" type="xs:boolean" minOccurs="0"/>
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="RequestEnvelopeType">
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
    <xs:element name="IDPList" type="IDPListType"/>
    <xs:complexType name="IDPListType">
      <xs:sequence>
        <xs:element ref="IDPEntries"/>
        <xs:element ref="GetComplete" minOccurs="0"/>
      </xs:sequence>
    </xs:complexType>
    <xs:complexType name="ResponseEnvelopeType">
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>

## Details

### struct LassoLibAuthnRequestEnvelope

    struct LassoLibAuthnRequestEnvelope {
    	LassoNode parent;

    	/* <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/> */
    	GList *Extension; /* of xmlNode* */
    	/* <xs:element ref="AuthnRequest"/> */
    	LassoLibAuthnRequest *AuthnRequest;
    	/* <xs:element ref="ProviderID"/> */
    	char *ProviderID;
    	/* <xs:element name="ProviderName" type="xs:string" minOccurs="0"/> */
    	char *ProviderName;
    	/* <xs:element name="AssertionConsumerServiceURL" type="xs:anyURI"/> */
    	char *AssertionConsumerServiceURL;
    	/* <xs:element ref="IDPList" minOccurs="0"/> */
    	LassoLibIDPList *IDPList;
    	/* <xs:element name="IsPassive" type="xs:boolean" minOccurs="0"/> */
    	gboolean IsPassive;
    };

### lasso_lib_authn_request_envelope_new ()

    LassoLibAuthnRequestEnvelope * lasso_lib_authn_request_envelope_new
                                                            (void);

Creates a new LassoLibAuthnRequestEnvelope object.

Returns : | a newly created LassoLibAuthnRequestEnvelope object

### lasso_lib_authn_request_envelope_new_full ()

    LassoLibAuthnRequestEnvelope * lasso_lib_authn_request_envelope_new_full
                                                            (LassoLibAuthnRequest *authnRequest,
                                                             char *providerID,
                                                             char *assertionConsumerServiceURL);

Creates a new LassoLibAuthnRequestEnvelope object and initializes it with the parameters.

`authnRequest` : | the LassoLibAuthnRequest to envelop
`providerID` : | service provider ID
`assertionConsumerServiceURL` : | assertion consumer service URL on the service provider
Returns : | a newly created LassoLibAuthnRequestEnvelope object