Guardian Programmer's Guide

Table Of Contents
Fault-Tolerant Programming in C
Guardian Programmer’s Guide 421922-014
27 - 63
Primary and Backup Processing
/*Backup open the input and output files*/
case UPDATE_OPEN:
infile =__ns_backup_fopen
(&message.msg_variants.open_info.input_open_info);
if (infile == NULL)
{
(void) printf ("Error in backup_processing, "
"update input open.\n");
PROCESS_STOP_(,1); /*Stop primary and backup*/
}
outfile = __ns_backup_fopen
(&message.msg_variants.open_info.output_open_info);
if (outfile == NULL)
{
(void) printf("Error in backup_processing, "
update output open.\n");
PROCESS_STOP_(,1); /*Stop primary and backup*/
}
break;
case UPDATE_MESSAGE:
/*Update file state information*/
/*Update input file state*/
error = __ns_fset_file_state (infile,
&message.msg_variants.update_info.infile_state);
/*Update output file state*/
error = __ns_fset_file_state (outfile,
&message.msg_variants.update_info.outfile_state);
/*Update stdout state*/
error = __ns_fset_file_state (stdout,
&message.msg_variants.update_info.stdout_state);
break;
}
}
}