X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=src%2Fban.h;h=a8e6532fcadf298b8939814aeb6d73db586c861f;hb=7827bf072f3d1012ee88785d3d904a30070d5cd1;hp=61d5774b03c8510928606bae4503d966ba0df4df;hpb=4c431fe65269e9b1d452855b9df8cfe80683b691;p=umurmur.git diff --git a/src/ban.h b/src/ban.h index 61d5774..a8e6532 100644 --- a/src/ban.h +++ b/src/ban.h @@ -1,5 +1,5 @@ -/* Copyright (C) 2009-2012, Martin Johansson - Copyright (C) 2005-2012, Thorvald Natvig +/* Copyright (C) 2009-2014, Martin Johansson + Copyright (C) 2005-2014, Thorvald Natvig All rights reserved. @@ -37,17 +37,25 @@ #include "timer.h" typedef struct { - uint8_t hash[20]; - in_addr_t address; + struct dlist node; + struct sockaddr_storage address; char *reason; char *name; - etimer_t startTime; - struct dlist node; + time_t time; + uint32_t duration; + uint32_t mask; + uint8_t hash[20]; } 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