-/* Copyright (C) 2009-2011, Martin Johansson <martin@fatbob.nu>
- Copyright (C) 2005-2011, Thorvald Natvig <thorvald@natvig.com>
+/* Copyright (C) 2009-2014, Martin Johansson <martin@fatbob.nu>
+ Copyright (C) 2005-2014, Thorvald Natvig <thorvald@natvig.com>
All rights reserved.
typedef struct {
uint8_t hash[20];
- in_addr_t address;
+ struct sockaddr_storage address;
+ uint32_t mask;
char *reason;
char *name;
+ time_t time;
+ uint32_t duration;
etimer_t startTime;
struct dlist node;
} ban_t;
void Ban_UserBan(client_t *client, char *reason);
void Ban_pruneBanned();
bool_t Ban_isBanned(client_t *client);
-bool_t Ban_isBannedAddr(in_addr_t *addr);
+bool_t Ban_isBannedAddr(struct sockaddr_storage *address);
+int Ban_getBanCount(void);
+message_t *Ban_getBanList(void);
+void Ban_putBanList(message_t *msg, int n_bans);
+void Ban_clearBanList(void);
+void Ban_init(void);
+void Ban_deinit(void);
#endif