#include <set_msg.h> typedef struct CardCInitReq_ { asn1set__MessageWrapper messageWrapper; } *CardCInitReq; CardCInitReq safe_cast_CardCInitReq(msg) set_msg msg; /* IN */
CardCInitReq
contains the
data from a SET CardCInitReq message in native C form.
See the asn_types.h and
asn1set.h header files for the declarations of the
various types. See the SET specification for a
description of individual fields.
CardCInitReq
message objects of type set_msg
may be cast to type CardCInitReq
using the
safe_cast_CardCInitReq()
routine.
make_set_msg()
, cardholder software must insert
the following state into the cache_ctx
:
* STATE_LOCALID_EE
A call to make_set_msg()
results in the protocol layer
filling in the following fields:
* messageWrapper.messageHeader.version * messageWrapper.messageHeader.date * messageWrapper.messageHeader.rrPID * messageWrapper.messageHeader.swIdent * messageWrapper.message._choice * messageWrapper.message.u.cardCInitReq.rrpid * messageWrapper.message.u.cardCInitReq.eeTags.localID_EE * messageWrapper.message.u.cardCInitReq.eeTags.chall_EE * messageWrapper.message.u.cardCInitReq.thumbs (optional)It is unwise for users to change the contents of the fields filled in by the protocol layer.
After calling make_set_msg()
, cardholder software must
fill in the following required fields:
* messageWrapper.message.u.cardCInitReq.brandIDNon-required fields may be left empty at the discretion of the cardholder application, subject to any business constraints placed on the application.
STATE_CARDCINITREQ_RRPID put STATE_CHALL_EE put STATE_LOCALID_EE get STATE_THUMBS put
STATE_CARDCINITREQ_RRPID put STATE_CHALL_EE put STATE_LOCALID_EE put STATE_THUMBS put
safe_cast_CardCInitReq()
returns a pointer to an CardCInitReq
data structure.
Objects of type set_msg
that were not created
with message type
asn1set__Message__cardCInitReq
will cause
safe_cast_CardCInitReq()
to fail.
On failure, safe_cast_CardCInitReq()
returns a null pointer.
Optional fields that are filled in require an application of the
SET_PRESENT()
macro. See
documentation on ASN.1/DER runtime types
for additional information.
msg_type = asn1set__Message__cardCInitReq; status = make_set_msg(request, app_ctx, &msg_cache[0], msg_type); assert(status == NO_ERROR); cardCInitReq = safe_cast_CardCInitReq(request); assert(cardCInitReq != 0); cardCInitReq->messageWrapper.message.u.cardCInitReq.brandID.u. visibleString = BRANDID; cardCInitReq->messageWrapper.message.u.cardCInitReq.brandID._choice = asn1set__BrandID__visibleString; /* ... */ status = send_set_msg(request, app_ctx, &msg_cache[0], outstream); assert(status == NO_ERROR);
Copyright © 1996, 1997, Visa International Service Association and MasterCard International Incorporated
All Rights Reserved.