Roxen.git / server / base_server / roxen.pike

version» Context lines:

Roxen.git/server/base_server/roxen.pike:527:   {    if(shutdown_recurse >= 4)    {    if (mixed err =    catch (report_notice("Exiting roxen (spurious signals received).\n")) ||    catch (stop_all_configurations()))    master()->handle_error (err);    // Zap some of the remaining caches.    destruct(argcache);    destruct(cache); +  stop_scan_certs();    stop_hourly_maintenance();   #ifdef THREADS   #if constant(Filesystem.Monitor.basic)    stop_fsgarb();   #endif    if (mixed err = catch (stop_handler_threads()))    master()->handle_error (err);   #endif /* THREADS */    roxenloader.real_exit(exit_code);    }
Roxen.git/server/base_server/roxen.pike:6514: Inside #if defined(SSL3_DEBUG)
  #ifdef SSL3_DEBUG    werror("Found PEM file %O, matching %O.\n",    Stdio.append_path(dir, fname), glob_pattern);   #endif    CertDB.register_pem_file(Stdio.append_path(dir, fname));    }    }    }    }    CertDB.refresh_all_pem_files(force); + }    -  call_out(scan_certs, 600); // Scan for new certs every 10 minutes. + protected BackgroundProcess scan_certs_process; +  + // Start a background process that scan for new certs every 10 minutes. + protected void start_scan_certs() + { +  if (scan_certs_process) return; +  +  scan_certs_process = BackgroundProcess(600, scan_certs);   }    -  + protected void stop_scan_certs() + { +  if (scan_certs_process) { +  scan_certs_process->stop(); +  scan_certs_process = UNDEFINED; +  } + }      protected class GCTimestamp   {    array self_ref;    protected void create() {self_ref = ({this_object()});}    protected void destroy() {    werror ("GC runs at %s", ctime(time()));    GCTimestamp();    }   }
Roxen.git/server/base_server/roxen.pike:6963:    c->enable_all_modules();   #endif // RUN_SELF_TEST      #ifdef THREADS    start_handler_threads();   #if constant(Filesystem.Monitor.basic)    start_fsgarb();   #endif   #endif /* THREADS */    +  start_scan_certs();    start_hourly_maintenance();      #ifdef TEST_EUID_CHANGE    if (test_euid_change) {    Stdio.File f = Stdio.File();    if (f->open ("rootonly", "r") && f->read())    werror ("Backend thread can read rootonly\n");    else    werror ("Backend thread can't read rootonly\n");    }