Branch: Tag:

2008-08-15

2008-08-15 12:33:55 by Martin Stjernholm <mast@lysator.liu.se>

Moving to pike 7.8 and dropping compatibility with earlier pikes.

Rev: server/arg_cache_plugins/replicate.pike:1.27
Rev: server/base_server/__default.pmod:1.2
Rev: server/base_server/cache.pike:1.90
Rev: server/base_server/config_userdb.pike:1.53
Rev: server/base_server/configuration.pike:1.653
Rev: server/base_server/emit_object.pike:1.7
Rev: server/base_server/fonts.pike:1.87
Rev: server/base_server/global_variables.pike:1.110
Rev: server/base_server/javamodule.pike:1.7
Rev: server/base_server/language.pike:1.43
Rev: server/base_server/module.pike:1.231
Rev: server/base_server/module_support.pike:1.135
Rev: server/base_server/prototypes.pike:1.219
Rev: server/base_server/roxen.pike:1.981
Rev: server/base_server/roxenlib.pike:1.224
Rev: server/base_server/roxenloader.pike:1.397
Rev: server/base_server/rxmlhelp.pike:1.65
Rev: server/base_server/smtprelay.pike:3.2
Rev: server/base_server/snmpagent.pike:1.24
Rev: server/bin/buildenv.pike:1.10
Rev: server/bin/create_testcert.pike:1.2
Rev: server/bin/functions:1.19
Rev: server/bin/garbagecollector.pike:1.23
Rev: server/bin/setup_nsr.pike:1.4
Rev: server/bin/sqlhelper.pike:1.4
Rev: server/config_interface/actions/change_version.pike:1.15
Rev: server/config_interface/actions/debug_info.pike:1.40
Rev: server/config_interface/actions/feature_list.pike:1.14
Rev: server/config_interface/actions/ftpstatus.pike:1.4
Rev: server/config_interface/actions/generate_rsa.pike:1.7
Rev: server/config_interface/actions/make_rsa_csr.pike:1.11
Rev: server/config_interface/actions/make_selfsigned_dsa.pike:1.11
Rev: server/config_interface/actions/make_selfsigned_rsa.pike:1.10
Rev: server/config_interface/actions/ssl_common.pike:1.8
Rev: server/config_interface/actions/tablist.pike:1.10
Rev: server/config_interface/actions/threads.pike:1.8
Rev: server/etc/env.d/java.pike:1.19
Rev: server/etc/include/variables.h:1.18
Rev: server/etc/modules/DBManager.pmod:1.76
Rev: server/etc/modules/ExtSQL.pmod:1.4
Rev: server/etc/modules/ExtScript.pmod:1.22
Rev: server/etc/modules/GText.pmod:1.20
Rev: server/etc/modules/HTML.pmod:1.8
Rev: server/etc/modules/JavaModule.pmod:1.25
Rev: server/etc/modules/LazyImage.pmod/CoordinateSystem.pike:1.4
Rev: server/etc/modules/LazyImage.pmod/Legend.pike:1.5
Rev: server/etc/modules/LazyImage.pmod/module.pmod:1.19
Rev: server/etc/modules/License.pmod:1.27
Rev: server/etc/modules/Map.pmod:1.7
Rev: server/etc/modules/PropertySet.pike:1.12
Rev: server/etc/modules/RXML.pmod/PEnt.pike:1.24
Rev: server/etc/modules/RXML.pmod/PXml.pike:1.65
Rev: server/etc/modules/RXML.pmod/module.pmod:1.367
Rev: server/etc/modules/Roxen.pmod:1.246
Rev: server/etc/modules/RoxenDebug.pmod:1.12
Rev: server/etc/modules/RoxenRPC.pmod/HTTP.pmod/Client.pike:1.10
Rev: server/etc/modules/RoxenRPC.pmod/HTTP.pmod/Server.pike:1.6
Rev: server/etc/modules/RoxenSSLFile.pike:1.27(DEAD)
Rev: server/etc/modules/SNMP.pmod:1.10
Rev: server/etc/modules/Servlet.pmod:1.31
Rev: server/etc/modules/SloppyDOM.pmod:1.16
Rev: server/etc/modules/StateHandler.pmod:1.13
Rev: server/etc/modules/VFS.pmod:1.7
Rev: server/etc/modules/Variable.pmod/Date.pike:1.9
Rev: server/etc/modules/Variable.pmod/Email.pike:1.15
Rev: server/etc/modules/Variable.pmod/Image.pike:1.5
Rev: server/etc/modules/Variable.pmod/Language.pike:1.2
Rev: server/etc/modules/Variable.pmod/MapLocation.pike:1.6
Rev: server/etc/modules/Variable.pmod/Mapping.pike:1.9
Rev: server/etc/modules/Variable.pmod/Upload.pike:1.5
Rev: server/etc/modules/Variable.pmod/module.pmod:1.108
Rev: server/etc/modules/_NewLDAP.pmod/client.pike:1.11(DEAD)
Rev: server/etc/modules/_NewLDAP.pmod/ldap_globals.h:1.1(DEAD)
Rev: server/etc/modules/_NewLDAP.pmod/ldap_privates.pmod:1.1(DEAD)
Rev: server/etc/modules/_NewLDAP.pmod/module.pmod:1.4(DEAD)
Rev: server/etc/modules/_NewLDAP.pmod/protocol.pike:1.1(DEAD)
Rev: server/etc/roxen_master.pike:1.150
Rev: server/etc/test/tests/ftp/ftp_test.pike:1.4
Rev: server/font_handlers/freetype.pike:1.30
Rev: server/font_handlers/imagedir.pike:1.15
Rev: server/font_handlers/imagetar.pike:1.10
Rev: server/font_handlers/ttf.pike:1.18
Rev: server/languages/catala.pike:1.11
Rev: server/languages/chinese.pike:1.2
Rev: server/languages/croatian.pike:1.11
Rev: server/languages/czech.pike:1.18
Rev: server/languages/dutch.pike:1.11
Rev: server/languages/finnish.pike:1.10
Rev: server/languages/french.pike:1.13
Rev: server/languages/german.pike:1.11
Rev: server/languages/hungarian.pike:1.7
Rev: server/languages/italian.pike:1.13
Rev: server/languages/japanese.pike:1.22
Rev: server/languages/maori.pike:1.9
Rev: server/languages/norwegian.pike:1.12
Rev: server/languages/polish.pike:1.8
Rev: server/languages/portuguese.pike:1.11
Rev: server/languages/russian.pike:1.10
Rev: server/languages/serbian.pike:1.10
Rev: server/languages/slovenian.pike:1.17
Rev: server/languages/spanish.pike:1.12
Rev: server/languages/swedish.pike:1.20
Rev: server/modules/configuration/config_tags.pike:1.197
Rev: server/modules/configuration/roxen_test.pike:1.68
Rev: server/modules/configuration/update.pike:1.40
Rev: server/modules/examples/userdb_ex.pike:1.8
Rev: server/modules/filesystems/filesystem.pike:1.157
Rev: server/modules/filesystems/incoming.pike:1.19
Rev: server/modules/filesystems/restrictedfs.pike:1.24
Rev: server/modules/filesystems/sqlfs.pike:1.9
Rev: server/modules/filesystems/userfs.pike:1.71
Rev: server/modules/filters/tableborder.pike:1.13
Rev: server/modules/filters/whitespace_remover.pike:1.4
Rev: server/modules/graphics/business.pike:1.152
Rev: server/modules/graphics/gxml.pike:1.38
Rev: server/modules/graphics/pimage.pike:1.31
Rev: server/modules/graphics/rimage/rimage.pike:1.23
Rev: server/modules/icecast/icecast.pike:1.12
Rev: server/modules/icecast/pl_common.pike:1.9
Rev: server/modules/js-support/javascript_support.pike:1.68
Rev: server/modules/ldap/ldaptag.pike:2.38
Rev: server/modules/ldap/userdb_ldap.pike:1.14
Rev: server/modules/logging/home_logger.pike:1.35
Rev: server/modules/misc/preferred_language.pike:1.32
Rev: server/modules/misc/randomtext.pike:1.10
Rev: server/modules/misc/wapadapter.pike:1.13
Rev: server/modules/misc/webdav.pike:1.38
Rev: server/modules/proxies/connect.pike:1.20
Rev: server/modules/proxies/proxy.pike:1.57
Rev: server/modules/proxies/wais.pike:1.28
Rev: server/modules/scripting/cgi.pike:2.65
Rev: server/modules/scripting/fastcgi.pike:2.13
Rev: server/modules/scripting/perl.pike:2.26
Rev: server/modules/scripting/php.pike:2.5
Rev: server/modules/scripting/piketag.pike:2.38
Rev: server/modules/scripting/servlet.pike:2.24
Rev: server/modules/scripting/webapp.pike:2.32
Rev: server/modules/security/auth_httpbasic.pike:1.12
Rev: server/modules/security/auth_httpcookie.pike:1.12
Rev: server/modules/security/htaccess.pike:1.106
Rev: server/modules/security/userdb_sql.pike:1.10
Rev: server/modules/security/userdb_system.pike:1.12
Rev: server/modules/tags/accessed.pike:1.57
Rev: server/modules/tags/email.pike:1.43
Rev: server/modules/tags/emit_exec.pike:1.4
Rev: server/modules/tags/emit_timerange.pike:1.29
Rev: server/modules/tags/insert_cached_href.pike:1.22
Rev: server/modules/tags/obox.pike:1.41
Rev: server/modules/tags/rxmltags.pike:1.553
Rev: server/modules/tags/wizz.pike:1.10
Rev: server/modules/tags/writefile.pike:1.20
Rev: server/modules/throttling/throttling_byaddress.pike:1.6
Rev: server/modules/throttling/throttling_bytime.pike:1.8
Rev: server/ntroxenloader.pike:1.9
Rev: server/protocols/ftp.pike:2.125
Rev: server/protocols/http.pike:1.561
Rev: server/protocols/prot_hilfe.pike:2.15
Rev: server/protocols/prot_snmp.pike:2.8
Rev: server/sbin/roxen-create-server:1.5
Rev: server/tools/ntroxen/startdll/cmdline.cpp:1.21

