Roxen.git / server / base_server / configuration.pike

version» Context lines:

Roxen.git/server/base_server/configuration.pike:1:   // This file is part of Roxen WebServer.   // Copyright © 1996 - 2009, Roxen IS.   //      // @appears Configuration   //! A site's main configuration    - constant cvs_version = "$Id: configuration.pike,v 1.703 2010/07/12 20:07:43 mast Exp $"; + constant cvs_version = "$Id: configuration.pike,v 1.704 2010/09/28 12:23:32 mast Exp $";   #include <module.h>   #include <module_constants.h>   #include <roxen.h>   #include <request_trace.h>   #include <timers.h>      #define CATCH(P,X) do{mixed e;if(e=catch{X;})report_error("While "+P+"\n"+describe_backtrace(e));}while(0)      // Tell Pike.count_memory this is global.   constant pike_cycle_depth = 0;
Roxen.git/server/base_server/configuration.pike:2720:    }    TRACE_LEAVE("");    }    }    TRACE_LEAVE("Returned 'no such file'.");   }      mapping error_file( RequestID id )   {    mapping res; -  if (id->not_query == "/favicon.ico") { +  // Avoid recursion in 404 messages. +  if (id->root_id->misc->generate_file_not_found ||    // The most popular 404 request ever? Skip the fancy error page. -  +  id->not_query == "/favicon.ico") {    res = Roxen.http_string_answer("No such file", "text/plain");    } else { -  +  id->root_id->misc->generate_file_not_found = 1;    string data = query("ZNoSuchFile");   #if ROXEN_COMPAT <= 2.1    data = replace(data,({"$File", "$Me"}),    ({"&page.virtfile;", "&roxen.server;"}));   #endif    res = Roxen.http_rxml_answer( data, id, 0, "text/html" ); -  +  id->root_id->misc->generate_file_not_found = 0;    }    res->error = 404;    NOCACHE();    return res;   }      mapping auth_failed_file( RequestID id, string message )   { -  // Avoid recurssion in 401 messages. This could occure if the -  // 401 messages used files that also where access denied. -  if(id->misc->generate_auth_failed) +  // Avoid recursion in 401 messages. This could occur if the 401 +  // messages used files that also cause access denied. +  if(id->root_id->misc->generate_auth_failed)    return Roxen.http_low_answer(401, "<title>Access Denied</title>"    "<h2 align=center>Access Denied</h2>"); -  id->misc->generate_auth_failed = 1; +  id->root_id->misc->generate_auth_failed = 1;       string data = query("ZAuthFailed");    NOCACHE();    mapping res = Roxen.http_rxml_answer( data, id, 0, "text/html" ); -  +  id->root_id->misc->generate_auth_failed = 0;    res->error = 401;    return res;   }      // this is not as trivial as it sounds. Consider gtext. :-)   array open_file(string fname, string mode, RequestID id, void|int internal_get,    void|int recurse_count)   {    mapping|int(0..1) file;    string oq = id->not_query;