Optim Data Privacy Providers  11.3.0
 All Data Structures Files Functions Variables Macros Groups Pages
Specific Parameters
Collaboration diagram for Specific Parameters:

Base values used by Email Defines

#define EMLOPERANDBASE   0x1986
 
#define EMLVALUEBASE   0x19A6
 

The following defines are associated with the usParameterID member of DP_INIT_OP_DEF structure.

#define ODPP_OPR_EML_FLAGS   EMLOPERANDBASE + 0
 
#define ODPP_OPR_EML_DOMAIN   EMLOPERANDBASE + 1
 
#define ODPP_OPR_EML_NAME1COL_INDEX   EMLOPERANDBASE + 2
 
#define ODPP_OPR_EML_NAME2COL_INDEX   EMLOPERANDBASE + 3
 
#define ODPP_OPR_EML_USERPRFX   EMLOPERANDBASE + 4
 
#define ODPP_OPR_EML_SEPARATOR   EMLOPERANDBASE + 5
 
#define ODPP_OPR_EML_HASHSEED   EMLOPERANDBASE + 6
 
#define ODPP_OPR_EML_HASHDOMAIN   EMLOPERANDBASE + 7
 
#define ODPP_OPR_EML_NAME1COL_NAME   EMLOPERANDBASE + 8
 
#define ODPP_OPR_EML_NAME2COL_NAME   EMLOPERANDBASE + 9
 

Values for ODPP_OPR_EML_FLAGS

#define ODPP_EML_FLAG_INITIAL   1
 
#define ODPP_EML_FLAG_LOWER   2
 
#define ODPP_EML_FLAG_UPPER   4
 
#define ODPP_EML_FLAG_HASH_ENABLED   8
 

Values for ODPP_OPR_EML_HASHDOMAIN

#define ODPP_EML_DOMAIN_KEEP   EMLVALUEBASE + 0
 
#define ODPP_EML_DOMAIN_REGISTERED   EMLVALUEBASE + 1
 
#define ODPP_EML_DOMAIN_UNREGISTERED   EMLVALUEBASE + 2
 

Detailed Description

Macro Definition Documentation

#define EMLOPERANDBASE   0x1986
  • Use:
    This is the Base value which is used by Email Parameter Defines.
  • Description:
    N/A
  • Optional:
    N/A
  • Exclusive:
    N/A
  • Inclusive:
    N/A
  • Specification Protocol:
    N/A
  • Example:
    N/A
#define ODPP_OPR_EML_FLAGS   EMLOPERANDBASE + 0
  • Use:
    This parameter is used to specify Email-specific flags to the masking algorithm.
  • Description:
    Email-specific flags can be specified using this parameter which will control the behaviour of the Service Provider. For example, flags can be specified to convert the resultant email address to uppercase or lower case.
  • Optional:
    Yes
  • Exclusive:
    N/A
  • Inclusive:
    N/A
  • Specification Protocol:
    The parameter is specified in the usParameterID member of the DP_INIT_OP_DEF structure during Provider_Init(). Its value is specified in the uiVal member of the DP_INIT_OP_DEF structure.

    Multiple flags can be specified by ORing them together as shown below:
    uiVal = <flag 1> | <flag 2> | ... | <flag n> ;
  • Example:
    • ODPP_OPR_EML_FLAGS = ODPP_EML_FLAG_UPPER
    • ODPP_OPR_EML_FLAGS = ODPP_EML_FLAG_INITIAL | ODPP_EML_FLAG_UPPER
#define ODPP_OPR_EML_DOMAIN   EMLOPERANDBASE + 1
  • Use:
    This parameter is used to specify the domain name for the resultant email address.
  • Description:
    The literal value of this parameter will be used as the domain name for the resultant email address. The domain name can be a maximum of 31 characters. If this parameter is not specified, the source domain name will be used for the resultant email address. If this parameter is specified, the source email address will not be validated and the supplied domain name will be used as the domain name for the resultant email address.
  • Optional:
    Yes
  • Specification Protocol:
    The parameter is specified in the usParameterID member of the DP_INIT_OP_DEF structure during Provider_Init(). The literal value is specified in the pParamVal member of the DP_INIT_OP_DEF structure. The caller must allocate memory for pParamVal.
  • Example:
    • ODPP_OPR_EML_DOMAIN = "sampledomain.com"
#define ODPP_OPR_EML_NAME1COL_INDEX   EMLOPERANDBASE + 2
  • Use:
    This parameter is used to specify the index of column name1col in the list of DP_FIELD_DEF structures.
  • Optional:
    Yes
  • Example:
    • ODPP_OPR_EML_NAME1COL_INDEX = 1
      Here the name1col column is the second element in the list of DP_FIELD_DEF structures.
