players_deny.c-Dateireferenz

#include "/secure/wizlevels.h"
#include "/secure/master.h"
Include-Abhängigkeitsdiagramm für players_deny.c:

gehe zum Quellcode dieser Datei

Makrodefinitionen

#define WHITELIST   "/secure/ARCH/players_deny_whitelist.o"
#define TARGETLIST   "/secure/ARCH/players_deny_targets.o"
#define WHITELISTDUMP   "/secure/ARCH/players_deny_whitelist.dump"
#define TARGETLISTDUMP   "/secure/ARCH/players_deny_targets.dump"
#define PLDENY_LEARNMODE

Funktionen

private mapping ParseList (string list)
private void ParseWhiteList ()
private void ParseTargetList ()
private void DumpList (mapping list, string file)
private void DumpWhiteList ()
private void DumpTargetList ()
public void DumpPLDenyLists ()
public void SavePLDenyLists ()
public void LoadPLDenylists ()
mixed include_file (string file, string compiled_file, int sys_include)
mixed inherit_file (string file, string compiled_file)

Variablen

nosave private mapping whitelist
nosave private mapping targets

Makro-Dokumentation

#define PLDENY_LEARNMODE

Definiert in Zeile 20 der Datei players_deny.c.

#define TARGETLIST   "/secure/ARCH/players_deny_targets.o"

Definiert in Zeile 16 der Datei players_deny.c.

#define TARGETLISTDUMP   "/secure/ARCH/players_deny_targets.dump"

Definiert in Zeile 18 der Datei players_deny.c.

Wird benutzt von DumpTargetList() und ParseTargetList().

#define WHITELIST   "/secure/ARCH/players_deny_whitelist.o"

Definiert in Zeile 15 der Datei players_deny.c.

#define WHITELISTDUMP   "/secure/ARCH/players_deny_whitelist.dump"

Definiert in Zeile 17 der Datei players_deny.c.

Wird benutzt von DumpWhiteList() und ParseWhiteList().


Dokumentation der Funktionen

private void DumpList ( mapping  list,
string  file 
)

Definiert in Zeile 49 der Datei players_deny.c.

Wird benutzt von DumpTargetList() und DumpWhiteList().

00049                                                  {
00050   if (!stringp(file) || !mappingp(list)
00051       || !strlen(file) || !sizeof(list))
00052     return;
00053   
00054   write_file(file, implode(m_indices(list),"\n"), 1);
00055 }

Hier ist ein Graph der zeigt, wo diese Funktion aufgerufen wird:

public void DumpPLDenyLists (  ) 

Definiert in Zeile 66 der Datei players_deny.c.

Benutzt DumpWhiteList().

