View | Details | Raw Unified | Return to bug 244424 | Differences between
and this patch

Collapse All | Expand All

(-)GIDs (-1 / +1 lines)
Lines 186-192 Link Here
186
ot-recorder:*:243:
186
ot-recorder:*:243:
187
mastodon:*:244:
187
mastodon:*:244:
188
routinator:*:245:
188
routinator:*:245:
189
# free: 246
189
pyspf-milter:*:246:
190
fcron:*:247:
190
fcron:*:247:
191
# free: 248
191
# free: 248
192
# free: 249
192
# free: 249
(-)MOVED (+1 lines)
Lines 14386-14388 Link Here
14386
math/metis4|math/metis|2020-02-22|Has expired: EOL: use math/metis instead
14386
math/metis4|math/metis|2020-02-22|Has expired: EOL: use math/metis instead
14387
multimedia/cinelerra-gg||2020-02-22|Has expired: Broken, uses EOLed python27
14387
multimedia/cinelerra-gg||2020-02-22|Has expired: Broken, uses EOLed python27
14388
x11-toolkits/py-gnome2||2020-02-22|Has expired: Broken, uses EOLed python27
14388
x11-toolkits/py-gnome2||2020-02-22|Has expired: Broken, uses EOLed python27
14389
mail/postfix-policyd-spf-python|mail/spf-engine|2020-02-25|Project is superseded by successor
(-)UIDs (-1 / +1 lines)
Lines 191-197 Link Here
191
ot-recorder:*:243:243::0:0:OwnTracks Recorder:/nonexistent:/usr/sbin/nologin
191
ot-recorder:*:243:243::0:0:OwnTracks Recorder:/nonexistent:/usr/sbin/nologin
192
mastodon:*:244:244::0:0:Mastodon User:/usr/local/www/mastodon:/bin/sh
192
mastodon:*:244:244::0:0:Mastodon User:/usr/local/www/mastodon:/bin/sh
193
routinator:*:245:245::0:0:Routinator 3000 Pseudo User:/nonexistent:/usr/sbin/nologin
193
routinator:*:245:245::0:0:Routinator 3000 Pseudo User:/nonexistent:/usr/sbin/nologin
194
# free: 246
194
pyspf-milter:*:246:246::0:0:pyspf-milter:/nonexistent:/usr/sbin/nologin
195
fcron:*:247:247::0:0:fcron pseudo-user:/nonexistent:/usr/sbin/nologin
195
fcron:*:247:247::0:0:fcron pseudo-user:/nonexistent:/usr/sbin/nologin
196
# free: 248
196
# free: 248
197
# free: 249
197
# free: 249
(-)UPDATING (+10 lines)
Lines 5-10 Link Here
5
You should get into the habit of checking this file for changes each time
5
You should get into the habit of checking this file for changes each time
6
you update your ports collection, before attempting any port upgrades.
6
you update your ports collection, before attempting any port upgrades.
7
7
8
20200225:
9
  AFFECTS: users of mail/postfix-policyd-spf-python
10
  AUTHOR:  yasu@utahime.org
11
12
  This port is moved to mail/spf-engine because upstream project (pypolicyd-spf)
13
  is superseded by its successor (SPF Engine). And path of configuration file is
14
  also changed from ${PREFIX}/etc/postfix-policyd-spf-python/policyd-spf.conf to
15
  ${PREFIX}/etc/python-policyd-spf/policyd-spf.conf. So you need to move it to
16
  new location unless you use default one without changing.
17
8
20200223:
18
20200223:
9
  AFFECTS: users of security/gsasl
19
  AFFECTS: users of security/gsasl
10
  AUTHOR: hrs@FreeBSD.org
20
  AUTHOR: hrs@FreeBSD.org
(-)mail/Makefile (-1 / +1 lines)
Lines 486-492 Link Here
486
    SUBDIR += postfix-logwatch
486
    SUBDIR += postfix-logwatch
487
    SUBDIR += postfix-policyd-sf
487
    SUBDIR += postfix-policyd-sf