#define ODPP_OPR_EML_NAME2COL_INDEX   EMLOPERANDBASE + 3
  • Use:
    This parameter is used to specify the index of column name2col in the list of DP_FIELD_DEF structures.
  • Optional:
    Yes
  • Example:
    • ODPP_OPR_EML_NAME2COL_INDEX = 2
      Here the name2col column is the third element in the list of DP_FIELD_DEF structures.
#define ODPP_OPR_EML_USERPRFX   EMLOPERANDBASE + 4
  • Use:
    This parameter is used to specify a literal prefix for the user name of the resultant email address.
  • Description:
    The value of this parameter is concatenated with a sequential number to form the user name of the resultant email address. The maximum size of the literal prefix is 512 characters.

    If parameters ODPP_OPR_EML_USERPRFX, ODPP_OPR_EML_NAME1COL_INDEX and ODPP_OPR_EML_NAME2COL_INDEX are not specified, the name will be formed by the literal "email" concatenated with a sequential number.

    Sequential numbers for user names are suffixes that begin with 1 and are incremented by 1.
  • Optional:
    Yes
  • Inclusive:
    N/A
  • Specification Protocol:
    The parameter is specified in the usParameterID member of the DP_INIT_OP_DEF structure during Provider_Init(). Its value is specified in the pParamVal member of the DP_INIT_OP_DEF structure. The caller must allocate memory for pParamVal.
  • Example:
    • ODPP_OPR_EML_USERPRFX = "sampleprefix"
#define ODPP_OPR_EML_SEPARATOR   EMLOPERANDBASE + 5
  • Use:
    This parameter is used to specify a separator for the name1col and name2col values.
  • Description:
    The separator specified using this parameter will be used to separate the name1col and name2col values.

    The valid values for this parameter are:
  • Optional:
    Yes.
    If this parameter is not specified, the name1col and name2col values will not have a separator.
  • Example:
    • ODPP_OPR_EML_SEPARATOR = ODPP_SEP_UNDERSCORE
#define ODPP_OPR_EML_HASHSEED   EMLOPERANDBASE + 6
  • Use:
    This parameter is used to specify a Seed value to be used for Hashing.
  • Description:
    This parameter specifies the seed value to be incorporated into the hashing of the source email address, and the source domain name. The seed can be any string value ranging from 1 to 31 characters in length.

    If parameter ODPP_OPR_EML_HASHDOMAIN is specified with value ODPP_EML_DOMAIN_UNREGISTERED, the source domain name and seed value is used to generate an alphanumeric domain name that is used for the resultant email address.

    If parameter ODPP_OPR_HASH_ALGORITHM is specified with value ODPP_HASH_ALGORITHM_SHA256, the seed value must be a numeric value in the range 0 to 2,000,000,000. If an exit is present, the HMAC key provided by the exit is used and the numeric seed value is ignored. In the absence of an exit, the numeric seed value is used as the HMAC key.
  • Optional:
    Yes
  • Specification Protocol:
    The parameter is specified in the usParameterID member of the DP_INIT_OP_DEF structure during Provider_Init(). Its value is specified in the pParamVal member of the DP_INIT_OP_DEF structure. The caller must allocate memory for pParamVal.
  • Example:
    • ODPP_OPR_EML_HASHSEED = "TestSeed"
#define ODPP_OPR_EML_HASHDOMAIN   EMLOPERANDBASE + 7
  • Use:
    This parameter is used to specify the domain name to be used for the resultant email address when hashing is enabled.
  • Description:
    This parameter supports the following options for the domain name of the resultant email address:
    • copy source domain name to the resultant email address
    • select a domain name from a list of registered email service providers
    • generate an alphanumeric domain name to be used for the resultant email address

    The value for this parameter is a C #define and can be one of the following:
  • Optional:
    Yes.
    If this parameter is not specified, by default the source domain name is copied to the resultant email address.
  • Example:
    • ODPP_OPR_EML_HASHDOMAIN = ODPP_EML_DOMAIN_REGISTERED
#define ODPP_OPR_EML_NAME1COL_NAME   EMLOPERANDBASE + 8
  • Use:
    This parameter is used to specify the name of column name1col in the list of DP_FIELD_DEF structures.
  • Optional:
    Yes
  • Example:
    • ODPP_OPR_EML_NAME1COL_NAME = "Name1Col"
#define ODPP_OPR_EML_NAME2COL_NAME   EMLOPERANDBASE + 9
  • Use:
    This parameter is used to specify the name of column name1col in the list of DP_FIELD_DEF structures.
  • Optional:
    Yes
  • Example:
    • ODPP_OPR_EML_NAME2COL_NAME = "Name2Col"
