Debugmeldungen per debug_message ausgeben.
Nicht mehr per write/printf ausgeben, was ohne this_player()
ins Driverlog schreibt, sondern vernuenftig mit der richtigen
efun arbeiten.
diff --git a/secure/master.c b/secure/master.c
index 22d4675..a677902 100644
--- a/secure/master.c
+++ b/secure/master.c
@@ -30,7 +30,6 @@
//for limited, set_limit(), etc. Abs. Pfad noetig, da noch kein Include-Hook
#include "/sys/rtlimits.h"
#include "/sys/debug_info.h"
-#include "/sys/debug_message.h"
#include "/sys/configuration.h"
#include "/sys/regexp.h"
@@ -220,11 +219,13 @@
ReloadInsecureFile();
if (eflag) {
- write("-e angegeben -> Preloading unterdrueckt ...\n");
+ debug_message(
+ "epilog(): -e angegeben -> Preloading unterdrueckt ...\n",
+ DMSG_STAMP);
return 0;
}
- printf("Preloading gestartet: %s\n\n",ctime(time()));
+ debug_message("Preloading gestartet.\n", DMSG_STAMP);
//Files fuers Preloading und Regionen holen
files=explode_files("/std/preload_file") + explode_files("/d/preload_file");
@@ -232,9 +233,7 @@
for (i=sizeof(domains);i--;)
files+=explode_files("/d/"+domains[i]+"/preload_file");
-
- write("\n");
-
+
return files;
}
@@ -250,13 +249,12 @@
// Kein Besitzer -> Meldung ausgeben, fertig
if (!(name=creator_file(file)))
{
- printf("Kein Besitzer gefunden fuer Datei %s.\n",file);
+ debug_message(
+ sprintf("preload: Kein Besitzer gefunden fuer Datei %s.\n",file),
+ DMSG_STDOUT|DMSG_STDERR);
return;
}
- // Datei und Besitzer ausgeben
- printf("%-50s%-15s",file,name);
-
efun::configure_object(this_object(), OC_EUID, name);
// Dann mal laden .. dabei Zeit messen
@@ -269,11 +267,14 @@
err = catch(limited(#'load_object,({5000000}),file));
if (err != 0)
- printf("\nFehler beim Laden von %s:\n%s\n",file,err);
+ debug_message(sprintf("\nFehler beim Laden von %s:\n%s\n",file,err),
+ DMSG_STDOUT|DMSG_STDERR);
else
{
+ // Datei, Besitzer und Ladezeit ausgeben
zeit=apply(#'+,rusage()[0..1])-zeit;
- printf("(%2d.%:02d s)\n",zeit/1000,zeit%1000);
+ debug_message(sprintf("%-50s%-15s (%2d.%:02d s)\n",
+ file, name, zeit/1000,zeit%1000));
}
// Noch EUID zuruecksetzen
@@ -295,23 +296,21 @@
--loading_simul_efuns;
return ({SIMUL_EFUN_FILE});
}
-
- write("Failed to load simul efun " + SIMUL_EFUN_FILE + "\n");
+
debug_message("Failed to load simul efun " + SIMUL_EFUN_FILE +
- " " + err, DMSG_STDOUT | DMSG_LOGFILE);
+ " " + err, DMSG_STDOUT | DMSG_LOGFILE | DMSG_STAMP);
if (!(err=catch(SPARE_SIMUL_EFUN_FILE->start_simul_efun())) ) {
--loading_simul_efuns;
return ({SPARE_SIMUL_EFUN_FILE});
}
-
- write("Failed to load spare simul efun" + SPARE_SIMUL_EFUN_FILE + "\n");
- debug_message("Failed to load spare simul efun " + SPARE_SIMUL_EFUN_FILE +
- " " + err, DMSG_STDOUT | DMSG_LOGFILE);
-
+ debug_message("Failed to load spare simul efun " + SPARE_SIMUL_EFUN_FILE +
+ " " + err, DMSG_STDOUT | DMSG_LOGFILE | DMSG_STAMP);
+
+
efun::shutdown();
-
+
return 0;
}
diff --git a/secure/master.h b/secure/master.h
index 51f579b..242a640 100644
--- a/secure/master.h
+++ b/secure/master.h
@@ -23,7 +23,11 @@
#define P_DEFAULT_NOTIFY_FAIL "default_notify_fail"
#endif
+#include "/sys/functionlist.h"
+#include "/sys/debug_message.h"
+
#include "/secure/config.h"
+#include "/secure/wizlevels.h"
#include "/sys/userinfo.h"
#include "/sys/player/base.h"
@@ -32,10 +36,6 @@
#include "/sys/wizlist.h"
#include "/sys/daemon.h"
#include "/sys/mail.h"
-#include "/sys/driver_hook.h"
-#include "/sys/functionlist.h"
-
-#include "/secure/wizlevels.h"
//#define DEBUG(x)
#ifndef DEBUG
diff --git a/secure/master/misc.c b/secure/master/misc.c
index 8cdbb8c..9bb274f 100644
--- a/secure/master/misc.c
+++ b/secure/master/misc.c
@@ -61,7 +61,9 @@
if (!stringp(exploded[i]) || exploded[i]=="" || exploded[i][0]=='#')
exploded[i]=0;
exploded-=({0});
- printf("%-30s: %3d Objekt%s\n",file,i=sizeof(exploded),(i==1?"":"e"));
+ debug_message(
+ sprintf("%-30s: %3d Objekt%s\n",file,i=sizeof(exploded),(i==1?"":"e")),
+ DMSG_STAMP);
return exploded;
}
diff --git a/secure/master/players_deny.c b/secure/master/players_deny.c
index 6471243..20cf7cb 100644
--- a/secure/master/players_deny.c
+++ b/secure/master/players_deny.c
@@ -88,7 +88,7 @@
if ( extern_call() && call_sefun("secure_level") < ARCH_LVL )
return;
- write("Loading PLDenylists\n");
+ debug_message("Loading PLDenylists\n", DMSG_STAMP);
if (stringp(tmp=read_file(WHITELIST))) {
// savefile exists
diff --git a/secure/materialdb.c b/secure/materialdb.c
index c6afafd..11d3554 100644
--- a/secure/materialdb.c
+++ b/secure/materialdb.c
@@ -19,6 +19,8 @@
#pragma no_shadow
#pragma pedantic
+#include <debug_message.h>
+
// Die Propertydefinition reinholen
#include <language.h>
#include <thing/description.h>
@@ -27,6 +29,7 @@
#include <thing/material.h>
#include <player/description.h>
#include <rtlimits.h>
+#include <living/comm.h>
// Basisverzeichnis der Materialien
#define MAT_DIR "/doc/materials"
@@ -47,8 +50,12 @@
#define P_MEMBERS "members"
#define P_MG_FRACTIONS "mg_fractions"
-#define LOG_ERROR(x) if(find_player("raschaua")&&find_player("raschaua")->QueryProp("mdb-debug"))tell_object(find_player("raschaua"),"MDB-Error:"+x)
-#define LOG_WARN(x) if(find_player("raschaua")&&find_player("raschaua")->QueryProp("mdb-debug"))tell_object(find_player("raschaua"),"MDB-Warn:"+x)
+#define LOG_ERROR(x) if (this_player()) this_player()->ReceiveMsg(\
+ x, MT_DEBUG|MSG_DONT_IGNORE, MA_UNKNOWN, "MDB-Error: ",\
+ "MatDB")
+#define LOG_WARN(x) if (this_player()) this_player()->ReceiveMsg(\
+ x, MT_DEBUG|MSG_DONT_IGNORE, MA_UNKNOWN, "MDB-Warn: ",\
+ "MatDB")
// Prototypes:
// (Liefert den Anteil der Materialgruppe grp an mats)
@@ -467,15 +474,23 @@
if (!stringp(fn) || !sizeof(fn))
fn = DOC_DIR("materialliste");
if (file_size(fn) >= 0) {
- printf("Datei %s existiert bereits, loesche sie\n", fn);
+ debug_message(
+ sprintf("Datei %s existiert bereits, loesche sie\n", fn),
+ DMSG_STAMP);
rm(fn);
}
- if (write_file(fn, "Material Liste\n==============\n\n")) {
+ if (write_file(fn, "Material Liste\n==============\n\n"))
+ {
dump_material(fn);
write_file(fn, gen_doc_foot("materialgruppen"));
- printf("Materialliste erfolgreich in Datei %s geschrieben\n", fn);
- } else
- printf("Konnte Liste nicht in Datei %s schreiben, Abbruch\n", fn);
+ debug_message(
+ sprintf("Materialliste erfolgreich in Datei %s geschrieben\n", fn),
+ DMSG_STAMP);
+ }
+ else
+ debug_message(
+ sprintf("Konnte Liste nicht in Datei %s schreiben, Abbruch\n", fn),
+ DMSG_STAMP);
}
}
@@ -490,15 +505,23 @@
if (!stringp(fn) || !sizeof(fn))
fn = DOC_DIR("materialgruppen");
if (file_size(fn) >= 0) {
- printf("Datei %s existiert bereits, loesche sie\n", fn);
+ debug_message(
+ sprintf("Datei %s existiert bereits, loesche sie\n", fn),
+ DMSG_STAMP);
rm(fn);
}
- if (write_file(fn, "Materialgruppen\n===============\n")) {
+ if (write_file(fn, "Materialgruppen\n===============\n"))
+ {
map(sort_array(m_indices(material_groups), #'>), #'dump_group, fn);
write_file(fn, gen_doc_foot("materialliste"));
- printf("Materialliste erfolgreich in Datei %s geschrieben\n", fn);
- } else
- printf("Konnte Liste nicht in Datei %s schreiben, Abbruch\n", fn);
+ debug_message(
+ sprintf("Materialliste erfolgreich in Datei %s geschrieben\n", fn),
+ DMSG_STAMP);
+ }
+ else
+ debug_message(
+ sprintf("Konnte Liste nicht in Datei %s schreiben, Abbruch\n", fn),
+ DMSG_STAMP);
}
}
@@ -513,14 +536,21 @@
string txt;
if (!stringp(fn) || !sizeof(fn))
fn = HEADERFILE;
- if (file_size(fn) >= 0) {
- printf("Datei %s existiert bereits, loesche sie\n", fn);
+ if (file_size(fn) >= 0)
+ {
+ debug_message(
+ sprintf("Datei %s existiert bereits, loesche sie\n", fn),
+ DMSG_STAMP);
rm(fn);
}
if (dump_material_h(fn))
- printf("Headerdatei erfolgreich in %s geschrieben\n", fn);
+ debug_message(
+ sprintf("Headerdatei erfolgreich in %s geschrieben\n", fn),
+ DMSG_STAMP);
else
- printf("Konnte Headerdatei nicht in Datei %s schreiben, Abbruch\n", fn);
+ debug_message(
+ sprintf("Konnte Headerdatei nicht in Datei %s schreiben, Abbruch\n",
+ fn), DMSG_STAMP);
}
}