summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/extern.h4
-rw-r--r--include/services.h5
2 files changed, 6 insertions, 3 deletions
diff --git a/include/extern.h b/include/extern.h
index 488896779..ad6274754 100644
--- a/include/extern.h
+++ b/include/extern.h
@@ -1016,7 +1016,7 @@ E void finish_sync(Server *serv, int sync_links);
/**** sessions.c ****/
-E Exception *exceptionlist[1024];
+E Exception *exceptions;
E int16 nexceptions;
E Session *sessionlist[1024];
@@ -1038,7 +1038,7 @@ E void expire_exceptions(void);
E Session *findsession(const char *host);
E Exception *find_host_exception(const char *host);
-E Exception *exception_add(User * u, const char *mask, const int limit,
+E int exception_add(User * u, const char *mask, const int limit,
const char *reason, const char *who,
const time_t expires);
diff --git a/include/services.h b/include/services.h
index b40d7e785..2ee228233 100644
--- a/include/services.h
+++ b/include/services.h
@@ -1069,13 +1069,16 @@ struct newsitem_ {
struct exception_ {
- Exception *prev, *next;
char *mask; /* Hosts to which this exception applies */
int limit; /* Session limit for exception */
char who[NICKMAX]; /* Nick of person who added the exception */
char *reason; /* Reason for exception's addition */
time_t time; /* When this exception was added */
time_t expires; /* Time when it expires. 0 == no expiry */
+ int num; /* Position in exception list; used to track
+ * positions when deleting entries. It is
+ * symbolic and used internally. It is
+ * calculated at load time and never saved. */
};
/*************************************************************************/