#define ODPP_EML_FLAG_INITIAL   1
  • Use:
    Use only the first character of the name1col value.
  • Optional:
    Yes
  • Specification Protocol:
    Parameter ODPP_OPR_EML_FLAGS is specified in the usParameterID member of the DP_INIT_OP_DEF structure and the flag value is specified in the uiVal member of the DP_INIT_OP_DEF structure during Provider_Init().

    Multiple flags can be specified by ORing them together as shown below:
    uiVal = <flag 1> | <flag 2> | ... | <flag n> ;
  • Example:
    • ODPP_OPR_EML_FLAGS = ODPP_EML_FLAG_INITIAL | ODPP_EML_FLAG_UPPER
#define ODPP_EML_FLAG_LOWER   2
  • Use:
    Convert the email address to lower case.
  • Optional:
    Yes
  • Inclusive:
    N/A
  • Specification Protocol:
    Parameter ODPP_OPR_EML_FLAGS is specified in the usParameterID member of the DP_INIT_OP_DEF structure and the flag value is specified in the uiVal member of the DP_INIT_OP_DEF structure during Provider_Init().

    Multiple flags can be specified by ORing them together as shown below:
    uiVal = <flag 1> | <flag 2> | ... | <flag n> ;
  • Example:
    • ODPP_OPR_EML_FLAGS = ODPP_EML_FLAG_LOWER
    • ODPP_OPR_EML_FLAGS = ODPP_EML_FLAG_INITIAL | ODPP_EML_FLAG_LOWER
#define ODPP_EML_FLAG_UPPER   4
  • Use:
    Convert the email address to uppercase.
  • Optional:
    Yes
  • Inclusive:
    N/A
  • Specification Protocol:
    Parameter ODPP_OPR_EML_FLAGS is specified in the usParameterID member of the DP_INIT_OP_DEF structure and the flag value is specified in the uiVal member of the DP_INIT_OP_DEF structure during Provider_Init().

    Multiple flags can be specified by ORing them together as shown below:
    uiVal = <flag 1> | <flag 2> | ... | <flag n> ;
  • Example:
    • ODPP_OPR_EML_FLAGS = ODPP_EML_FLAG_UPPER
    • ODPP_OPR_EML_FLAGS = ODPP_EML_FLAG_INITIAL | ODPP_EML_FLAG_UPPER
#define ODPP_EML_FLAG_HASH_ENABLED   8
  • Use:
    To enable the Email Hashing algorithm to generate repeatable values.
  • Description:
    When this flag is specified, the Hashing algorithm is used to generate repeatable email addresses. This flag CANNOT be specified with any other flags.

    This flag must be specified to use the following parameters:
  • Optional:
    Yes
  • Example:
    • ODPP_OPR_EML_FLAGS = ODPP_EML_FLAG_HASH_ENABLED
#define EMLVALUEBASE   0x19A6
  • Use:
    This is the Base value which is used by Email Parameter Value Defines.
  • Description:
    N/A
  • Optional:
    N/A
  • Exclusive:
    N/A
  • Inclusive:
    N/A
  • Specification Protocol:
    N/A
  • Example:
    N/A
#define ODPP_EML_DOMAIN_KEEP   EMLVALUEBASE + 0
  • Use:
    Copy source domain name to the resultant email address.
  • Description:
    When this value is specified for parameter ODPP_OPR_EML_HASHDOMAIN, the source domain name is copied to the resultant hashed email address. This is the default when hashing is enabled and parameter ODPP_OPR_EML_HASHDOMAIN is not specified.
  • Optional:
    N/A
  • Inclusive:
    N/A
  • Example:
    • ODPP_OPR_EML_HASHDOMAIN = ODPP_EML_DOMAIN_KEEP
#define ODPP_EML_DOMAIN_REGISTERED   EMLVALUEBASE + 1
  • Use:
    Select a domain name from a list of registered email service providers.
  • Description:
    When this value is specified for parameter ODPP_OPR_EML_HASHDOMAIN, the domain name for the resultant email address is selected from a list of registered email service providers.
  • Optional:
    N/A
  • Inclusive:
    N/A
  • Example:
    • ODPP_OPR_EML_HASHDOMAIN = ODPP_EML_DOMAIN_REGISTERED
#define ODPP_EML_DOMAIN_UNREGISTERED   EMLVALUEBASE + 2
  • Use:
    Generate an alphanumeric domain name to be used for the resultant email address.
  • Description:
    When this value is specified for parameter ODPP_OPR_EML_HASHDOMAIN, the source domain name and seed value is used to generate an alphanumeric domain name to be used for the resultant email address. The seed value can be specified using parameter ODPP_OPR_EML_HASHSEED.
  • Optional:
    N/A
  • Inclusive:
    N/A
  • Example:
    • ODPP_OPR_EML_HASHDOMAIN = ODPP_EML_DOMAIN_UNREGISTERED