488
    SUBDIR += postfix-policyd-spf-perl
488
    SUBDIR += postfix-policyd-spf-perl
489
    SUBDIR += postfix-policyd-spf-python
490
    SUBDIR += postfix-policyd-weight
489
    SUBDIR += postfix-policyd-weight
491
    SUBDIR += postfix-postfwd
490
    SUBDIR += postfix-postfwd
492
    SUBDIR += postfix-sasl
491
    SUBDIR += postfix-sasl
Lines 648-653 Link Here
648
    SUBDIR += spampd
647
    SUBDIR += spampd
649
    SUBDIR += spamprobe
648
    SUBDIR += spamprobe
650
    SUBDIR += spamstats
649
    SUBDIR += spamstats
650
    SUBDIR += spf-engine
651
    SUBDIR += spfmilter
651
    SUBDIR += spfmilter
652
    SUBDIR += spfval
652
    SUBDIR += spfval
653
    SUBDIR += spmfilter
653
    SUBDIR += spmfilter
(-)mail/spf-engine/Makefile (-20 / +40 lines)
Lines 1-26 Link Here
1
# Created by: Giel van Schijndel <me@mortis.eu>
2
# $FreeBSD$
1
# $FreeBSD$
3
2
4
PORTNAME=	postfix-policyd-spf-python
3
PORTNAME=	spf-engine
5
PORTVERSION=	2.0.2
4
PORTVERSION=	2.9.2
6
CATEGORIES=	mail python
5
CATEGORIES=	mail python
7
MASTER_SITES=	CHEESESHOP
6
MASTER_SITES=	CHEESESHOP
8
PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
7
PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
9
DISTNAME=	pypolicyd-spf-${PORTVERSION}
10
8
11
MAINTAINER=	yasu@utahime.org
9
MAINTAINER=	yasu@utahime.org
12
COMMENT=	Pure Python Postfix policy daemon for SPF checking
10
COMMENT=	SPF engine for Postfix policy server and Milter implemented in Python
13
11
14
LICENSE=	APACHE20
12
LICENSE=	APACHE20 GPLv2+
15
LICENSE_FILE=	${WRKSRC}/COPYING
13
LICENSE_COMB=	multi
14
LICENSE_FILE_APACHE20=	${WRKSRC}/COPYING
15
LICENSE_FILE_GPLv2+ =	${WRKSRC}/GPL-2
16
16
17
RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}pyspf>0:mail/py-pyspf@${PY_FLAVOR} \
17
RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}authres>0:mail/py-authres@${PY_FLAVOR} \
18
		${PYTHON_PKGNAMEPREFIX}authres>0:mail/py-authres@${PY_FLAVOR}
18
		${PYTHON_PKGNAMEPREFIX}milter>0:mail/py-milter@${PY_FLAVOR} \
19
		${PYTHON_PKGNAMEPREFIX}pyspf>0:mail/py-pyspf@${PY_FLAVOR}
19
20
20
USES=		python:3.3+
21
USES=		python:3.3+ shebangfix
21
USE_PYTHON=	autoplist distutils
22
USE_PYTHON=	autoplist distutils
23
USE_RC_SUBR=	pyspf-milter
22
NO_ARCH=	yes
24
NO_ARCH=	yes
23
25
26
USERS=		${PYSPF_MILTER_USER}
27
GROUPS=		${PYSPF_MILTER_GROUP}
28
29
PYSPF_MILTER_USER=	pyspf-milter
30
PYSPF_MILTER_GROUP=	pyspf-milter
31
PYSPF_MILTER_RUNDIR=	/var/run/pyspf-milter
32
33
PLIST_FILES=	'@sample etc/python-policyd-spf/policyd-spf.conf.sample' \
34
		'@dir(${USERS},${GROUPS},755) ${PYSPF_MILTER_RUNDIR}'
35
24
PORTDOCS=	CHANGES \
36
PORTDOCS=	CHANGES \
25
		README \
37
		README \
26
		README.per_user_whitelisting \
