]> jfr.im git - solanum.git/commitdiff
reject functions from ratbox3
authorValery Yatsko <redacted>
Wed, 2 Apr 2008 10:41:37 +0000 (14:41 +0400)
committerValery Yatsko <redacted>
Wed, 2 Apr 2008 10:41:37 +0000 (14:41 +0400)
include/reject.h
src/hostmask.c
src/reject.c

index 2a36f9a36b6e1f83ca58194f127268119dfe01d2..94dbe5a62ddb07318a7a9f774b221c806342d4d8 100644 (file)
@@ -31,6 +31,9 @@
 
 extern rb_dlink_list delay_exit;
 
+struct ConfItem *find_dline(struct sockaddr *addr);\r
+struct ConfItem *find_dline_exact(struct sockaddr *addr, unsigned int bitlen);
+
 void init_reject(void);
 int check_reject(struct Client *);
 void add_reject(struct Client *, const char *mask1, const char *mask2);
index 273f1169d2c3f94473e4be9c80fae1a026e29f82..772b020eba778ac458ce37f1e2bfc8970732f614 100644 (file)
@@ -416,21 +416,6 @@ find_address_conf(const char *host, const char *sockhost, const char *user,
        return iconf;
 }
 
-/* struct ConfItem* find_dline(struct rb_sockaddr_storage*, int)
- * Input: An address, an address family.
- * Output: The best matching D-line or exempt line.
- * Side effects: None.
- */
-struct ConfItem *
-find_dline(struct sockaddr *addr, int aftype)
-{
-       struct ConfItem *eline;
-       eline = find_conf_by_address(NULL, NULL, NULL, addr, CONF_EXEMPTDLINE | 1, aftype, NULL);
-       if(eline)
-               return eline;
-       return find_conf_by_address(NULL, NULL, NULL, addr, CONF_DLINE | 1, aftype, NULL);
-}
-
 /* void find_exact_conf_by_address(const char*, int, const char *)
  * Input: 
  * Output: ConfItem if found
index 02ddfb844979d3d1e3757d4dfc9fcbf7d5d162ba..2b0848dabdd1d3dc23b3535ce06b0357efe2ed3c 100644 (file)
@@ -28,6 +28,8 @@
 #include "patricia.h"
 #include "client.h"
 #include "s_conf.h"
+#include "event.h"
+#include "rb_tools.h"
 #include "reject.h"
 #include "s_stats.h"
 #include "msg.h"
@@ -98,11 +100,11 @@ reject_expires(void *unused)
                pnode = ptr->data;
                rdata = pnode->data;            
 
-               if(rdata->time + ConfigFileEntry.reject_duration > rb_current_time())
+               if(rdata->time + ConfigFileEntry.reject_duration > CurrentTime)
                        continue;
 
                rb_dlinkDelete(ptr, &reject_list);
-               rb_free(rdata);
+               MyFree(rdata);
                patricia_remove(reject_tree, pnode);
        }
 }
@@ -112,8 +114,8 @@ init_reject(void)
 {
        reject_tree = New_Patricia(PATRICIA_BITS);
        unknown_tree = New_Patricia(PATRICIA_BITS);
-       rb_event_add("reject_exit", reject_exit, NULL, DELAYED_EXIT_TIME);
-       rb_event_add("reject_expires", reject_expires, NULL, 60);
+       eventAdd("reject_exit", reject_exit, NULL, DELAYED_EXIT_TIME);
+       eventAdd("reject_expires", reject_expires, NULL, 60);
 }
 
 
@@ -137,7 +139,7 @@ add_reject(struct Client *client_p, const char *mask1, const char *mask2)
        if((pnode = match_ip(reject_tree, (struct sockaddr *)&client_p->localClient->ip)) != NULL)
        {
                rdata = pnode->data;
-               rdata->time = rb_current_time();
+               rdata->time = CurrentTime;
                rdata->count++;
        }
        else
@@ -148,9 +150,9 @@ add_reject(struct Client *client_p, const char *mask1, const char *mask2)
                        bitlen = 128;
 #endif
                pnode = make_and_lookup_ip(reject_tree, (struct sockaddr *)&client_p->localClient->ip, bitlen);
-               pnode->data = rdata = rb_malloc(sizeof(struct reject_data));
+               pnode->data = rdata = MyMalloc(sizeof(struct reject_data));
                rb_dlinkAddTail(pnode, &rdata->rnode, &reject_list);
-               rdata->time = rb_current_time();
+               rdata->time = CurrentTime;
                rdata->count = 1;
        }
        rdata->mask_hashv = hashv;
@@ -172,7 +174,7 @@ check_reject(struct Client *client_p)
        {
                rdata = pnode->data;
 
-               rdata->time = rb_current_time();
+               rdata->time = CurrentTime;
                if(rdata->count > ConfigFileEntry.reject_after_count)
                {
                        ServerStats->is_rej++;
@@ -199,7 +201,7 @@ flush_reject(void)
                pnode = ptr->data;
                rdata = pnode->data;
                rb_dlinkDelete(ptr, &reject_list);
-               rb_free(rdata);
+               MyFree(rdata);
                patricia_remove(reject_tree, pnode);
        }
 }
@@ -218,7 +220,7 @@ remove_reject_ip(const char *ip)
        {
                struct reject_data *rdata = pnode->data;
                rb_dlinkDelete(&rdata->rnode, &reject_list);
-               rb_free(rdata);
+               MyFree(rdata);
                patricia_remove(reject_tree, pnode);
                return 1;
        }
@@ -246,7 +248,7 @@ remove_reject_mask(const char *mask1, const char *mask2)
                if (rdata->mask_hashv == hashv)
                {
                        rb_dlinkDelete(ptr, &reject_list);
-                       rb_free(rdata);
+                       MyFree(rdata);
                        patricia_remove(reject_tree, pnode);
                        n++;
                }