1997-01-29
1997-01-29 04:59:46 by Per Hedbor <ph@opera.com>
-
14179b4559576ec042ff13d66383d6902b37d1b0
(104 lines)
(+50/-54)
[
Show
| Annotate
]
Branch: 5.2
1.2
Rev: server/base_server/color.pike:1.3
Rev: server/base_server/config/builders.pike:1.2
Rev: server/base_server/config/describers.pike:1.17
Rev: server/base_server/config/savers.pike:1.3
Rev: server/base_server/configuration.pike:1.11
Rev: server/base_server/http.pike:1.6
Rev: server/base_server/mainconfig.pike:1.30
Rev: server/base_server/module_support.pike:1.8
Rev: server/base_server/newdecode.pike:1.4
Rev: server/base_server/proxyauth.pike:1.2
Rev: server/base_server/read_config.pike:1.7
Rev: server/base_server/roxen.pike:1.32
Rev: server/etc/include/config.h:1.5
Rev: server/etc/include/fifo.pre.pike:1.2
Rev: server/etc/roxen_master.pike:1.18
Rev: server/etc/supports:1.12
Rev: server/languages/swedish.pike:1.6
Rev: server/modules/filesystems/filesystem.pike:1.8
Rev: server/modules/filters/hostredirect.pike:1.6
Rev: server/modules/graphics/graphic_text.pike:1.24
Rev: server/modules/logging/home_logger.pike:1.7
Rev: server/modules/scripting/cgi.pike:1.10
Rev: server/modules/tags/htmlparse.pike:1.21
Rev: server/protocols/ftp.pike:1.5
Rev: server/protocols/gopher.pike:1.4
Rev: server/protocols/http.pike:1.11
Rev: server/protocols/ssl.pike:1.5
Rev: server/protocols/ssleay.pike:1.4
1:
inherit "config/builders";
- string cvs_version = "$Id: mainconfig.pike,v 1.29 1996/12/13 00:41:16 per Exp $";
+ string cvs_version = "$Id: mainconfig.pike,v 1.30 1997/01/29 04:59:34 per Exp $";
inherit "roxenlib";
inherit "config/draw_things";
28:
mixed original;
int changed, moredocs;
- int bar=previous_object()->bar;
+ int bar=time();
function saver = lambda(object o) { if(o->changed) o->change(-o->changed); };
string|array error;
157:
if(!sizeof(tmp)) return root;
for(o=root; sizeof(tmp) && (o=o->descend(tmp[0],1)); tmp=tmp[1..1000]);
if(!o) return 0;
- roxen->current_configuration = o->config();
+
return o;
}
175:
{
id->referer = ({ CONFIG_URL + o->path(1) });
root->save();
- if(roxen->do_fork_it())
- {
+
roxen->update_supports_from_roxen_com();
roxen->initiate_configuration_port( 0 );
}
- else
- throw(-1);
- }
+
mapping stores( string s )
{
200:
]);
}
- object find_module(string name)
+ object find_module(string name, object in)
{
mapping mod;
object o;
214: Inside #if defined(MODULE_DEBUG)
perror("Modulename not in short form: "+name+"\n");
#endif
#endif
- foreach(values(roxen->current_configuration->modules), mod)
+ foreach(values(in->modules), mod)
{
if(mod->copies)
{
232: Inside #if defined(MODULE_DEBUG)
perror("Modulename in short form: "+name+"#"+i+"\n");
#endif
#endif
- modules = roxen->current_configuration->modules;
+ modules = in->modules;
if(modules[name])
{
if(modules[name]->copies)
253:
return map_array(var/"\000", find_module);
case TYPE_MODULE:
- return find_module(var);
+ return find_module(var, node->config());
case TYPE_PORTS:
/*
461:
}
if(module) if(module->copies) while(module->copies[i]) i++;
- roxen->enable_module(name+"#"+i);
- module = node->config()->modules[name];
+ orig = node->config()->enable_module(name+"#"+i);
- if(!module) return http_string_answer("This module could not be enabled.\n");
+ if(!orig) return http_string_answer("This module could not be enabled.\n");
-
+ module = node->config()->modules[name];
node = node->descend(module->name);
// Now it is the (probably unbuilt) module main node...
493:
mixed new_module_copy_copy(object node, object id)
{
- roxen->current_configuration = node->config();
+
return new_module_copy(node, node->data->sname, id);
}
508:
if(!roxen->allmodules || sizeof(id->pragma))
{
perror("CONFIG: Rescanning modules.\n");
+ roxen->current_configuration = node->config();
roxen->rescan_modules();
-
+ roxen->current_configuration = 0;
perror("CONFIG: Done.\n");
}
589:
switch(lower_case((type/" ")[0]))
{
default: /* Minimal configuration */
- roxen->enable_configuration(name);
+ o=roxen->enable_configuration(name);
break;
case "standard":
- roxen->enable_configuration(name);
- roxen->enable_module("cgi#0");
- roxen->enable_module("contenttypes#0");
- roxen->enable_module("ismap#0");
- roxen->enable_module("pikescript#0");
- roxen->enable_module("htmlparse#0");
- roxen->enable_module("directories#0");
- roxen->enable_module("userdb#0");
- roxen->enable_module("userfs#0"); // I _think_ we want this.
- roxen->enable_module("filesystem#0");
+ o = roxen->enable_configuration(name);
+ o->enable_module("cgi#0");
+ o->enable_module("contenttypes#0");
+ o->enable_module("ismap#0");
+ o->enable_module("pikescript#0");
+ o->enable_module("htmlparse#0");
+ o->enable_module("directories#0");
+ o->enable_module("userdb#0");
+ o->enable_module("userfs#0"); // I _think_ we want this.
+ o->enable_module("filesystem#0");
break;
case "ipp":
- roxen->enable_configuration(name);
- roxen->enable_module("contenttypes#0");
- roxen->enable_module("ismap#0");
- roxen->enable_module("htmlparse#0");
- roxen->enable_module("directories#0");
- roxen->enable_module("filesystem#0");
+ o=roxen->enable_configuration(name);
+ o->enable_module("contenttypes#0");
+ o->enable_module("ismap#0");
+ o->enable_module("htmlparse#0");
+ o->enable_module("directories#0");
+ o->enable_module("filesystem#0");
break;
case "proxy":
- roxen->enable_configuration(name);
- roxen->enable_module("proxy#0");
- roxen->enable_module("gopher#0");
- roxen->enable_module("ftpgateway#0");
- roxen->enable_module("contenttypes#0");
- roxen->enable_module("wais#0");
+ o=roxen->enable_configuration(name);
+ o->enable_module("proxy#0");
+ o->enable_module("gopher#0");
+ o->enable_module("ftpgateway#0");
+ o->enable_module("contenttypes#0");
+ o->enable_module("wais#0");
break;
case "copy":
1073:
mod = module_of(o);
if(!mod || mod==roxen)
error("This module cannot be updated.\n");
- name = module_short_name(mod);
+ name = module_short_name(mod, o->config());
if(!name)
error("This module cannot be updated");
sscanf(name, "%s#%*s", modname);
- roxen->current_configuration = o->config();
+
if(!(cmod = o->config()->modules[ modname ]))
error("This module cannot be updated");
1085:
cache_remove("modules", modname);
_master->set_inhibit_compile_errors(1);
- if(!roxen->load_module(modname))
+ if(!o->config()->load_module(modname))
{
mapping rep;
rep = http_string_answer("The reload of this module failed.\n"
1095:
return rep;
}
object mod;
- if(!roxen->disable_module(name)) error("Failed to disable module.\n");
- if(!(mod=roxen->enable_module(name)))error("Failed to enable module.\n");
+ if(!o->config()->disable_module(name))error("Failed to disable module.\n");
+ if(!(mod=o->config()->enable_module(name)))error("Failed to enable module.\n");
o->clear();
- roxen->fork_it();
+ // roxen->fork_it();
if(mappingp(o->data))
{
1217:
string name;
object n;
- name = module_short_name(o->data);
- roxen->disable_module(name);
+ name = module_short_name(o->data, o->config());
+ o->conf()->disable_module(name);
// Remove the suitable part of the configuration file.
- roxen->remove(name);
+ roxen->remove(name, o->conf());
o->change(-o->changed);
n=o->up;
o->dest();
1267:
i=sizeof(a);
while(i--)
{
- roxen->disable_module(name+"#"+a[i]);
- roxen->remove(name+"#"+a[i]);
+ o->config()->disable_module(name+"#"+a[i]);
+ roxen->remove(name+"#"+a[i], o->config());
}
} else if(o->data->master) {
name=o->config()->otomod[o->data->enabled];
}
} else if(o->data->enabled) {
name=o->config()->otomod[o->data->enabled];
- roxen->disable_module(name+"#0");
- roxen->remove(name+"#0");
+ o->config()->disable_module(name+"#0");
+ roxen->remove(name+"#0", o->config());
}
o->change(-o->changed);
o->dest();