38
		README.per_user_whitelisting \
Lines 28-50 Link Here
28
40
29
PKGMESSAGE=	${WRKSRC}/pkg-message
41
PKGMESSAGE=	${WRKSRC}/pkg-message
30
42
43
SHEBANG_FILES=	spf_engine/milter_spf.py \
44
		spf_engine/policyd_spf.py
45
31
SUB_FILES=	pkg-message
46
SUB_FILES=	pkg-message
47
SUB_LIST=	PYTHON_CMD=${PYTHON_CMD} \
48
		PYSPF_MILTER_RUNDIR=${PYSPF_MILTER_RUNDIR}
32
49
33
OPTIONS_DEFINE=	DOCS
50
OPTIONS_DEFINE=	DOCS
34
51
35
post-patch:
52
post-patch:
36
	@${MV} ${WRKSRC}/policyd-spf.conf ${WRKSRC}/policyd-spf.conf.sample
53
	@${REINPLACE_CMD} -e "s|/usr/local/etc/|${PREFIX}/etc/|" \
37
	@${REINPLACE_CMD} -e "s|/etc/python-policyd-spf/|${PREFIX}/etc/postfix-policyd-spf-python/|" \
54
		${WRKSRC}/spf_engine/milter_spf.py
38
		${WRKSRC}/policyd-spf
55
	@${REINPLACE_CMD} -e "s|/etc/|${PREFIX}/etc/|" \
39
	@${REINPLACE_CMD} -e "s|/etc/policyd-spf/|${PREFIX}/etc/postfix-policyd-spf-python/|" \
56
		${WRKSRC}/spf_engine/policyd_spf.py
40
		-e "s|/usr/bin/policyd-spf|${PREFIX}/bin/policyd-spf|" \
57
	@${REINPLACE_CMD} -e "s|/run|/var/run|" ${WRKSRC}/spf_engine/policydspfsupp.py
41
		-e "s|/etc/postfix/|${LOCALBASE}/etc/postfix/|" ${WRKSRC}/policyd-spf.1
58
	@${REINPLACE_CMD} -e "s|/etc/|${PREFIX}/etc/|" -e "s|/usr/bin/|${PREFIX}/bin/|" \
42
	@${REINPLACE_CMD} -e "s|/etc/policyd-spf/|${PREFIX}/etc/postfix-policyd-spf-python/|" \
59
		${WRKSRC}/policyd-spf.1 ${WRKSRC}/policyd-spf.conf.5 \
43
		${WRKSRC}/policyd-spf.conf.5
44
	@${REINPLACE_CMD} -e "s|/etc/policyd-spf/|${PREFIX}/etc/postfix-policyd-spf-python/|" \
45
		-e "s|/etc/pypolicyd-spf/|${PREFIX}/etc/postfix-policyd-spf-python/|" \
46
		${WRKSRC}/policyd-spf.peruser.5
60
		${WRKSRC}/policyd-spf.peruser.5
47
61
62
post-install:
63
	@${MKDIR} ${STAGEDIR}/var/run/pyspf-milter \
64
		${STAGEDIR}${PREFIX}/etc/python-policyd-spf
65
	${INSTALL_DATA} ${WRKSRC}/policyd-spf.conf \
66
		${STAGEDIR}${PREFIX}/etc/python-policyd-spf/policyd-spf.conf.sample
67
48
post-install-DOCS-on:
68
post-install-DOCS-on:
49
	@${MKDIR} ${STAGEDIR}/${DOCSDIR}
69
	@${MKDIR} ${STAGEDIR}/${DOCSDIR}
50
	cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR}
70
	cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR}
