1: # include "ctlmod.h" 2: # include "pipes.h" 3: # include <sccs.h> 4: 5: SCCSID(@(#)pb_flush.c 8.1 12/31/84) 6: 7: /* 8: ** PB_FLUSH -- flush a pipe buffer 9: ** 10: ** This routine insures that all the data in a pipe buffer 11: ** is flushed out to the pipe. 12: ** 13: ** We also handle input switching in this routine. If the 14: ** message we are writing is not merely informational (such 15: ** as an error message, or some sort of meta message), we 16: ** change the input to be whatever pipe the named process 17: ** will write back on. 18: ** 19: ** Parameters: 20: ** ppb -- a ptr to the pipe buffer to flush. 21: ** 22: ** Returns: 23: ** none 24: ** 25: ** Side Effects: 26: ** none 27: ** 28: ** Trace Flags: 29: ** none 30: */ 31: 32: pb_flush(ppb) 33: register pb_t *ppb; 34: { 35: /* mark this as an EOF block and flush the buffer */ 36: ppb->pb_stat |= PB_EOF; 37: pb_write(ppb); 38: }