pkgsrc-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: spamd pkgsrc issues
Jeremy C. Reed wrote:
+CPPFLAGS+= -DSPAMD_HOME=\"${VARBASE}/chroot/spamd\"
OWN_DIRS= ${VARBASE}/chroot/spamd
RCD_SCRIPTS= pfspamd
CONF_FILES= ${PREFIX}/share/examples/spamd/spamd.conf \
${PKG_SYSCONFDIR}/spamd.conf
+# PATH_SPAMD_CONF "/usr/pkg/etc/spamd.conf"
+
+
SUBST_CLASSES+= fix
SUBST_STAGE.fix= post-patch
SUBST_FILES.fix= spamd/spamd.8
I would rather see this sed goop go away and replaced by a real patch
that can be sent upstream to the spamd folks.
@@ -50,4 +55,13 @@
${INSTALL_DATA} ${WRKSRC}/etc/spamd.conf ${PREFIX}/share/examples/spamd
.include "../../security/pflkm/buildlink3.mk"
+
+# Necessary so USE_BUILTIN.pflkm will be defined
+.include "../../security/pflkm/builtin.mk"
+
+# Using LOCALBASE instead of PREFIX, since not defined yet
+.if !empty(USE_BUILTIN.pflkm:M[Nn][Oo]) && exists(${LOCALBASE}/sbin/pfctl)
+CPPFLAGS+= -DPATH_PFCTL=\"${LOCALBASE}/sbin/pfctl\"
+.endif
This dance is not necessary. You should remove everything after you
include pflkm/buildlink3.mk and just say:
CPPFLAGS+= -DPATH_PFCTL=\"${BUILDLINK_PREFIX.pflkm}/sbin/pfctl\"
--- spamd/spamd.c.orig 2006-03-29 23:35:44.000000000 -0800
+++ spamd/spamd.c 2006-03-29 23:41:51.000000000 -0800
@@ -1162,8 +1162,8 @@
}
jail:
- if (chroot("/var/empty") == -1 || chdir("/") == -1) {
- syslog(LOG_ERR, "cannot chdir to /var/empty.");
+ if (chroot(SPAMD_HOME) == -1 || chdir("/") == -1) {
+ syslog(LOG_ERR, "cannot chdir to " SPAMD_HOME ".");
exit(1);
}
I think we should rename this to PATH_SPAMD_HOME to be consistent with
how the other macros are named. We should add this to the top of spamd.c:
#ifndef PATH_SPAMD_HOME
#define PATH_SPAMD_HOME "/var/empty"
#endif
And then just use PATH_SPAMD_HOME in the .c file.
--- spamd-setup/spamd-setup.c.orig 2006-03-29 23:55:11.000000000 -0800
+++ spamd-setup/spamd-setup.c 2006-03-29 23:56:12.000000000 -0800
@@ -42,8 +42,12 @@
#include <zlib.h>
#define PATH_FTP "/usr/bin/ftp"
+#ifndef PATH_PFCTL
#define PATH_PFCTL "/sbin/pfctl"
+#endif
+#ifndef PATH_SPAMD_CONF
#define PATH_SPAMD_CONF "/usr/pkg/etc/spamd.conf"
+#endif
#define SPAMD_ARG_MAX 256 /* max # of args to an exec */
This patch looks like it was generated after the SUBST_SED stuff was
run. I doubt this applies cleanly to the extracted sources, but I agree
with the intent of your changes.
--- spamd/grey.h.orig 2006-03-29 23:55:23.000000000 -0800
+++ spamd/grey.h 2006-03-29 23:56:36.000000000 -0800
@@ -21,7 +21,9 @@
#define GREYEXP (60 * 60 * 4) /* remove grey entries after 4 hours */
#define WHITEEXP (60 * 60 * 24 * 36) /* remove white entries after 36 days */
#define TRAPEXP (60 * 60 * 24) /* hitting a spamtrap blacklists for a day */
+#ifndef PATH_PFCTL
#define PATH_PFCTL "/sbin/pfctl"
+#endif
#define DB_SCAN_INTERVAL 60
#define PATH_SPAMD_DB "/var/db/spamd"
I think if we are going down the route you're taking, then you should
also do an ifndef wrapper around PATH_SPAMD_DB so that we can point it
to ${VARBASE} in the package Makefile.
Cheers,
-- Johnny Lam <jlam%pkgsrc.org@localhost>
Home |
Main Index |
Thread Index |
Old Index