It seems that setting the return codes to 0 in an API_Exit causes disastrous
results:
In the attached skeleton API exit code null_exits.c works fine (doing
nothing, but not doing any damage...)
The 2nd example null_exits_rc.c does nothing, but before exiting it sets
returned codes to 0:
    pExitParms->ExitResponse  = MQXDR_OK;
    pExitParms->ExitResponse2 = MQXDR_OK;
    pExitParms->ExitReason    = MQRC_NONE;
    *pCompCode = MQRC_NONE;
    *pReason   = MQRC_NONE;

When I ran this on NT (and on Linux), a process named amqzfuma started using
all the available
memory and in few moments the machine become unusable
(Memory usage 100% on NT, and kswapd taking 99% CPU on Linux, forcing me to
use hardware reset).

OK. I know what is wrong (I hope I helped someone out there)

Any reasons why, and what return codes should I be using?

--
#include <standard.disclaimer.txt>
[EMAIL PROTECTED]


Attachment: null_exits.c
Description: Binary data

Attachment: null_exits_rc.c
Description: Binary data

Reply via email to