## LassoLibRegisterNameIdentifierRequest LassoLibRegisterNameIdentifierRequest — <lib:RegisterNameIdentifierRequest> |

## Functions

LassoNode * | lasso_lib_register_name_identifier_request_new ()
LassoNode * | lasso_lib_register_name_identifier_request_new_full ()

## Types and Values

struct | LassoLibRegisterNameIdentifierRequest

## Description

Figure 15. Schema fragment for lib:RegisterNameIdentifierRequest

    <xs:element name="RegisterNameIdentifierRequest" type="RegisterNameIdentifierRequestType"/>
    <xs:complexType name="RegisterNameIdentifierRequestType">
      <xs:complexContent>
        <xs:extension base="samlp:RequestAbstractType">
          <xs:sequence>
            <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element ref="ProviderID"/>
            <xs:element ref="IDPProvidedNameIdentifier"/>
            <xs:element ref="SPProvidedNameIdentifier" minOccurs="0"/>
            <xs:element ref="OldProvidedNameIdentifier"/>
            <xs:element ref="RelayState" minOccurs="0"/>
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
    <xs:element name="IDPProvidedNameIdentifier" type="saml:NameIdentifierType"/>
    <xs:element name="SPProvidedNameIdentifier" type="saml:NameIdentifierType"/>
    <xs:element name="OldProvidedNameIdentifier" type="saml:NameIdentifierType"/>

    <xs:element name="ProviderID" type="md:entityIDType"/>
    <xs:element name="RelayState" type="xs:string"/>

## Functions

### lasso_lib_register_name_identifier_request_new ()

    LassoNode *
    lasso_lib_register_name_identifier_request_new
                                   (void);

Creates a new LassoLibRegisterNameIdentifierRequest object.

#### Returns

a newly created LassoLibRegisterNameIdentifierRequest object

### lasso_lib_register_name_identifier_request_new_full ()

    LassoNode *
    lasso_lib_register_name_identifier_request_new_full
                                   (const char *providerID,
                                    LassoSamlNameIdentifier *idpNameIdentifier,
                                    LassoSamlNameIdentifier *spNameIdentifier,
                                    LassoSamlNameIdentifier *oldNameIdentifier,
                                    LassoSignatureType sign_type,
                                    LassoSignatureMethod sign_method);

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

#### Parameters

providerID | the providerID of the requester |
idpNameIdentifier | a LassoSamlNameIdentifier object, giving the new idp provided name identifier |
spNameIdentifier | a LassoSamlNameIdentifier object, giving the new sp provided name identifier |
oldNameIdentifier | a LassoSamlNameIdentifier object, giving the old name identifier |
sign_type | a LassoSignatureType value |
sign_method | a LassoSignatureMethod value |

#### Returns

a newly created LassoLibRegisterNameIdentifierRequest object

## Types and Values

### struct LassoLibRegisterNameIdentifierRequest

    struct LassoLibRegisterNameIdentifierRequest {
    	LassoSamlpRequestAbstract parent;

    	/* <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/> */
    	GList *Extension; /* of xmlNode* */
    	/* <xs:element ref="ProviderID"/> */
    	char *ProviderID;
    	/* <xs:element ref="IDPProvidedNameIdentifier"/> */
    	LassoSamlNameIdentifier *IDPProvidedNameIdentifier;
    	/* <xs:element ref="SPProvidedNameIdentifier" minOccurs="0"/> */
    	LassoSamlNameIdentifier *SPProvidedNameIdentifier;
    	/* <xs:element ref="OldProvidedNameIdentifier"/> */
    	LassoSamlNameIdentifier *OldProvidedNameIdentifier;
    	/* <xs:element ref="RelayState" minOccurs="0"/> */
    	char *RelayState;
    };