Writing a distinguished name program for clients of enterprise beans

Considerations common to all user-replaceable programs

Note that the comments contained in General notes about user-replaceable programs apply to this section.

Use the distinguished name user-replaceable program, DFHEJDNX, to supply the distinguished name of a client of an enterprise bean, when the client has not presented an X.509 certificate containing a name.

DFHEJDNX is invoked when an IIOP client which doesn’t have a secure sockets layer (SSL) X.509 certificate issues a getname call. DFHEJDNX returns a string representation of the distinguished name.

CICS® supplies a sample version of DFHEJDNX, which you can use as the basis of your own customized program. Your customized program must also be called DFHEJDNX.

On invocation, CICS passes DFHEJDNX the following parameters in a communications area:

ejdn_parameter_list_length
A binary halfword containing the length of this parameter list.
ejdn_parameter_list_eyecatcher
A 14-byte character string containing an "eyecatcher" ('>DFHEJDNX_PARM') to identify this parameter list in dumps and traces.
ejdn_parameter_list_version
A binary halfword containing the version number of this parameter list. For CICS TS for z/OS®, Version 3.1, the version number is zero.
ejdn_parameter_list_flags
A binary halfword reserved for indicator flags. Currently, no indicator flags are defined.
ejdn_distinguished_name_ptr
A pointer to a 512-character work area in which DFHEJDNX can build the distinguished name to be assigned to the client.

The distinguished name returned by DFHEJDNX must be an EBCDIC null-delimited character string in the format proposed by RFC 2253, Lightweight Directory Access Protocol: UTF-8 String Representation of Distinguished Names. It must be encoded in EBCDIC code page 1047.

ejdn_distinguished_name_len
A binary fullword that, on input, contains the length of the workarea pointed to by ejdn_distinguished_name_ptr. Before returning, DFHEJDNX must place in this field the length of the distinguished name it has built.
ejdn_userid_ptr
A pointer to the client’s userid.
ejdn_userid_len
A binary fullword containing the length of the client’s userid.
ejdn_common_name_ptr
A pointer to the proposed common name of the client, derived from the username associated with the client’s userid in the external security manager’s database.
ejdn_common_name_len
A binary fullword containing the length of the client’s common name.
ejdn_title_ptr
A pointer to the proposed title of the client, derived from the title in the X.509 certificate associated with the CorbaServer.
ejdn_title_len
A binary fullword containing the length of the client’s title.
ejdn_email_address_ptr
A pointer to the proposed e-mail address of the client, derived from the e-mail address in the (extended) X.509 certificate associated with the CorbaServer.
ejdn_email_address_len
A binary fullword containing the length of the client’s e-mail address.
ejdn_organizational_unit_ptr
A pointer to the proposed organizational unit of the client, derived from the organizational unit in the X.509 certificate associated with the CorbaServer.
ejdn_organizational_unit_len
A binary fullword containing the length of the client’s organizational unit.
ejdn_organization_ptr
A pointer to the proposed organization of the client, derived from the organization in the X.509 certificate associated with the CorbaServer.
ejdn_organization_len
A binary fullword containing the length of the client’s organization.
ejdn_locality_ptr
A pointer to the proposed locality of the client, derived from the locality in the X.509 certificate associated with the CorbaServer.
ejdn_locality_len
A binary fullword containing the length of the client’s locality.
ejdn_state_or_province_ptr
A pointer to the proposed state or province of the client, derived from the state or province (if any) in the X.509 certificate associated with the CorbaServer.
ejdn_state_or_province_len
A binary fullword containing the length of the client’s state or province.
ejdn_country_ptr
A pointer to the proposed country of the client, derived from the country in the X.509 certificate associated with the CorbaServer.
ejdn_country_len
A binary fullword containing the length of the client’s country.
Note:
Each of the character fields pointed to by an ejdn_*_ptr parameter contains EBCDIC character data terminated by a null character (X'00') to simplify processing in the C language. If a value for a field is not available, the corresponding length field (ejdn_*_len) contains zero.

Related tasks
Rewriting user-replaceable programs
Assembling and link-editing user-replaceable programs
Related reference
Sample programs and copy books
[[ Contents Previous Page | Next Page Index ]]