peercache expiren, wenn zu gross
Wenn mehr als 1000 IPs drin sind, Liste loeschen.
Ermoeglicht zwar "missbrauch", aber dazu tun es
in Mengen Connects ohne MSSP-Abfrage.
Change-Id: I003f22c41ccd5c8b522c231b578e1c4c750264bb
diff --git a/secure/misc/mssp.c b/secure/misc/mssp.c
index 4c45388..b5f91f2 100644
--- a/secure/misc/mssp.c
+++ b/secure/misc/mssp.c
@@ -156,7 +156,10 @@
public void print_mssp_response() {
string ip = query_ip_number(previous_object());
mapping ldata;
- if (stringp(ip)) {
+ if (sizeof(peers) > 1000)
+ peers = ([:1]);
+ if (stringp(ip))
+ {
// Vollen Datensatz alle ("CRAWL DELAY" / 2) h, daher * 1800.
if (peers[ip] > (time() - (to_int(data["CRAWL DELAY"]) || 1) * 1800)) {
// this peers asks to often and gets only the minimal dataset
@@ -193,6 +196,9 @@
string ip = query_ip_number(previous_object());
string res;
+ if (sizeof(peers) > 1000)
+ peers = ([:1]);
+
if (stringp(ip)) {
// Vollen Datensatz alle ("CRAWL DELAY" / 2) h, daher * 1800.
if (peers[ip] > (time() - (to_int(data["CRAWL DELAY"]) || 1) * 1800)) {