Changeset 84


Ignore:
Timestamp:
Jan 18, 2007, 8:23:38 PM (18 years ago)
Author:
rainer
Message:

Fix fo ticket #47 (yule TCP socket accidentally closed).

Location:
trunk/src
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/samhain.c

    r79 r84  
    13141314  /* close all other files
    13151315   */
    1316   sh_unix_closeall(3, -1); /* after processing CL options */
     1316  sh_unix_closeall(3, -1); /* after processing CL options; only stderr here */
    13171317
    13181318
     
    13691369      sh.flag.loop     = S_FALSE;
    13701370    }
    1371 
    1372   if (sh.flag.isdaemon == S_TRUE)
    1373     sh_error_only_stderr (BAD);
    13741371
    13751372  /* --- load database; checksum of database
  • trunk/src/sh_database.c

    r81 r84  
    15251525}
    15261526
    1527 static int is_escaped(char * p_in) {
     1527static int is_escaped(const char * p_in) {
    15281528
    15291529  int    escp = 0;
  • trunk/src/sh_unix.c

    r78 r84  
    11981198   */
    11991199  if (fdlimit < 0)
    1200     fdlimit = 8;  /* POSIX lower limit */
     1200    fdlimit = 20;  /* POSIX lower limit */
    12011201
    12021202  if (fdlimit > 65536)
     
    18471847  sh_unix_zeroenv();
    18481848
    1849 
    1850   /* close all file descriptors, and
    1851    * open first three streams to /dev/null
    1852    */
    18531849  if (goDaemon == 1)
    18541850    {
     1851      /* close all file descriptors
     1852       */
    18551853      sh_unix_closeall (0, -1);  /* if running as daemon */
    1856       aud_open(FIL__, __LINE__, SL_NOPRIV, _("/dev/null"), O_RDWR, 0);
    1857       retry_aud_dup(FIL__, __LINE__, 0);
    1858       retry_aud_dup(FIL__, __LINE__, 0);
     1854
     1855      /* Enable full error logging
     1856       */
     1857      sh_error_only_stderr (S_FALSE);
     1858
     1859      /* open first three streams to /dev/null
     1860       */
     1861      status = aud_open(FIL__, __LINE__, SL_NOPRIV, _("/dev/null"), O_RDWR, 0);
     1862      if (status < 0)
     1863        {
     1864          status = errno;
     1865          sh_error_handle((-1), FIL__, __LINE__, status, MSG_E_SUBGEN,
     1866                          sh_error_message(status), _("open"));
     1867          aud_exit(FIL__, __LINE__, EXIT_FAILURE);
     1868        }
     1869
     1870      status = retry_aud_dup(FIL__, __LINE__, 0);
     1871      if (status >= 0)
     1872        retry_aud_dup(FIL__, __LINE__, 0);
     1873
     1874      if (status < 0)
     1875        {
     1876          status = errno;
     1877          sh_error_handle((-1), FIL__, __LINE__, status, MSG_E_SUBGEN,
     1878                          sh_error_message(status), _("dup"));
     1879          aud_exit(FIL__, __LINE__, EXIT_FAILURE);
     1880        }
     1881
    18591882#if defined(HAVE_LIBPRELUDE)
    18601883      sh_prelude_reset ();
Note: See TracChangeset for help on using the changeset viewer.