00066                               {
00067   if ( extern_call() && funcall(symbol_function('secure_level)) < ARCH_LVL )
00068     return;
00069   DEBUG("Dumping PLDenylists\n");
00070   limited(#'DumpWhiteList);
00071   limited(#'DumpTargetList);
00072 }

Hier ist ein Graph der zeigt, was diese Funktion aufruft:

private void DumpTargetList (  ) 

Definiert in Zeile 61 der Datei players_deny.c.

Benutzt DEBUG, DumpList(), TARGETLISTDUMP und targets.

00061                               {
00062   DEBUG("Dumping Targetlist\n");
00063   DumpList(targets, TARGETLISTDUMP);
00064 }

Hier ist ein Graph der zeigt, was diese Funktion aufruft:

private void DumpWhiteList (  ) 

Definiert in Zeile 57 der Datei players_deny.c.

Benutzt DEBUG, DumpList(), whitelist und WHITELISTDUMP.

Wird benutzt von DumpPLDenyLists().

00057                              {
00058   DEBUG("Dumping Whitelist\n");
00059   DumpList(whitelist, WHITELISTDUMP);
00060 }

Hier ist ein Graph der zeigt, was diese Funktion aufruft:

Hier ist ein Graph der zeigt, wo diese Funktion aufgerufen wird:

mixed include_file ( string  file,
string  compiled_file,
int  sys_include 
)

Definiert in Zeile 107 der Datei players_deny.c.

00107                                                                        {
00108   
00109   if (sys_include) return 0;
00110   // Loggen, wenn Files ausserhalb /players/ Kram aus /players/
00111   // inkludieren/erben.
00112   if (strstr(file, "/players/") == 0
00113       && (strstr(compiled_file,"/players/") == -1
00114       && !member(whitelist, compiled_file) )) {
00115 #ifdef PLDENY_LEARNMODE
00116     DEBUG("include_file(): Whitelisting: "+compiled_file+"\n");
00117     m_add(whitelist, compiled_file);
00118     m_add(targets, file);
00119     funcall( symbol_function('log_file), "PLAYERSWHITELIST", 
00120         sprintf("%s (inkludiert %s)\n",compiled_file, file),
00121         1000000);
00122 #else
00123     // verweigern.
00124     return -1;
00125 #endif
00126   }
00127   return 0;
00128 }

mixed inherit_file ( string  file,
string  compiled_file 
)

Definiert in Zeile 130 der Datei players_deny.c.

Benutzt DEBUG, targets und whitelist.

00130                                                       {
00131 
00132   // Loggen, wenn Files ausserhalb /players/ Kram aus /players/
00133   // inkludieren/erben.
00134   if (strstr(file, "/players/") == 0
00135       && (strstr(compiled_file,"/players/") == -1
00136       && !member(whitelist, compiled_file) )) {
00137 #ifdef PLDENY_LEARNMODE
00138     DEBUG("include_file(): Whitelisting: "+compiled_file+"\n");
00139     m_add(whitelist, compiled_file);
00140     m_add(targets, file);
00141     funcall( symbol_function('log_file), "PLAYERSWHITELIST", 
00142         sprintf("%s (erbt %s)\n",compiled_file, file),
00143         1000000);
00144 #else
00145     // verweigern.
00146     return -1;
00147 #endif
00148   }
00149   return 0;
00150 }

public void LoadPLDenylists (  ) 

Definiert in Zeile 84 der Datei players_deny.c.

Benutzt ParseWhiteList().

Wird benutzt von inaugurate_master().

00084                               {
00085   mixed tmp;
00086 
00087   if ( extern_call() && funcall(symbol_function('secure_level)) < ARCH_LVL )
00088     return;
00089 
00090   write("Loading PLDenylists\n");
00091 
00092   if (stringp(tmp=read_file(WHITELIST))) {
00093     // savefile exists
00094     whitelist = restore_value(tmp);
00095   }
00096   else {
00097       limited(#'ParseWhiteList);
00098   }
00099   if (stringp(tmp=read_file(TARGETLIST))) {
00100     targets = restore_value(tmp);
00101   }
00102   else {
00103       limited(#'ParseTargetList);
00104   }
00105 }

Hier ist ein Graph der zeigt, was diese Funktion aufruft:

Hier ist ein Graph der zeigt, wo diese Funktion aufgerufen wird:

private mapping ParseList ( string  list  ) 

Definiert in Zeile 30 der Datei players_deny.c.

Benutzt data.

Wird benutzt von ParseTargetList() und ParseWhiteList().

00030                                        {
00031   mixed data;
00032 
00033   if (!stringp(list)) return ([:0 ]);
00034   if (!stringp(data = read_file(list))) return ([:0 ]);
00035   data = explode(data, "\n") || ({});
00036 
00037   return mkmapping(data);
00038 }

Hier ist ein Graph der zeigt, wo diese Funktion aufgerufen wird:

private void ParseTargetList (  ) 

Definiert in Zeile 44 der Datei players_deny.c.

Benutzt DEBUG, ParseList(), TARGETLISTDUMP und targets.

00044                                {
00045   DEBUG("Parsing Targetlist\n");
00046   targets=ParseList(TARGETLISTDUMP);
00047 }

Hier ist ein Graph der zeigt, was diese Funktion aufruft:

private void ParseWhiteList (  ) 

Definiert in Zeile 40 der Datei players_deny.c.

Benutzt DEBUG, ParseList(), whitelist und WHITELISTDUMP.

Wird benutzt von LoadPLDenylists().

00040                               {
00041   DEBUG("Parsing Whitelist\n");
00042   whitelist=ParseList(WHITELISTDUMP);
00043 }

Hier ist ein Graph der zeigt, was diese Funktion aufruft:

Hier ist ein Graph der zeigt, wo diese Funktion aufgerufen wird:

public void SavePLDenyLists (  ) 

Definiert in Zeile 74 der Datei players_deny.c.

00074                               {
00075   if ( extern_call() && funcall(symbol_function('secure_level)) < ARCH_LVL )
00076     return;
00077   DEBUG("Saving PLDenyLists\n");
00078   write_file(WHITELIST,
00079       save_value(whitelist), 1);
00080   write_file(TARGETLIST,
00081       save_value(targets), 1);
00082 }


Variablen-Dokumentation

nosave private mapping targets

Definiert in Zeile 28 der Datei players_deny.c.

nosave private mapping whitelist

Definiert in Zeile 26 der Datei players_deny.c.

Wird benutzt von DumpWhiteList(), inherit_file() und ParseWhiteList().

Erzeugt am Thu Jun 3 14:41:35 2010 für MorgenGrauen Mudlib von  doxygen 1.6.3