1:  /*
   2:   * clean_exit() cleans up and terminates the program. It should be called
   3:   * instead of exit() when for some reason the real network daemon will not or
   4:   * cannot be run. Reason: in the case of a datagram-oriented service we must
   5:   * discard the not-yet received data from the client. Otherwise, inetd will
   6:   * see the same datagram again and again, and go into a loop.
   7:   *
   8:   * Author: Wietse Venema, Eindhoven University of Technology, The Netherlands.
   9:   */
  10: 
  11: #ifndef lint
  12: static char sccsid[] = "@(#) clean_exit.c 1.4 94/12/28 17:42:19";
  13: #endif
  14: 
  15: #include <stdio.h>
  16: 
  17: extern void exit();
  18: 
  19: #include "tcpd.h"
  20: 
  21: /* clean_exit - clean up and exit */
  22: 
  23: void    clean_exit(request)
  24: struct request_info *request;
  25: {
  26: 
  27:     /*
  28:      * In case of unconnected protocols we must eat up the not-yet received
  29:      * data or inetd will loop.
  30:      */
  31: 
  32:     if (request->sink)
  33:     request->sink(request->fd);
  34: 
  35:     /*
  36:      * Be kind to the inetd. We already reported the problem via the syslogd,
  37:      * and there is no need for additional garbage in the logfile.
  38:      */
  39: 
  40:     sleep(5);
  41:     exit(0);
  42: }

Defined functions

clean_exit defined in line 23; never used

Defined variables

sccsid defined in line 12; never used
Last modified: 1994-12-28
Generated: 2016-12-26
Generated by src2html V0.67
page hit count: 1724
Valid CSS Valid XHTML 1.0 Strict