Function: bind_hermes Purpose: select a communication method between an application program and the user control process (Hermes). Category: USER-INTERFACE, SYSTEM File: bind_hermes.c Author: J.P. Terlouw Use: int bind_hermes(&sendproc, &receiveproc); ONLY called from init_c in srvreq.c ! bind_hermes -- 0: success; 1: error sendproc -- pointer to sender procedure receiveproc -- pointer to receiver procedure Description: bind_hermes used to assign values to the pointers on the basis of a two-letter argument to the program (either on the command line or via exec). Now a fixed method of communication is used. The methods are normally implemented as static procedures in this module. Exceptions were the stand-alone Hermes routines (nohermes). These routines are not normally called by this module. To include them, this module should be compiled with -DNOHERMES. Updates: 15-Oct-1990 -- original document 4-Dec-1990 -- bug in socket pair method fixed 11-Mar-1991 -- fixed infinite loop after Hermes crash 27-May-1991 -- pipe methods added 16-Oct-1991 -- code added to handle interrupted read() calls 6-Jan-1993 -- suppress inclusion of nohermes routines 13-Oct-1993 -- eliminate internal I/O buffer 7-Feb-1995 -- return status 20-Mar-1995 -- replace writev by sock_writev for Linux 24-Nov-2008 -- socket pair method is now "hardwired"