PMDF Programmer's Reference Manual


Previous Contents Index


PMDFgetMessageId

Obtain the message id associated with this message.

PASCAL

status = PMDF_get_message_id

(dq_context, message_id, message_id_len)

argument information

Argument Data type Access Mechanism
dq_context context pointer read/write reference
message_id descriptor read/write reference
message_id_len unsigned word write reference

C

status = PMDFgetMessageId

(dq_context, message_id, message_id_len)

argument information


int PMDFgetMessageId(PMDF_dq **dq_context, 
                     char     *message, 
                     int      *message_id_len) 


Arguments

dq_context

A message dequeue context created with PMDFdequeueInitialize .

message_id

String to receive the message's message id. Length must be at least ALFA_SIZE+1 bytes.

message_id_len

Length in bytes of the message id. Callers using PMDFgetMessageId must, on input, supply the maximum length in bytes of message_id.

Description

The PMDFgetMessageId routine provides ready access to a message's message id. Note that the message id can also be obtained by reading and parsing the message's header. However, for efficiency purposes, PMDF stores a copy of the message id in the message envelope. This routine provides access to that envelope copy.

Return Values

PMDF__OK Normal, successful completion.
PMDF__BADCONTEXT Illegal or corrupt context. No message id retrieved.
PMDF__FATERRLIB Call to LIB$SCOPY_R_DX failed owing to a fatal internal error in the OpenVMS Run Time Library. No message id retrieved.
PMDF__INSVIRMEM Insufficient virtual memory: call to LIB$GET_VM made by LIB$SCOPY_R_DX has failed. No message id retrieved.
PMDF__INVSTRDES Invalid string descriptor for message_id: descriptor has an invalid value in its DSC$B_CLASS field. No message id retrieved.
PMDF__STRTRU Supplied string was too long; value truncated to fit.


Previous Next Contents Index