(-)mail/spf-engine/distinfo (-3 / +3 lines)
Lines 1-3 Link Here
1
TIMESTAMP = 1513282791
1
TIMESTAMP = 1582568246
2
SHA256 (pypolicyd-spf-2.0.2.tar.gz) = df9cf888583c1003ff8dd2f0c8c1e5f46de466b56de5ce56eed5f42765f0a8da
2
SHA256 (spf-engine-2.9.2.tar.gz) = 188a8bc78f1ddb40f1b87a0b6fe2fa78efa0b4cc5d984ff19a53724bb5c28131
3
SIZE (pypolicyd-spf-2.0.2.tar.gz) = 38546
3
SIZE (spf-engine-2.9.2.tar.gz) = 52737
(-)mail/spf-engine/files/patch-setup.py (-15 / +14 lines)
Lines 1-17 Link Here
1
--- setup.py.orig	2014-06-04 05:08:20 UTC
1
--- setup.py.orig	2019-10-27 01:15:11 UTC
2
+++ setup.py
2
+++ setup.py
3
@@ -13,10 +13,10 @@ setup(name='pypolicyd-spf',
3
@@ -25,11 +25,8 @@ setup(name='spf-engine',
4
       py_modules=['policydspfsupp', 'policydspfuser'],
4
     include_package_data=True,
5
       keywords = ['Postfix','spf','email'],
5
     data_files=[(os.path.join('share', 'man', 'man1'),
6
       scripts = ['policyd-spf'],
6
         ['policyd-spf.1']), (os.path.join('share', 'man', 'man5'),
7
-      data_files=[(os.path.join('share', 'man', 'man1'),
7
-        ['policyd-spf.conf.5']), (os.path.join('etc', 'python-policyd-spf'),
8
-          ['policyd-spf.1']), (os.path.join('share', 'man', 'man5'),
8
-        ['policyd-spf.conf']), (os.path.join('share', 'man', 'man5'),
9
-          ['policyd-spf.conf.5']), (os.path.join('/etc', 'python-policyd-spf'),
9
-        ['policyd-spf.peruser.5']), (os.path.join('lib', 'systemd', 'system'),
10
-          ['policyd-spf.conf']), (os.path.join('share', 'man', 'man5'),
10
-        ['system/pyspf-milter.service']),(os.path.join('etc', 'init.d'),
11
+      data_files=[(os.path.join('man', 'man1'),
11
-        ['system/pyspf-milter']) ],
12
+          ['policyd-spf.1']), (os.path.join('man', 'man5'),
12
+        ['policyd-spf.conf.5']), (os.path.join('share', 'man', 'man5'),
13
+          ['policyd-spf.conf.5']), (os.path.join('etc', 'postfix-policyd-spf-python'),
13
+        ['policyd-spf.peruser.5'])],
14
+          ['policyd-spf.conf.sample']), (os.path.join('man', 'man5'),
14
     classifiers = [
15
           ['policyd-spf.peruser.5'])],
16
       classifiers = [
17
         'Development Status :: 5 - Production/Stable',
15
         'Development Status :: 5 - Production/Stable',
16
         'Environment :: No Input/Output (Daemon)',
(-)mail/spf-engine/files/patch-spf__engine_milter__spf.py (+10 lines)
Line 0 Link Here
1
--- spf_engine/milter_spf.py.orig	2020-02-26 02:21:41 UTC
2
+++ spf_engine/milter_spf.py
3
@@ -37,7 +37,6 @@ import spf_engine.policydspfsupp as config
4
 from spf_engine.util import drop_privileges
5
 from spf_engine.policydspfsupp import _setExceptHook
6
 from spf_engine.util import write_pid
7
-from spf_engine.util import own_socketfile
8
 from spf_engine.util import fold
9
 
10
 __version__ = "2.9.2"
(-)mail/spf-engine/files/pkg-message.in (-2 / +41 lines)
Lines 2-11 Link Here
2
{ type: install
2
{ type: install
3
  message: <<EOM
3
  message: <<EOM
4
#
4
#
5
# To configure Postfix
5
# Using policyd-spf with Postfix
6
#
6
#
7
7
8
This package must be integrated with Postfix to be effective:
8
Policyd-spf must be integrated with Postfix to be effective:
9
9
10
 1. Add to your postfix master.cf:
10
 1. Add to your postfix master.cf:
11
11
Lines 32-37 Link Here
32
     configuration.
32
     configuration.
33
33
34
  4. Reload postfix.
34
  4. Reload postfix.
35
36
#
37
# Automatically starting pyspf-milter at boot time.
38
#
39
40
Add 'pyspf_milter_enable="YES"' to /etc/rc.conf.
41
42
#
43
# Using pyspf-milter with Sendmail
44
#
45
46
Following is an example configuration line to include in your sendmail.mc.
47
48
INPUT_MAIL_FILTER(`pyspf-milter', `S=local:/var/run/pyspf-milter/pyspf-milter.sock')dnl
49
50
#
51
# Using pyspf-milter with Postfix
52
#
53
54
Integration of pyspf-milter into Postfix is like any milter (See Postfix's
55
README_FILES/MILTER_README). But care is required to segregate outbound mail
56
from inbound mail to be checked. Here is example using milter macros to keep
57
the mail streams segregated.
58
59
%%PREFIX%%/etc/postfix/main.cf:
60
61
smtpd_milters = unix:/var/run/pyspf-milter/pyspf-milter.sock
62
63
%%PREFIX%%/etc/postfix/master.cf:
64
65
smtp       inet  n       -       -       -       -       smtpd
66
    ...
67
        -o milter_macro_daemon_name=VERIFYING
68
    ...
69
70
%%PREFIX%%/etc/python-policyd-spf/policyd-spf.conf:
71
72
MacroList               daemon_name|VERIFYING
73
35
EOM
74
EOM
36
}
75
}
37
]
76
]
(-)mail/spf-engine/files/pyspf-milter.in (+42 lines)
Line 0 Link Here
1
#!/bin/sh
2
3
# $FreeBSD$
4
#
5
# PROVIDE: pyspf_milter
6
# REQUIRE: LOGIN
7
# BEFORE: mail
8
# KEYWORD: shutdown
9
#
10
# Add the following lines to /etc/rc.conf to enable pyspf_milter:
11
#
12
# pyspf_milter_enable (bool)    Set to 'YES' to enable.
13
#                               Default: NO
14
# pyspf_milter_conffile (path)  Location of configuration file.
15
#                               Default: %%PREFIX%%/etc/python-policyd-spf/policyd-spf.conf
16
17
. /etc/rc.subr
18
19
name=pyspf_milter
20
rcvar=pyspf_milter_enable
21
22
load_rc_config $name
23
24
: ${pyspf_milter_enable:=NO}
25
: ${pyspf_milter_conffile:=%%PREFIX%%/etc/python-policyd-spf/policyd-spf.conf}
26
27
command=/usr/sbin/daemon
28
command_interpreter=%%PYTHON_CMD%%
29
procname=%%PREFIX%%/bin/pyspf-milter
30
command_args="-c -f ${procname} ${pyspf_milter_conffile}"
31
pidfile=%%PYSPF_MILTER_RUNDIR%%/pyspf-milter.pid
32
required_dirs=%%PYSPF_MILTER_RUNDIR%%
33
required_files=${pyspf_milter_conffile}
34
start_precmd=pyspf_milter_cleanup
35
stop_postcmd=pyspf_milter_cleanup
36
37
pyspf_milter_cleanup ()
38
{
39
    rm -f ${pidfile}
40
}
41
42
run_rc_command "$1"
(-)mail/spf-engine/pkg-descr (-3 / +7 lines)
Lines 1-4 Link Here
1
python-policyd-spf is a Postfix SMTPd policy engine for SPF checking. It is
1
This project provides the SPF (Sender Policy Framework) back-end for both
2
implemented in pure Python and uses the python-spf module.
2
pypolicyd-spf (for which it was originally developed) and an future SPF
3
milter using pymilter. The goal is to provide a common back-end for common
4
features for support SPF integration with Postfix and Sendmail using both
5
the Postfix policy service and the Sendmail milter protocol (also available
6
with Postfix).
3
7
4
WWW: https://launchpad.net/pypolicyd-spf/
8
WWW: https://launchpad.net/spf-engine

Return to bug 244424