PMDF Programmer's Reference Manual


Previous Contents Index


PMDFsetLimits

Set message fragmentation thresholds.

PASCAL

status = PMDF_set_limits

(nq_context, max_blocks, max_lines, max_to)

argument information

Argument Data type Access Mechanism
nq_context context pointer read/write reference
max_blocks signed longword read value
max_lines signed longword read value
max_to signed longword read value

C

status = PMDFsetLimits

(nq_context, max_blocks, max_lines, max_to)

argument information


int PMDFsetLimits(PMDF_nq **nq_context, 
                  int       max_blocks, 
                  int       max_lines, 
                  int       max_to) 


Arguments

nq_context

A message enqueue context created with PMDFstartMessageEnvelope .

max_blocks

Non-negative integer specifying the maximum number of blocks (header + body) per message. A value of zero implies no limit.

max_lines

Non-negative integer specifying the maximum number of message lines (header + body) per message. A value of zero implies no limit.

max_to

Non-negative integer specifying the maximum number of envelope "To:" addresses per message. A value of zero implies no limit.

Description

PMDF can be instructed to fragment "large" messages into multiple messages. Large is taken by PMDF to mean exceeds max_blocks blocks, exceeds max_lines message lines, or exceeds max_to envelope "To:" addresses. All of these limits are simultaneously imposed. When either max_blocks or max_lines is exceeded, the message is fragmented into multiple messages using MIME's message/partial mechanism. MIME compliant mailers receiving the message can automatically re-assemble the message upon receipt of all of the pieces. (PMDF channels must be marked with the defragment keyword for automatic message re-assembly to occur.) When the max_to limit is exceeded, the message is merely broken into multiple copies, each copy with an envelope "To:" address list of length less than or equal to max_to. Note that the size of a block in bytes is given by the PMDF option file entry BLOCK_SIZE . When not specified in an option file, the default value of 1024 bytes is used. The function PMDFgetBlockSize should be used to determine the current block size. Settings chosen with PMDFsetLimits only affect the specified message enqueue context and can be changed with further calls to PMDFsetLimits . By default, no limits are imposed: max_blocks = max_lines = max_to = 0.

Return Values

PMDF__OK Normal, successful completion.
PMDF__BADCONTEXT Illegal or corrupt context. Limits were not changed.


Previous Next Contents Index