[Toc][Index]

FSH_CRITERROR - Signal hard error to daemon

  
Purpose   
This function signals a hard error to the daemon. 
Calling Sequence   

int far pascal FSH_CRITERROR(cbMessage, pMessage, nSubs, pSubs, fAllowed)

unsigned short cbMessage;
char far * pMessage;
unsigned short nSubs;
char far * pSubs;
unsigned short fAllowed;


Where   
cbMessage is the length of the message template. 
pMessage is the pointer to the message template. 
This may contain replaceable parameters in the format used by the message 
retriever. 
nSubs is the number of replaceable parameters. 
pSubs is the pointer to the replacement text. 
The replacement text is a packed set of ASCIIZ strings. 
fAllowed is the bit mask of allowed actions: 
Bit 0x0001 on indicates FAIL allowed 
Bit 0x0002 on indicates ABORT allowed 
Bit 0x0004 on indicates RETRY allowed 
Bit 0x0008 on indicates IGNORE allowed 
Bit 0x0010 on indicates ACKNOWLEDGE only allowed. 
All other bits are reserved and must be zero. If bit 0x0010 is set, and 
any or some of bits 0x0001 to 0x0008 are also set, bit 0x0010 will be 
ignored. 
  
Returns   
This function returns the action to be taken: 
0x0000 - ignore 
0x0001 - retry 
0x0003 - fail 
0x0004 - continue 
Remarks   
If the user responds with an action that is not allowed, it is treated as 
FAIL. If FAIL is not allowed, it is treated as ABORT. ABORT is always 
allowed. 
When ABORT is the final action, OS/2 does not return this as an indicator; 
it returns a FAIL. The actual ABORT operation is generated when this 
thread of execution is about to return to user code. 
The maximum length of the template is 128 bytes, including the NUL. The 
maximum length of the message with text substitutions is 512 bytes. The 
maximum number of substitutions is 9. 
If any action other than retry is selected for a given hard error popup, 
then any subsequent popups (within the same API call) will be 
automatically failed; a popup will not be done. This means that (except 
for retries) there can be at most one hard error popup per call to the 
FSD. And, if the kernel generates a popup, then the FSD cannot create one. 

FSH_CRITERROR will fail automatically if the user application has set 
autofail, or if a previous hard error has occurred. 
FSH_CRITERROR may block. 
Note:   OS/2 does not validate input parameters. Therefore, an FSD should 
call FSH_PROBEBUF where appropriate. 

Created using Inf-PHP v.2 (c) 2003 Yuri Prokushev
Created using Inf-HTML v.0.9b (c) 1995 Peter Childs