pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

inn: Import version 2.6.3 as wip/inn



Module Name:	pkgsrc-wip
Committed By:	Michael Baeuerle <michael.baeuerle%stz-e.de@localhost>
Pushed By:	micha
Date:		Wed Sep 4 11:03:07 2019 +0200
Changeset:	0cb066bdec1d8b1ee550d8e9c1f4161c1eb29903

Added Files:
	inn/COMMIT_MSG
	inn/DESCR
	inn/MESSAGE
	inn/Makefile
	inn/Makefile.common
	inn/PLIST
	inn/TODO
	inn/buildlink3.mk
	inn/distinfo
	inn/files/innd.sh
	inn/options.mk
	inn/patches/patch-aa
	inn/patches/patch-ab
	inn/patches/patch-ac
	inn/patches/patch-ad
	inn/patches/patch-ag
	inn/patches/patch-ah
	inn/patches/patch-ak
	inn/patches/patch-al

Log Message:
inn: Import version 2.6.3 as wip/inn

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=0cb066bdec1d8b1ee550d8e9c1f4161c1eb29903

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 inn/COMMIT_MSG       |  79 ++++++++++++
 inn/DESCR            |  11 ++
 inn/MESSAGE          |  15 +++
 inn/Makefile         | 203 +++++++++++++++++++++++++++++++
 inn/Makefile.common  |  14 +++
 inn/PLIST            | 336 +++++++++++++++++++++++++++++++++++++++++++++++++++
 inn/TODO             |  18 +++
 inn/buildlink3.mk    |  12 ++
 inn/distinfo         |  14 +++
 inn/files/innd.sh    |  78 ++++++++++++
 inn/options.mk       |  45 +++++++
 inn/patches/patch-aa |  13 ++
 inn/patches/patch-ab |  15 +++
 inn/patches/patch-ac |  13 ++
 inn/patches/patch-ad |  14 +++
 inn/patches/patch-ag |  13 ++
 inn/patches/patch-ah |  24 ++++
 inn/patches/patch-ak |  13 ++
 inn/patches/patch-al |  15 +++
 19 files changed, 945 insertions(+)

