Apply by doing: cd /usr/src patch -p0 < 003_spamd.patch Then build and install spamd. cd libexec/spamd make obj make cleandir make depend make make install Index: libexec/spamd/sync.c =================================================================== RCS file: /cvs/src/libexec/spamd/sync.c,v retrieving revision 1.1 retrieving revision 1.1.2.1 diff -u -p -r1.1 -r1.1.2.1 --- libexec/spamd/sync.c 4 Mar 2007 03:19:41 -0000 1.1 +++ libexec/spamd/sync.c 28 Apr 2007 02:25:52 -0000 1.1.2.1 @@ -1,4 +1,4 @@ -/* $OpenBSD: sync.c,v 1.1 2007/03/04 03:19:41 beck Exp $ */ +/* $OpenBSD: sync.c,v 1.1.2.1 2007/04/28 02:25:52 ckuethe Exp $ */ /* * Copyright (c) 2006, 2007 Reyk Floeter @@ -65,7 +65,7 @@ struct sync_host { LIST_ENTRY(sync_host) h_entry; char *h_name; - struct sockaddr_in h_addr; + struct sockaddr_in sh_addr; }; LIST_HEAD(synchosts, sync_host) sync_hosts = LIST_HEAD_INITIALIZER(sync_hosts); @@ -105,9 +105,9 @@ sync_addhost(const char *name, u_short p return (ENOMEM); } - shost->h_addr.sin_family = AF_INET; - shost->h_addr.sin_port = htons(port); - shost->h_addr.sin_addr.s_addr = addr->sin_addr.s_addr; + shost->sh_addr.sin_family = AF_INET; + shost->sh_addr.sin_port = htons(port); + shost->sh_addr.sin_addr.s_addr = addr->sin_addr.s_addr; freeaddrinfo(res0); LIST_INSERT_HEAD(&sync_hosts, shost, h_entry); @@ -115,7 +115,7 @@ sync_addhost(const char *name, u_short p if (debug) fprintf(stderr, "added spam sync host %s " "(address %s, port %d)\n", shost->h_name, - inet_ntoa(shost->h_addr.sin_addr), port); + inet_ntoa(shost->sh_addr.sin_addr), port); return (0); } @@ -412,9 +412,9 @@ sync_send(struct iovec *iov, int iovlen) LIST_FOREACH(shost, &sync_hosts, h_entry) { if (debug) fprintf(stderr, "sending sync message to %s (%s)\n", - shost->h_name, inet_ntoa(shost->h_addr.sin_addr)); - msg.msg_name = &shost->h_addr; - msg.msg_namelen = sizeof(shost->h_addr); + shost->h_name, inet_ntoa(shost->sh_addr.sin_addr)); + msg.msg_name = &shost->sh_addr; + msg.msg_namelen = sizeof(shost->sh_addr); sendmsg(syncfd, &msg, 0); } } @@ -497,6 +497,7 @@ sync_update(time_t now, char *helo, char /* Send message to the target hosts */ sync_send(iov, i); + HMAC_CTX_cleanup(&ctx); } void @@ -552,6 +553,7 @@ sync_addr(time_t now, time_t expire, cha /* Send message to the target hosts */ sync_send(iov, i); + HMAC_CTX_cleanup(&ctx); } void