1:   // This is a roxen pike module. Copyright © 1999 - 2004, Roxen IS.   // - // $Id: Roxen.pmod,v 1.245 2008/08/06 16:29:41 mast Exp $ + // $Id: Roxen.pmod,v 1.246 2008/08/15 12:33:54 mast Exp $      #include <roxen.h>   #include <config.h>
145:    return "0.0.0.0";   }    - static mapping(string:function(string, RequestID:string)) cookie_callbacks = + protected mapping(string:function(string, RequestID:string)) cookie_callbacks =    ([]); - static class CookieChecker(string cookie) + protected class CookieChecker(string cookie)   {    string `()(string path, RequestID id)    {
467:    return ([ "try_again_later":delay ]);   }    - static class Delayer + protected class Delayer   {    RequestID id;    int resumed;
538:    return ([ "file":text, "type":(type||"text/html"), "len":len ]);   }    - static constant months = ({ "Jan", "Feb", "Mar", "Apr", "May", "Jun", + protected constant months = ({ "Jan", "Feb", "Mar", "Apr", "May", "Jun",    "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" }); - static constant days = ({ "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" }); + protected constant days = ({ "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" });      string log_date(int t) {    mapping(string:int) lt = localtime(t);
556:      // CERN date formatter. Note similar code in LogFormat in roxen.pike.    - static int chd_lt; - static string chd_lf; + protected int chd_lt; + protected string chd_lf;      string cern_http_date(int t)   //! Return a date, formated to be used in the common log format
1099:    return "";   }    - static string mk_env_var_name(string name) + protected string mk_env_var_name(string name)   {    name = replace(name, " ", "_");    string res = "";
1516:    return parser;   }    - static int(0..0) return_zero() {return 0;} + protected int(0..0) return_zero() {return 0;}    - static Parser.HTML xml_parser = + protected Parser.HTML xml_parser =    lambda() {    Parser.HTML p = Parser.HTML();    p->lazy_entity_end (1);
2094:    return "\"" + replace((string)str, ({"&", "\"", "<"}), ({"&amp;", "&quot;", "&lt;"})) + "\"";   }    - static string my_sprintf(int prefix, string f, int arg) + protected string my_sprintf(int prefix, string f, int arg)   //! Filter prefix option in format string if prefix = 0.   {    if(!prefix && sscanf(f, "%%%*d%s", string format) == 2)
2295:    else return 0;   }    - static constant xml_invalids = ((string)({ + protected constant xml_invalids = ((string)({    0, 1, 2, 3, 4, 5, 6, 7,    8, 11, 12, 14, 15,    16, 17, 18, 19, 20, 21, 22, 23,
2303:    127   }))/"";    - static constant xml_printables = ((string)({ + protected constant xml_printables = ((string)({    0x2400, 0x2401, 0x2402, 0x2403, 0x2404, 0x2405, 0x2406, 0x2407,    0x2408, 0x240b, 0x240c, 0x240e, 0x240f,    0x2410, 0x2411, 0x2412, 0x2413, 0x2414, 0x2415, 0x2416, 0x2417,
2321:   //! Encode a single segment of @[roxen_encode()].   //!   //! See @[roxen_encode()] for details. - static string low_roxen_encode(string val, string encoding) + protected string low_roxen_encode(string val, string encoding)   {    switch (encoding) {    case "":
2791:    }   }    - static class CharsetDecoderWrapper + protected class CharsetDecoderWrapper   { -  static object decoder; +  protected object decoder;    string charset;    -  static void create (string cs) +  protected void create (string cs)    {    // Would be nice if it was possible to get the canonical charset    // name back from Locale.Charset so we could use that instead in
2818:    }   }    - static multiset(string) charset_warned_for = (<>); + protected multiset(string) charset_warned_for = (<>);      constant magic_charset_variable_placeholder = "UTF-8";   constant magic_charset_variable_value = "åäö&#x829f;@" + magic_charset_variable_placeholder;    - static mapping(string:function(string:string)) client_charset_decoders = ([ + protected mapping(string:function(string:string)) client_charset_decoders = ([    "http": http_decode_string,    "html": Parser.parse_html_entities,    "utf-8": utf8_to_string,    "utf-16": unicode_to_string,   ]);    - static function(string:string) make_composite_decoder ( + protected function(string:string) make_composite_decoder (    function(string:string) outer, function(string:string) inner)   {    // This is put in a separate function to minimize the size of the
3089:       int next_offset;    -  static class QuotaEntry +  protected class QuotaEntry    {    string name;    int data_offset;    -  static int usage; -  static int quota; +  protected int usage; +  protected int quota;    -  static void store() +  protected void store()    {    LOCK();   
3110:    UNLOCK();    }    -  static void read() +  protected void read()    {    LOCK();   
3195:    }    }    -  static object read_entry(int offset, int|void quota) +  protected object read_entry(int offset, int|void quota)    {    QD_WRITE(sprintf("QuotaDB::read_entry(%O, %O)\n", offset, quota));   
3233:    return QuotaEntry(key, data_offset, quota);    }    -  static Stdio.File open(string fname, int|void create_new) +  protected Stdio.File open(string fname, int|void create_new)    {    Stdio.File f = Stdio.File();    string mode = create_new?"rwc":"rw";
3247:    return(f);    }    -  static void init_index_acc() +  protected void init_index_acc()    {    /* Set up the index accellerator.    * sizeof(index_acc) ~ sqrt(sizeof(index))
3383:    }    }    -  static object low_lookup(string key, int quota) +  protected object low_lookup(string key, int quota)    {    QD_WRITE(sprintf("QuotaDB::low_lookup(%O, %O)\n", key, quota));   
3620:    return scope == "_" ? ctx->current_scope() : scope;    }    -  static mixed `[]( string what ) +  protected mixed `[]( string what )    {    RXML.Context ctx = RXML.get_context( );    return ctx->get_var( what, scope );    }    -  static mixed `->( string what ) +  protected mixed `->( string what )    {    return `[]( what );    }    -  static mixed `[]=( string what, mixed nval ) +  protected mixed `[]=( string what, mixed nval )    {    RXML.Context ctx = RXML.get_context( );    ctx->set_var( what, nval, scope );    return nval;    }    -  static mixed `->=( string what, mixed nval ) +  protected mixed `->=( string what, mixed nval )    {    return `[]=( what, nval );    }    -  static array(string) _indices( ) +  protected array(string) _indices( )    {    RXML.Context ctx = RXML.get_context( );    return ctx->list_var( scope );    }    -  static array(string) _values( ) +  protected array(string) _values( )    {    RXML.Context ctx = RXML.get_context( );    return map( ctx->list_var( scope ), `[] );
4266:    "jul":6, "aug":7, "sep":8, "oct":9, "nov":10, "dec":11,]);      #define MAX_SINCE_CACHE 16384 - static mapping(string:int) since_cache=([ ]); + protected mapping(string:int) since_cache=([ ]);   array(int) parse_since(string date)   {    if(!date || sizeof(date)<14) return({0,-1});
4510:      // A slightly modified Array.dwim_sort_func used as emits sort   // function. - static int dwim_compare(string a0,string b0) + protected int dwim_compare(string a0,string b0)   {    string a2="",b2="";    int a1,b1;
4524:    return dwim_compare(a2,b2);   }    - static int strict_compare (mixed a, mixed b) + protected int strict_compare (mixed a, mixed b)   // This one does a more strict compare than dwim_compare. It only   // tries to convert values from strings to floats or ints if they are   // formatted exactly as floats or ints. That since there still are
4682:   }      #ifdef REQUEST_TRACE - static string trace_msg (mapping id_misc, string msg, string name) + protected string trace_msg (mapping id_misc, string msg, string name)   {    msg = html_decode_string (    Parser.HTML()->_set_tag_callback (lambda (object p, string s) {return "";})->
4888:   {    inherit Stdio.File;    -  static string prefix = ""; -  static string line_buf = ""; +  protected string prefix = ""; +  protected string line_buf = "";    -  static void read_cb (Stdio.File read_end, string data) +  protected void read_cb (Stdio.File read_end, string data)    {    line_buf += data;    while (sscanf (line_buf, "%[^\n]%*c%s", string line, string rest) == 3) {
4900:    }    }    -  static void close_cb (Stdio.File read_end) +  protected void close_cb (Stdio.File read_end)    {    if (line_buf != "")    werror (prefix + line_buf + "\n");
4909:    read_end->set_id (0);    }    -  static void log_pipe_read_thread (Stdio.File read_end) +  protected void log_pipe_read_thread (Stdio.File read_end)    {    while (1) {    string data = read_end->read (1024, 1);
4919:    close_cb (read_end);    }    -  static void create (Stdio.File read_end, Stdio.File write_end, +  protected void create (Stdio.File read_end, Stdio.File write_end,    int use_read_thread)    {    if (use_read_thread)
4980:   constant EncodeError = Locale.Charset.EncodeError;   #else    - static string format_charset_err_msg ( + protected string format_charset_err_msg (    string intro, string err_str, int err_pos, string charset, string reason)   {    if (err_pos < 0) {
5028:    string charset;    //! The decoding charset (if known).    -  static void create (string err_str, int err_pos, string charset, +  protected void create (string err_str, int err_pos, string charset,    void|string reason, void|array bt)    {    this_program::err_str = err_str;
5060:    string charset;    //! The encoding charset (if known).    -  static void create (string err_str, int err_pos, string charset, +  protected void create (string err_str, int err_pos, string charset,    void|string reason, void|array bt)    {    this_program::err_str = err_str;