diffs:
diff --git a/inn/COMMIT_MSG b/inn/COMMIT_MSG
new file mode 100644
index 0000000000..3bcfb874d0
--- /dev/null
+++ b/inn/COMMIT_MSG
@@ -0,0 +1,79 @@
+news/inn: Update to 2.6.3
+
+Changes in 2.6.3
+================
+* Fixed the selection of the elliptic curve to use with OpenSSL�1.1.0 or later;
+  NIST P-256 was enforced instead of using the most secure curve.
+* A new inn.conf parameter has been added to fine-tune the cipher suites to use
+  with TLS�1.3: the tlsciphers13 now permits configuring them. A separate cipher
+  suite configuration parameter is needed for TLS�1.3 because TLS�1.3 cipher
+  suites are not compatible with TLS�1.2, and vice-versa. In order to avoid
+  issues where legacy TLS�1.2 cipher suite configuration configured in the
+  tlsciphers parameter would inadvertently disable all TLS�1.3 cipher suites,
+  the inn.conf configuration has been separated out. 
+* Fixed a regression since INN�2.6.1 that prevented articles with
+  internationalized header fields (that is to say encoded in UTF-8) from being
+  posted.
+* Support for Python�3 has been added to INN. Embedded Python filtering and
+  authentication hooks for innd and nnrpd can now use version�3.3.0 or later of
+  the Python interpreter. In the 2.x series, version�2.3.0 or later is still
+  supported.
+  When configuring INN with the --with-python flag, the PYTHON environment
+  variable, when set, is used to select the interpreter to embed. Otherwise,
+  it is searched in standard paths. 
+  In case you change the Python interpreter to embed, make sure that the Python
+  scripts you use are written in the expected syntax for that version of the
+  Python interpreter. Notably, buffer objects have been replaced with memoryview
+  objects in Python�3, and UTF-8 encoding now really matters for string literals
+  (Python�3 uses bytes and Unicode objects).
+  INN documentation and samples of Python hooks have been updated to provide
+  more examples.
+* When a Python or Perl filter hook rejects an article, innd now mentions the
+  reason in response to CHECK and TAKETHIS commands. Previously, the reason was
+  given only for the IHAVE command.
+* nnrpd now properly logs the hostname of clients whose connection failed owing
+  to an issue during the negotiation of a TLS session or high load average.
+
+
+Changes in 2.6.2
+================
+* A new syntaxchecks parameter has been added in inn.conf. It permits
+  controlling the level of checks performed by innd and nnrpd. Up to now, only
+  one check can be enabled/disabled: when laxmid is mentioned in the values of
+  this new parameter, INN accepts Message-IDs that contain .. in the left part,
+  as well as Message-IDs with two @ (such Message-IDs would otherwise be
+  considered as syntactically invalid). See the inn.conf(5) man page for more
+  details.
+  The check is disabled by default (no-laxmid), which corresponds to the legacy
+  behaviour of INN�2.6.1 and earlier.
+* Use of the ovdb_server helper server is now the default when using the ovdb
+  overview method, that is to say the default value for the readserver parameter
+  in ovdb.conf is now set to true. It improves stability and avoids deadlocks,
+  timing issues and corrupted ovdb databases.
+* mailpost now removes empty header fields before attempting to post articles,
+  and keeps trace of them in the X-Mailpost-Empty-Hdrs: newly generated header
+  field body. Also, mailpost now sanitizes header fields with regards to empty
+  continuation header lines. Thanks to Kamil Jonca for these bug reports.
+* A new -z parameter has been added to mailpost to mention a list of header
+  fields to remove from the gated message. Thanks to Dieter Stussy for the
+  patch.
+* Fixed a bug in inews that was rejecting articles containing header fields
+  whose length exceeded 998 bytes. This limitation is for the length of a single
+  line of a header field (and not for the length of the whole header field, as
+  it was wrongly the case).
+* Added support for GnuPG's gpg binary (in addition to gpgv) in pgpverify.
+  Indeed, gpg still validates signatures made with weak digest algorithms like
+  MD5 whereas gpgv no longer do. Thanks to Thomas Hochstein for the patch,
+  which permits validating control articles for hierarchies that are still
+  using old PGP keys.
+* Added similar support for GnuPG's gpg binary in perl-nocem to validate NoCeM
+  notices from issuers who are still using old PGP keys.
+* A few commands listed in the "Control commands to INND" section in daily
+  Usenet reports were appearing as a mere letter; all of them are now properly
+  converted to meaningful words.
+* The tlsprotocols parameter in inn.conf now recognizes the TLSv1.3 value
+  (for OpenSSL versions implementing TLS�1.3, that is to say starting from
+  OpenSSL�1.1.1).
+* The buffindexed overview method will now hopefully work properly on systems
+  with a native page size larger than 16KB.
+* Other minor bug fixes and documentation improvements.
diff --git a/inn/DESCR b/inn/DESCR
new file mode 100644
index 0000000000..2308d4f6c4
--- /dev/null
+++ b/inn/DESCR
@@ -0,0 +1,11 @@
+This is the public release of InterNet News (INN). This work is
+sponsored by the Internet Software Consortium.
+
+InterNetNews is a complete Usenet system.  The cornerstone of the
+package is innd, an NNTP server that multiplexes all I/O. Newsreading
+is handled by a separate server, nnrpd, that is spawned for each
+client.  Both innd and nnrpd have some slight variances from the
+NNTP protocol.
+
+You can set the environment variable INN_SPOOL to whatever you like
+to change the default spool directory when building this pkg.
diff --git a/inn/MESSAGE b/inn/MESSAGE
new file mode 100644
index 0000000000..1a903645a9
--- /dev/null
+++ b/inn/MESSAGE
@@ -0,0 +1,15 @@
+===========================================================================
+$NetBSD$
+
+The following program has been installed suid root on your machine:
+
+	${PREFIX}/${INN_PATHBIN}/innbind
+
+---------------------------------------------------------------------------
+If you are upgrading from 2.5.5 or earlier: this is a major version bump.
+Config files have changed. Read ${PREFIX}/share/doc/inn/NEWS for details.
+
+If this is a first install: ${PREFIX}/share/doc/inn/INSTALL will help you
+getting set up.
+---------------------------------------------------------------------------
+===========================================================================
diff --git a/inn/Makefile b/inn/Makefile
new file mode 100644
index 0000000000..9c61556b76
--- /dev/null
+++ b/inn/Makefile
@@ -0,0 +1,203 @@
+# $NetBSD$
+
+DISTNAME=		inn-2.6.3
+CATEGORIES=		news
+MASTER_SITES=		ftp://ftp.isc.org/isc/inn/
+MASTER_SITES+=		ftp://ftp.fu-berlin.de/unix/news/inn/
+
+# Suggest update to real maintainer for import after it was tested in wip
+MAINTAINER=		micha%NetBSD.org@localhost
+#MAINTAINER=		spz%NetBSD.org@localhost
+HOMEPAGE=		https://www.eyrie.org/~eagle/software/inn/
+COMMENT=		The public release of InterNet News (INN)
+LICENSE=		modified-bsd AND gnu-gpl-v2
+
+CONFLICTS+=		libradius-[0-9]* nntpclnt-[0-9]*
+
+.include "../../news/inn/Makefile.common"
+
+BUILD_DEFS+=		INN_DATA_DIR
+BUILD_DEFS+=		VARBASE
+
+FILES_SUBST+=		INN_DATA_DIR=${INN_DATA_DIR}
+
+BUILD_DEFS+=		INN_PATHBIN
+FILES_SUBST+=		INN_PATHBIN=${PREFIX}/${INN_PATHBIN:Q}
+
+MESSAGE_SUBST+=		INN_PATHBIN=${INN_PATHBIN:Q}
+
+PLIST_SUBST+=		INN_PATHBIN=${INN_PATHBIN:Q}
+
+PKG_SYSCONFSUBDIR=	inn
+
+GNU_CONFIGURE=		YES
+GNU_CONFIGURE_PREFIX=	${INN_PREFIX}
+GNU_CONFIGURE_MANDIR=	${PREFIX}/${PKGMANDIR}
+CONFIGURE_ARGS+=	--enable-setgid-inews 				\
+			--enable-largefiles				\
+			--bindir=${PREFIX}/${INN_PATHBIN}		\
+			--sbindir=${PREFIX}/${INN_PATHBIN}		\
+			--sysconfdir=${PKG_SYSCONFDIR} 			\
+			--with-openssl=${SSLBASE:Q}			\
+			--with-doc-dir=${PREFIX}/share/doc/inn	 	\
+			--with-control-dir=${PREFIX}/${INN_PATHBIN}/control \
+			--with-filter-dir=${PREFIX}/${INN_PATHBIN}/filter \
+			--with-tmp-dir=${INN_DATA_DIR}/tmp		\
+			--with-db-dir=${INN_DATA_DIR}/db 		\
+			--with-http-dir=${INN_DATA_DIR}/http		\
+			--with-log-dir=${INN_DATA_DIR}/log 		\
+			--with-run-dir=${INN_DATA_DIR}/run 		\
+			--includedir=${PREFIX}/include 			\
+			--with-spool-dir=${INN_SPOOL:Q}			\
+			--with-news-user=${INN_USER}			\
+			--with-news-group=${INN_GROUP}
+CONFIGURE_ENV+=		_PATH_AWK=${TOOLS_AWK}
+CONFIGURE_ENV+=		_PATH_EGREP=${TOOLS_EGREP}
+CONFIGURE_ENV+=		_PATH_SED=${TOOLS_SED}
+CONFIGURE_ENV+=		_PATH_SH=${TOOLS_SH}
+CONFIGURE_ENV+=		_PATH_SORT=${TOOLS_SORT}
+CONFIGURE_ENV+=		GZIP=${TOOLS_GZIP_CMD}
+USE_TOOLS+=		awk egrep gzip perl:run sed sh sort yacc
+
+LDFLAGS.SunOS+=		-lsocket -lnsl
+
+DEPENDS+=		p5-MIME-tools-[0-9]*:../../mail/p5-MIME-tools
+DEPENDS+=		p5-GD-[0-9]*:../../graphics/p5-GD
+DEPENDS+=		gnupg-[0-9]*:../../security/gnupg
+
+USERGROUP_PHASE=	pre-install
+PKG_USERS_VARS+=	INN_USER
+PKG_GROUPS_VARS+=	INN_GROUP
+
+PKG_GROUPS+=		${INN_GROUP}
+PKG_USERS+=		${INN_USER}:${INN_GROUP}
+PKG_GECOS.${INN_USER}=	Internet\ News
+PKG_HOME.${INN_USER}=	${INN_DATA_DIR}
+PKG_SHELL.${INN_USER}=	${SH}
+
+EXAMPLEDIR=		${PREFIX}/share/examples/inn
+INN_DATADIRS=		log log/OLD run tmp db spool http
+INN_SPOOLDIRS=		archive articles overview incoming incoming/bad	\
+			outgoing uniover innfeed
+
+INSTALLATION_DIRS+=	sbin
+INSTALLATION_DIRS+=	bin
+INSTALLATION_DIRS+=	${EXAMPLEDIR}
+INSTALLATION_DIRS+=	${EXAMPLEDIR}/filter
+
+MAKE_DIRS+=		${PREFIX}/bin
+MAKE_DIRS+=		${PREFIX}/sbin
+MAKE_DIRS+=		${PREFIX}/lib
+
+INN_DIRS+=		${PKG_SYSCONFDIR}
+INN_DIRS+=		${INN_DATA_DIR}
+
+OWN_DIRS+=		${PREFIX}/${INN_PATHBIN}
+OWN_DIRS+=		${PREFIX}/${INN_PATHBIN}/filter
+OWN_DIRS+=		${EXAMPLEDIR}
+
+.for dir in ${INN_DIRS}
+OWN_DIRS_PERMS+=	${dir}	${INN_USER} ${INN_GROUP} 0775
+.endfor
+.for dir in ${INN_DATADIRS}
+MAKE_DIRS_PERMS+=	${INN_DATA_DIR}/${dir}	${INN_USER} ${INN_GROUP} 0775
+.endfor
+.for dir in ${INN_SPOOLDIRS}
+MAKE_DIRS_PERMS+=	${INN_DATA_DIR}/spool/${dir} \
+						${INN_USER} ${INN_GROUP} 0775
+.endfor
+
+CFILES=			actsync.cfg actsync.ign buffindexed.conf \
+			control.ctl control.ctl.local cycbuff.conf \
+			distrib.pats distributions \
+			expire.ctl incoming.conf inn.conf innfeed.conf \
+			innreport.conf innwatch.ctl \
+			innshellvars.local innshellvars.pl.local \
+			innshellvars.tcl.local \
+			localgroups moderators \
+			motd.innd motd.nnrpd \
+			news2mail.cf newsfeeds nnrpd.track \
+			nntpsend.ctl nocem.ctl ovdb.conf passwd.nntp \
+			inn-radius.conf readers.conf send-uucp.cf \
+			storage.conf subscriptions
+.for file in ${CFILES}
+CONF_FILES_PERMS+=	${EXAMPLEDIR}/${file} ${PKG_SYSCONFDIR}/${file} \
+			${INN_USER} ${INN_GROUP} 0664
+.endfor
+
+CONF_FILES_PERMS+=	${EXAMPLEDIR}/active.minimal ${INN_DATA_DIR}/db/active ${INN_USER} ${INN_GROUP} 0664
+CONF_FILES_PERMS+=	${EXAMPLEDIR}/newsgroups.minimal ${INN_DATA_DIR}/db/newsgroups ${INN_USER} ${INN_GROUP} 0664
+
+DBFILES=		active.times history
+
+HTTPFILES=		innreport.css
+
+CONF_FILES_PERMS+=	${EXAMPLEDIR}/innreport.css ${INN_DATA_DIR}/http/innreport.css ${INN_USER} ${INN_GROUP} 0664
+
+.for file in ${DBFILES}
+CONF_FILES_PERMS+=	${EXAMPLEDIR}/${file} ${INN_DATA_DIR}/db/${file} \
+			${INN_USER} ${INN_GROUP} 0664
+.endfor
+
+FILTERFILES=		INN.py filter_innd.py nnrpd.py nnrpd_access.py \
+			nnrpd_auth.py nnrpd_dynamic.py \
+			filter_innd.pl filter_nnrpd.pl nnrpd_access.pl \
+			nnrpd_auth.pl startup_innd.pl
+
+.for file in ${FILTERFILES}
+CONF_FILES_PERMS+=	${EXAMPLEDIR}/filter/${file} ${INN_PATHBIN}/filter/${file} \
+			${INN_USER} ${INN_GROUP} 0664
+.endfor
+
+RCD_SCRIPTS=		innd
+
+PKG_DESTDIR_SUPPORT=	destdir
+
+.include "../../mk/bsd.prefs.mk"
+
+.if ${OPSYS} == "SunOS"
+CONFIGURE_ARGS+=	--with-sendmail=/usr/lib/sendmail
+.else
+CONFIGURE_ARGS+=	--with-sendmail=/usr/sbin/sendmail
+.endif
+
+.if ${MACHINE_ARCH} == "arm" || ${MACHINE_ARCH} == "arm32"
+GCC_REQD+=		2.95.3
+.endif
+
+.include "options.mk"
+
+TEST_TARGET=    tests
+
+pre-install:
+.for file in ${CFILES} active.minimal newsgroups.minimal
+	${INSTALL_DATA} ${WRKSRC}/site/${file} ${DESTDIR}${EXAMPLEDIR}
+.endfor
+.for file in ${DBFILES} ${HTTPFILES}
+	${TOUCH} ${WRKSRC}/site/${file}
+	${INSTALL_DATA} ${WRKSRC}/site/${file} ${DESTDIR}${EXAMPLEDIR}
+.endfor
+.for file in ${FILTERFILES}
+	${INSTALL_DATA} ${WRKSRC}/site/${file} ${DESTDIR}${EXAMPLEDIR}/filter
+.endfor
+
+post-install:
+.for file in cnfsstat ctlinnd makehistory innbind
+	${RM} -f ${DESTDIR}${PREFIX}/sbin/${file}
+	${LN} -s ${DESTDIR}${PREFIX}/${INN_PATHBIN}/${file}	\
+				${DESTDIR}${PREFIX}/sbin
+.endfor
+	${RM} -f ${DESTDIR}${PREFIX}/bin/inews
+	${LN} -s ${DESTDIR}${PREFIX}/${INN_PATHBIN}/inews	\
+			${DESTDIR}${PREFIX}/bin
+	${RM} -f ${DESTDIR}${PREFIX}/bin/rnews
+	${LN} -s ${DESTDIR}${PREFIX}/${INN_PATHBIN}/rnews	\
+			${DESTDIR}${PREFIX}/bin
+.for file in libinn.a libstorage.a libinnhist.a
+	${CHMOD} 644 ${DESTDIR}${PREFIX}/lib/${file}
+.endfor
+
+# OpenSSL API 1.1 is supported too
+# At least OpenSSL 1.1.1 is required for TLSv1.3
+.include "../../security/openssl/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/inn/Makefile.common b/inn/Makefile.common
new file mode 100644
index 0000000000..e3b743f76d
--- /dev/null
+++ b/inn/Makefile.common
@@ -0,0 +1,14 @@
+# $NetBSD$
+#
+# used by news/inn/Makefile
+# used by news/newsx/Makefile
+
+INN_PREFIX?=	${PREFIX}
+INN_PATHBIN?=	libexec/inn
+INN_DATA_DIR?=	${VARBASE}/news
+INN_SPOOL?=	${INN_DATA_DIR}/spool
+
+BUILD_DEFS+=	INN_DATA_DIR
+BUILD_DEFS+=	VARBASE
+BUILD_DEFS+=	INN_USER
+BUILD_DEFS+=	INN_GROUP
diff --git a/inn/PLIST b/inn/PLIST
new file mode 100644
index 0000000000..b5c49b0c18
--- /dev/null
+++ b/inn/PLIST
@@ -0,0 +1,336 @@
+@comment $NetBSD$
+bin/inews
+bin/rnews
+include/inn/buffer.h
+include/inn/concat.h
+include/inn/confparse.h
+include/inn/dbz.h
+include/inn/defines.h
+include/inn/dispatch.h
+include/inn/fdflag.h
+include/inn/hashtab.h
+include/inn/history.h
+include/inn/innconf.h
+include/inn/inndcomm.h
+include/inn/libinn.h
+include/inn/list.h
+include/inn/macros.h
+include/inn/md5.h
+include/inn/messages.h
+include/inn/mmap.h
+include/inn/network-innbind.h
+include/inn/network.h
+include/inn/newsuser.h
+include/inn/nntp.h
+include/inn/options.h
+include/inn/ov.h
+include/inn/overview.h
+include/inn/paths.h
+include/inn/portable-getaddrinfo.h
+include/inn/portable-getnameinfo.h
+include/inn/portable-macros.h
+include/inn/portable-socket.h
+include/inn/portable-stdbool.h
+include/inn/qio.h
+include/inn/sequence.h
+include/inn/storage.h
+include/inn/system.h
+include/inn/timer.h
+include/inn/tst.h
+include/inn/utility.h
+include/inn/vector.h
+include/inn/version.h
+include/inn/wire.h
+include/inn/xmalloc.h
+include/inn/xwrite.h
+lib/innreport_inn.pm
+lib/innshellvars
+lib/innshellvars.pl
+lib/innshellvars.tcl
+lib/libinn.la
+lib/libinnhist.la
+lib/libstorage.la
+lib/perl/INN/Config.pm
+lib/perl/INN/Utils/Shlock.pm
+${INN_PATHBIN}/actmerge
+${INN_PATHBIN}/actsync
+${INN_PATHBIN}/actsyncd
+${INN_PATHBIN}/archive
+${INN_PATHBIN}/auth/passwd/ckpasswd
+${INN_PATHBIN}/auth/passwd/radius
+${INN_PATHBIN}/auth/resolv/domain
+${INN_PATHBIN}/auth/resolv/ident
+${INN_PATHBIN}/batcher
+${INN_PATHBIN}/buffchan
+${INN_PATHBIN}/buffindexed_d
+${INN_PATHBIN}/cnfsheadconf
+${INN_PATHBIN}/cnfsstat
+${INN_PATHBIN}/control/checkgroups.pl
+${INN_PATHBIN}/control/ihave.pl
+${INN_PATHBIN}/control/newgroup.pl
+${INN_PATHBIN}/control/rmgroup.pl
+${INN_PATHBIN}/control/sendme.pl
+${INN_PATHBIN}/control/sendsys.pl
+${INN_PATHBIN}/control/senduuname.pl
+${INN_PATHBIN}/control/version.pl
+${INN_PATHBIN}/controlbatch
+${INN_PATHBIN}/controlchan
+${INN_PATHBIN}/convdate
+${INN_PATHBIN}/ctlinnd
+${INN_PATHBIN}/cvtbatch
+${INN_PATHBIN}/docheckgroups
+${INN_PATHBIN}/expire
+${INN_PATHBIN}/expireover
+${INN_PATHBIN}/expirerm
+${INN_PATHBIN}/fastrm
+${INN_PATHBIN}/filechan
+${INN_PATHBIN}/getlist
+${INN_PATHBIN}/grephistory
+${INN_PATHBIN}/imapfeed
+${INN_PATHBIN}/inews
+${INN_PATHBIN}/innbind
+${INN_PATHBIN}/inncheck
+${INN_PATHBIN}/innconfval
+${INN_PATHBIN}/innd
+${INN_PATHBIN}/inndf
+${INN_PATHBIN}/innfeed
+${INN_PATHBIN}/innmail
+${INN_PATHBIN}/innreport
+${INN_PATHBIN}/innstat
+${INN_PATHBIN}/innupgrade
+${INN_PATHBIN}/innwatch
+${INN_PATHBIN}/innxbatch
+${INN_PATHBIN}/innxmit
+${INN_PATHBIN}/mailpost
+${INN_PATHBIN}/makedbz
+${INN_PATHBIN}/makehistory
+${INN_PATHBIN}/mod-active
+${INN_PATHBIN}/news.daily
+${INN_PATHBIN}/news2mail
+${INN_PATHBIN}/ninpaths
+${INN_PATHBIN}/nnrpd
+${INN_PATHBIN}/nntpget
+${INN_PATHBIN}/nntpsend
+${INN_PATHBIN}/ovdb_init
+${INN_PATHBIN}/ovdb_monitor
+${INN_PATHBIN}/ovdb_server
+${INN_PATHBIN}/ovdb_stat
+${INN_PATHBIN}/overchan
+${INN_PATHBIN}/perl-nocem
+${INN_PATHBIN}/pgpverify
+${INN_PATHBIN}/procbatch
+${INN_PATHBIN}/prunehistory
+${INN_PATHBIN}/pullnews
+${INN_PATHBIN}/rc.news
+${INN_PATHBIN}/rnews
+${INN_PATHBIN}/rnews.libexec/bunbatch
+${INN_PATHBIN}/rnews.libexec/c7unbatch
+${INN_PATHBIN}/rnews.libexec/decode
+${INN_PATHBIN}/rnews.libexec/encode
+${INN_PATHBIN}/rnews.libexec/gunbatch
+${INN_PATHBIN}/scanlogs
+${INN_PATHBIN}/scanspool
+${INN_PATHBIN}/send-ihave
+${INN_PATHBIN}/send-nntp
+${INN_PATHBIN}/send-uucp
+${INN_PATHBIN}/sendinpaths
+${INN_PATHBIN}/sendxbatches
+${INN_PATHBIN}/shlock
+${INN_PATHBIN}/shrinkfile
+${INN_PATHBIN}/signcontrol
+${INN_PATHBIN}/simpleftp
+${INN_PATHBIN}/sm
+${INN_PATHBIN}/tally.control
+${INN_PATHBIN}/tdx-util
+${INN_PATHBIN}/tinyleaf
+${INN_PATHBIN}/writelog
+man/man1/convdate.1
+man/man1/fastrm.1
+man/man1/getlist.1
+man/man1/grephistory.1
+man/man1/inews.1
+man/man1/innconfval.1
+man/man1/innmail.1
+man/man1/nntpget.1
+man/man1/pgpverify.1
+man/man1/pullnews.1
+man/man1/rnews.1
+man/man1/shlock.1
+man/man1/shrinkfile.1
+man/man1/simpleftp.1
+man/man1/sm.1
+man/man3/INN::Config.3pm
+man/man3/INN::Utils::Shlock.3pm
+man/man3/clientlib.3
+man/man3/dbz.3
+man/man3/inndcomm.3
+man/man3/libauth.3
+man/man3/libinn.3
+man/man3/libinnhist.3
+man/man3/libstorage.3
+man/man3/list.3
+man/man3/qio.3
+man/man3/tst.3
+man/man3/uwildmat.3
+man/man5/active.5
+man/man5/active.times.5
+man/man5/buffindexed.conf.5
+man/man5/control.ctl.5
+man/man5/cycbuff.conf.5
+man/man5/distrib.pats.5
+man/man5/distributions.5
+man/man5/expire.ctl.5
+man/man5/history.5
+man/man5/incoming.conf.5
+man/man5/inn-radius.conf.5
+man/man5/inn.conf.5
+man/man5/innfeed.conf.5
+man/man5/innwatch.ctl.5
+man/man5/localgroups.5
+man/man5/moderators.5
+man/man5/motd.innd.5
+man/man5/motd.news.5
+man/man5/motd.nnrpd.5
+man/man5/newsfeeds.5
+man/man5/newsgroups.5
+man/man5/newslog.5
+man/man5/nnrpd.track.5
+man/man5/nntpsend.ctl.5
+man/man5/nocem.ctl.5
+man/man5/ovdb.5
+man/man5/passwd.nntp.5
+man/man5/readers.conf.5
+man/man5/storage.conf.5
+man/man5/subscriptions.5
+man/man8/actsync.8
+man/man8/actsyncd.8
+man/man8/archive.8
+man/man8/auth_krb5.8
+man/man8/batcher.8
+man/man8/buffchan.8
+man/man8/ckpasswd.8
+man/man8/cnfsheadconf.8
+man/man8/cnfsstat.8
+man/man8/controlchan.8
+man/man8/ctlinnd.8
+man/man8/cvtbatch.8
+man/man8/docheckgroups.8
+man/man8/domain.8
+man/man8/expire.8
+man/man8/expireover.8
+man/man8/expirerm.8
+man/man8/filechan.8
+man/man8/ident.8
+man/man8/imapfeed.8
+man/man8/innbind.8
+man/man8/inncheck.8
+man/man8/innd.8
+man/man8/inndf.8
+man/man8/innfeed.8
+man/man8/innreport.8
+man/man8/innstat.8
+man/man8/innupgrade.8
+man/man8/innwatch.8
+man/man8/innxbatch.8
+man/man8/innxmit.8
+man/man8/inpaths.8
+man/man8/mailpost.8
+man/man8/makedbz.8
+man/man8/makehistory.8
+man/man8/mod-active.8
+man/man8/news.daily.8
+man/man8/news2mail.8
+man/man8/ninpaths.8
+man/man8/nnrpd.8
+man/man8/nntpsend.8
+man/man8/ovdb_init.8
+man/man8/ovdb_monitor.8
+man/man8/ovdb_server.8
+man/man8/ovdb_stat.8
+man/man8/overchan.8
+man/man8/perl-nocem.8
+man/man8/procbatch.8
+man/man8/prunehistory.8
+man/man8/radius.8
+man/man8/rc.news.8
+man/man8/scanlogs.8
+man/man8/scanspool.8
+man/man8/send-nntp.8
+man/man8/send-uucp.8
+man/man8/sendinpaths.8
+man/man8/tally.control.8
+man/man8/tdx-util.8
+man/man8/tinyleaf.8
+man/man8/writelog.8
+sbin/cnfsstat
+sbin/ctlinnd
+sbin/innbind
+sbin/makehistory
+share/doc/inn/CONTRIBUTORS
+share/doc/inn/GPL
+share/doc/inn/HACKING
+share/doc/inn/INSTALL
+share/doc/inn/LICENSE
+share/doc/inn/NEWS
+share/doc/inn/README
+share/doc/inn/TODO
+share/doc/inn/config-design
+share/doc/inn/config-semantics
+share/doc/inn/config-syntax
+share/doc/inn/external-auth
+share/doc/inn/history
+share/doc/inn/history-innfeed
+share/doc/inn/hook-perl
+share/doc/inn/hook-python
+share/doc/inn/sample-control
+share/examples/inn/active.minimal
+share/examples/inn/active.times
+share/examples/inn/actsync.cfg
+share/examples/inn/actsync.ign
+share/examples/inn/buffindexed.conf
+share/examples/inn/control.ctl
+share/examples/inn/control.ctl.local
+share/examples/inn/cycbuff.conf
+share/examples/inn/distrib.pats
+share/examples/inn/distributions
+share/examples/inn/expire.ctl
+share/examples/inn/filter/INN.py
+share/examples/inn/filter/filter_innd.pl
+share/examples/inn/filter/filter_innd.py
+share/examples/inn/filter/filter_nnrpd.pl
+share/examples/inn/filter/nnrpd.py
+share/examples/inn/filter/nnrpd_access.pl
+share/examples/inn/filter/nnrpd_access.py
+share/examples/inn/filter/nnrpd_auth.pl
+share/examples/inn/filter/nnrpd_auth.py
+share/examples/inn/filter/nnrpd_dynamic.py
+share/examples/inn/filter/startup_innd.pl
+share/examples/inn/history
+share/examples/inn/incoming.conf
+share/examples/inn/inn-radius.conf
+share/examples/inn/inn.conf
+share/examples/inn/innfeed.conf
+share/examples/inn/innreport.conf
+share/examples/inn/innreport.css
+share/examples/inn/innshellvars.local
+share/examples/inn/innshellvars.pl.local
+share/examples/inn/innshellvars.tcl.local
+share/examples/inn/innwatch.ctl
+share/examples/inn/localgroups
+share/examples/inn/moderators
+share/examples/inn/motd.innd
+share/examples/inn/motd.nnrpd
+share/examples/inn/news2mail.cf
+share/examples/inn/newsfeeds
+share/examples/inn/newsgroups.minimal
+share/examples/inn/nnrpd.track
+share/examples/inn/nntpsend.ctl
+share/examples/inn/nocem.ctl
+share/examples/inn/ovdb.conf
+share/examples/inn/passwd.nntp
+share/examples/inn/readers.conf
+share/examples/inn/send-uucp.cf
+share/examples/inn/storage.conf
+share/examples/inn/subscriptions
+@pkgdir ${INN_PATHBIN}/filter
+@pkgdir etc/inn
diff --git a/inn/TODO b/inn/TODO
new file mode 100644
index 0000000000..f24278c486
--- /dev/null
+++ b/inn/TODO
@@ -0,0 +1,18 @@
+[ ] Update patches
+    They still apply (with offsets), but documentation is missing
+[X] Check PLIST
+    => Added new man page man8/auth_krb5.8
+[X] Check build for RELRO support
+    => Good
+[ ] Check pkglints complaint about INN_DATA_DIR
+[ ] Check pkglints complaint about USE_LIBTOOL
+[ ] gpg is now supported in addition to gpgv
+    Check dependencies
+[ ] Python3 is now supported
+    Check declaration of supported Python versions
+    Enable python option by default?
+[X] OpenSSL API 1.1 is now supported
+    => Added comment to Makefile for future updates
+[ ] Check permission problems while installing with nonprivileged account
+
+[ ] Suggest update to maintainer spz@ for import after it was tested in wip
diff --git a/inn/buildlink3.mk b/inn/buildlink3.mk
new file mode 100644
index 0000000000..f96599843f
--- /dev/null
+++ b/inn/buildlink3.mk
@@ -0,0 +1,12 @@
+# $NetBSD$
+
+BUILDLINK_TREE+=	inn
+
+.if !defined(INN_BUILDLINK3_MK)
+INN_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.inn+=	inn>=2.3.4
+BUILDLINK_PKGSRCDIR.inn?=	../../news/inn
+.endif # INN_BUILDLINK3_MK
+
+BUILDLINK_TREE+=	-inn
diff --git a/inn/distinfo b/inn/distinfo
new file mode 100644
index 0000000000..f1d01ed0e0
--- /dev/null
+++ b/inn/distinfo
@@ -0,0 +1,14 @@
+$NetBSD$
+
+SHA1 (inn-2.6.3.tar.gz) = 2a6646030c77b2332d167bcadfcda797822932d0
+RMD160 (inn-2.6.3.tar.gz) = 13a4a8a034f4e914b5579000f378203ad4037370
+SHA512 (inn-2.6.3.tar.gz) = 123881d474ce1df21983b3093827915706670a400d48c3945c32635cd2fa7f52be2470c39ad54b84cc31b5454d7a3be31feb306802957954a3450146e31f52cb
+Size (inn-2.6.3.tar.gz) = 2586168 bytes
+SHA1 (patch-aa) = 1801206391e5f37e75edad0955cfc426d4701e45
+SHA1 (patch-ab) = 28b341559ba7d132e8a6dbb0989e964b1d5849fd
+SHA1 (patch-ac) = edb03ca5998873627278764ed4e528f13f3f74fd
+SHA1 (patch-ad) = 96a38291dcd9a836dcaaa9f48ec6a8d2133dc7c6
+SHA1 (patch-ag) = 31bee657a4e35475e902cd179716328aa39ee4b1
+SHA1 (patch-ah) = 231ccb7c0402441760692c32fa0dafcf5c6a72aa
+SHA1 (patch-ak) = cdc37267d5f5151300b4c595b9274dc984c66651
+SHA1 (patch-al) = 3751913f2e7f1e530db9b2f6e762bdda314fd4fd
diff --git a/inn/files/innd.sh b/inn/files/innd.sh
new file mode 100644
index 0000000000..805fa71470
--- /dev/null
+++ b/inn/files/innd.sh
@@ -0,0 +1,78 @@
+#!@RCD_SCRIPTS_SHELL@
+#
+# $NetBSD: innd.sh,v 1.18 2011/10/07 22:37:05 shattered Exp $
+#
+# PROVIDE: inn
+# REQUIRE: DAEMON
+# KEYWORD: shutdown
+
+if [ -d @INN_DATA_DIR@/etc ] ; then
+	echo ""
+	echo "WARNING WARNING WARNING WARNING WARNING WARNING WARNING"
+	echo ""
+	echo "WARNING: old inn config directory @INN_DATA_DIR@/etc found"
+	echo "WARNING: please move your config to @PREFIX@/etc/inn"
+	echo "WARNING: before starting your new inn install"
+	echo ""
+	echo "WARNING WARNING WARNING WARNING WARNING WARNING WARNING"
+	echo ""
+	sleep 120
+fi
+
+if [ -x @INN_PATHBIN@/rc.news -a -s @INN_DATA_DIR@/db/active ]
+then
+	if [ ! -d @PREFIX@/etc/nntp ]
+	then
+		mkdir @PREFIX@/etc/nntp
+	fi
+
+	if [ ! -f @PREFIX@/etc/nntp/server ]
+	then
+		hostname >@PREFIX@/etc/nntp/server
+	fi
+
+	if [ ! -f @PREFIX@/etc/nntp/domainname ]
+	then
+		(set - X `grep ^fromhost: @PKG_SYSCONFDIR@/inn.conf`
+		if [ $# -eq 3 ]
+		then
+			echo $3 >@PREFIX@/etc/nntp/domainname
+		fi)
+	fi
+
+	if [ -f @INN_DATA_DIR@/db/history -a \
+		! -s @INN_DATA_DIR@/db/history ]
+	then
+		@INN_PATHBIN@/makedbz -i -o -s 10000
+	fi
+
+	if [ $# -eq 0 ]
+	then
+		echo -n ' innd'
+		su -m news -c "@INN_PATHBIN@/rc.news start" >/dev/null
+		exit 0
+	fi
+
+	case "$1" in
+	start )
+		echo "Starting INN."
+		su -m news -c "@INN_PATHBIN@/rc.news $1" >/dev/null
+		exit 0
+		;;
+	stop )
+		su -m news -c "@INN_PATHBIN@/rc.news $1"
+		exit 0
+		;;
+	restart )
+		$0 stop
+		sleep 5
+		exec $0 start
+		;;
+	* )
+		echo "Usage: $0 (start|stop|restart)"
+		exit 1
+		;;
+	esac
+fi
+
+exit 0
diff --git a/inn/options.mk b/inn/options.mk
new file mode 100644
index 0000000000..97b92dd048
--- /dev/null
+++ b/inn/options.mk
@@ -0,0 +1,45 @@
+# $NetBSD$
+
+PKG_OPTIONS_VAR=	PKG_OPTIONS.inn
+PKG_SUPPORTED_OPTIONS=	inet6 perl python uucp
+PKG_SUGGESTED_OPTIONS=	inet6 perl
+
+.include "../../mk/bsd.options.mk"
+
+###
+### IPv6 support
+###
+.if !empty(PKG_OPTIONS:Minet6)
+CONFIGURE_ARGS+=	--enable-ipv6
+.endif
+
+###
+### uucp support (requires a group uucp to exist)
+###
+.if !empty(PKG_OPTIONS:Muucp)
+CONFIGURE_ARGS+=	--enable-uucp-rnews
+PKG_GROUPS+= uucp
+.else
+CONFIGURE_ARGS+=	--disable-uucp-rnews
+.endif
+
+###
+### perl support for INN
+###
+.if !empty(PKG_OPTIONS:Mperl)
+CONFIGURE_ARGS+=	--with-perl
+CONFIGURE_ENV+=		_PATH_PERL=${PERL5:Q}
+
+.include "../../lang/perl5/buildlink3.mk"
+.else
+CONFIGURE_ARGS+=	--without-perl
+.endif
+###
+### Python support for INN
+###
+.if !empty(PKG_OPTIONS:Mpython)
+CONFIGURE_ARGS+=	--with-python
+CONFIGURE_ENV+=		_PATH_PYTHON=${PYTHONBIN:Q}
+
+.include "../../lang/python/application.mk"
+.endif
diff --git a/inn/patches/patch-aa b/inn/patches/patch-aa
new file mode 100644
index 0000000000..fadf6c1753
--- /dev/null
+++ b/inn/patches/patch-aa
@@ -0,0 +1,13 @@
+$NetBSD: patch-aa,v 1.13 2014/08/03 17:33:34 spz Exp $
+
+--- configure.orig	2014-05-17 08:24:49.000000000 +0000
++++ configure
+@@ -13018,7 +13018,7 @@ else
+   RANLIB="$ac_cv_prog_RANLIB"
+ fi
+ 
+-for ac_prog in 'bison -y' byacc
++for ac_prog in 'bison -y' byacc yacc
+ do
+   # Extract the first word of "$ac_prog", so it can be a program name with args.
+ set dummy $ac_prog; ac_word=$2
diff --git a/inn/patches/patch-ab b/inn/patches/patch-ab
new file mode 100644
index 0000000000..01a7895003
--- /dev/null
+++ b/inn/patches/patch-ab
@@ -0,0 +1,15 @@
+$NetBSD: patch-ab,v 1.11 2014/08/03 17:33:34 spz Exp $
+
+--- scripts/news.daily.in.orig	2014-05-17 08:24:49.000000000 +0000
++++ scripts/news.daily.in
+@@ -276,6 +276,10 @@ fi
+ 
+ cd ${PATHETC}
+ 
++## Unlimit
++ulimit -d `ulimit -H -d`
++ulimit -n `ulimit -H -n`
++
+ ##  Show the status of the news system.
+ ${DOSTAT} && {
+     ${INNSTAT}
diff --git a/inn/patches/patch-ac b/inn/patches/patch-ac
new file mode 100644
index 0000000000..d3f138cd1b
--- /dev/null
+++ b/inn/patches/patch-ac
@@ -0,0 +1,13 @@
+$NetBSD: patch-ac,v 1.12 2014/08/03 17:33:34 spz Exp $
+
+--- Makefile.global.in.orig	2014-05-17 08:24:49.000000000 +0000
++++ Makefile.global.in
+@@ -303,7 +303,7 @@ INSTALL		= $(top)/support/install-sh -c
+ ##  files like active and newsgroups that should have the same permissions as
+ ##  article files.
+ 
+-BACKUP_OPTION	= -B .OLD
++#BACKUP_OPTION	= -B .OLD
+ 
+ LI_SPRI		= $(LIBTOOLINST) $(INSTALL) -o root -g $(RUNASGROUP) -m 4550 $(BACKUP_OPTION)
+ LI_XPRI		= $(LIBTOOLINST) $(INSTALL) $(OWNER) -m 0550 $(BACKUP_OPTION)
diff --git a/inn/patches/patch-ad b/inn/patches/patch-ad
new file mode 100644
index 0000000000..805b17ccff
--- /dev/null
+++ b/inn/patches/patch-ad
@@ -0,0 +1,14 @@
+$NetBSD: patch-ad,v 1.8 2014/08/03 17:33:34 spz Exp $
+
+--- scripts/rc.news.in.orig	2014-05-17 08:24:49.000000000 +0000
++++ scripts/rc.news.in
+@@ -77,6 +77,9 @@ Xstop)
+ ;;
+ esac
+ 
++## Unlimit
++ulimit -n `ulimit -H -n`
++
+ ##  Pick ${INND} or ${INNDSTART}
+ WHAT=${INND}
+ 
diff --git a/inn/patches/patch-ag b/inn/patches/patch-ag
new file mode 100644
index 0000000000..a888d2e59e
--- /dev/null
+++ b/inn/patches/patch-ag
@@ -0,0 +1,13 @@
+$NetBSD: patch-ag,v 1.13 2014/08/03 17:33:34 spz Exp $
+
+--- control/pgpverify.in.orig	2014-05-17 08:24:49.000000000 +0000
++++ control/pgpverify.in
+@@ -139,7 +139,7 @@
+ # Path to pgp binary; for PGP 5.0, set the path to the pgpv binary.  If
+ # you have INN and the script is able to successfully include your
+ # INN::Config module, the value of $INN::Config::pgp will override this.
+-$pgp = '/usr/local/bin/pgp';
++# $pgp = '/usr/local/bin/pgp';
+ 
+ # If you keep your keyring somewhere that is not the default used by pgp,
+ # uncomment the next line and set appropriately.  If you have INN and the
diff --git a/inn/patches/patch-ah b/inn/patches/patch-ah
new file mode 100644
index 0000000000..8a41b00ea0
--- /dev/null
+++ b/inn/patches/patch-ah
@@ -0,0 +1,24 @@
+$NetBSD: patch-ah,v 1.17 2017/05/20 06:53:05 spz Exp $
+
+--- site/Makefile.orig	2016-11-27 14:03:42.000000000 +0000
++++ site/Makefile
+@@ -75,7 +75,8 @@ REST		= \
+ 
+ ALL		= $(REST)
+ 
+-REST_INSTALLED	= \
++REST_INSTALLED	= 
++NOTUSED		= \
+ 	$D$(PATH_NEWSFEEDS) $D$(PATH_INNDHOSTS) \
+ 	$D$(PATH_NNRPDTRACK) $D$(PATH_NNTPPASS) \
+ 	$D$(PATH_CONFIG) $D$(PATH_MODERATORS) \
+@@ -102,7 +103,8 @@ REST_INSTALLED	= \
+ 
+ ALL_INSTALLED	= $(REST_INSTALLED)
+ 
+-SPECIAL		= $D$(PATH_ACTIVE) $D$(PATH_ACTIVE_TIMES) \
++SPECIAL		=
++NOTUSED2	= $D$(PATH_ACTIVE) $D$(PATH_ACTIVE_TIMES) \
+ 		$D$(PATH_NEWSGROUPS) $D$(PATH_HISTORY)
+ 
+ ##  Get new versions of everything from samples directory.
diff --git a/inn/patches/patch-ak b/inn/patches/patch-ak
new file mode 100644
index 0000000000..4a9c32b1ce
--- /dev/null
+++ b/inn/patches/patch-ak
@@ -0,0 +1,13 @@
+$NetBSD: patch-ak,v 1.3 2014/08/03 17:33:34 spz Exp $
+
+--- perl/INN/Config.pm.in.orig	2014-05-17 08:24:49.000000000 +0000
++++ perl/INN/Config.pm.in
+@@ -20,7 +20,7 @@ our $exec_prefix = "@exec_prefix@";
+ 
+ ##  Then, process the variables provided by innconfval.
+ my @INNCONFVAR = ();
+-my @values = `${exec_prefix}/bin/innconfval -p`;
++my @values = `@bindir@/innconfval -p`;
+ foreach my $line (@values) {
+   eval 'our '.$line;
+   if ($line =~ /^(.*?) = /m) {
diff --git a/inn/patches/patch-al b/inn/patches/patch-al
new file mode 100644
index 0000000000..39c6460f0d
--- /dev/null
+++ b/inn/patches/patch-al
@@ -0,0 +1,15 @@
+$NetBSD: patch-al,v 1.2 2014/08/03 17:33:34 spz Exp $
+
+--- lib/fdlimit.c.orig	2014-05-17 08:24:49.000000000 +0000
++++ lib/fdlimit.c
+@@ -59,6 +59,10 @@ setfdlimit(unsigned int limit)
+     }
+ #endif
+ 
++    /* will we mind if the limit is higher? I think not. */
++    if (rl.rlim_cur >= limit)
++	return 0;
++
+     rl.rlim_cur = limit;
+     if (limit > rl.rlim_max)
+         rl.rlim_max = limit;


Home | Main Index | Thread Index | Old Index