summaryrefslogtreecommitdiff
path: root/server/server.c
diff options
context:
space:
mode:
authorGravatar Karl Ramm <kcr@1ts.org>2009-04-10 01:17:18 +0000
committerGravatar Karl Ramm <kcr@1ts.org>2009-04-10 01:17:18 +0000
commit95297b57d5487ecffac1ce5e4df0fcf6832b9332 (patch)
treea9f839ceeebf5b93663e8a40f47fbd18d665e539 /server/server.c
parent64aad8a316c242007f4e90e5fd3b87c731d7f42b (diff)
As in [2406], the C preprocessor has seen enough abuse; it is the
future, so we can abuse inline functions instead.
Diffstat (limited to 'server/server.c')
-rw-r--r--server/server.c19
1 files changed, 12 insertions, 7 deletions
diff --git a/server/server.c b/server/server.c
index d20d420..1abc03d 100644
--- a/server/server.c
+++ b/server/server.c
@@ -21,11 +21,16 @@ static const char rcsid_server_c[] = "$Id$";
#endif
#endif
-#define SRV_NACKTAB_HASHSIZE 1023
-#define SRV_NACKTAB_HASHVAL(which, uid) ((unsigned int) \
- ((which) ^ (uid).zuid_addr.s_addr ^ \
- (uid).tv.tv_sec ^ (uid).tv.tv_usec) \
- % SRV_NACKTAB_HASHSIZE)
+enum {
+ SRV_NACKTAB_HASHSIZE = 1023
+};
+inline unsigned int
+srv_nacktab_hashval(int which, ZUnique_Id_t uid) {
+ return (which ^
+ uid.zuid_addr.s_addr ^ uid.tv.tv_sec ^ uid.tv.tv_usec)
+ % SRV_NACKTAB_HASHSIZE;
+}
+
/*
* Server manager. Deal with traffic to and from other servers.
*
@@ -1290,7 +1295,7 @@ server_forw_reliable(Server *server,
nacked->packsz = packlen;
nacked->uid = notice->z_uid;
nacked->timer = timer_set_rel(rexmit_times[0], srv_rexmit, nacked);
- hashval = SRV_NACKTAB_HASHVAL(nacked->dest.srv_idx, nacked->uid);
+ hashval = srv_nacktab_hashval(nacked->dest.srv_idx, nacked->uid);
Unacked_insert(&srv_nacktab[hashval], nacked);
}
@@ -1337,7 +1342,7 @@ srv_nack_cancel(ZNotice_t *notice,
syslog(LOG_ERR, "non-server ack?");
return;
}
- hashval = SRV_NACKTAB_HASHVAL(server - otherservers, notice->z_uid);
+ hashval = srv_nacktab_hashval(server - otherservers, notice->z_uid);
for (nacked = srv_nacktab[hashval]; nacked; nacked = nacked->next) {
if (nacked->dest.srv_idx == server - otherservers
&& ZCompareUID(&nacked->uid, &notice->z_uid)) {