aboutsummaryrefslogtreecommitdiff
path: root/sysutils/pesign
diff options
context:
space:
mode:
authorJan Beich <jbeich@FreeBSD.org>2015-12-06 12:40:58 +0000
committerJan Beich <jbeich@FreeBSD.org>2015-12-06 12:40:58 +0000
commita64ab0b8c804848d301f903641c837e7fe853dbb (patch)
tree802b5da5b358495af9562669ff9024f1e3773ccd /sysutils/pesign
parentcb7944d6a43a69b0675975eeddca915672deef6e (diff)
downloadports-a64ab0b8c804848d301f903641c837e7fe853dbb.tar.gz
ports-a64ab0b8c804848d301f903641c837e7fe853dbb.zip
sysutils/pesign: unbreak on pre-10.2 systems
- No reason to use ppoll(2), so switch to poll(2) - Include missing strchrnul(3) for 9.x No PORTREVISION bump because 10.2+ behavior doesn't change. PR: 205039 Approved by: trasz (maintainer) MFH: 2015Q4
Notes
Notes: svn path=/head/; revision=403110
Diffstat (limited to 'sysutils/pesign')
-rw-r--r--sysutils/pesign/Makefile9
-rw-r--r--sysutils/pesign/files/extra-patch-src_client.c52
-rw-r--r--sysutils/pesign/files/patch-src-daemon.c9
3 files changed, 64 insertions, 6 deletions
diff --git a/sysutils/pesign/Makefile b/sysutils/pesign/Makefile
index 7bf2de8de82f..c82208880b37 100644
--- a/sysutils/pesign/Makefile
+++ b/sysutils/pesign/Makefile
@@ -23,11 +23,8 @@ GH_ACCOUNT= rhinstaller
USES= gmake pkgconfig
USE_LDCONFIG= yes
-.include <bsd.port.pre.mk>
-
-.if ${OPSYS} == FreeBSD && ${OSVERSION} < 1001505
-BROKEN= This port requires ppoll(2) system call
-.endif
+EXTRA_PATCHES= ${EXTRA_PATCHES_${OPSYS}_${OSREL:R}}
+EXTRA_PATCHES_FreeBSD_9= ${FILESDIR}/extra-patch-src_client.c
post-patch:
@${REINPLACE_CMD} -e 's|%%CC%%|${CC}|g' ${WRKSRC}/Make.defaults
@@ -43,4 +40,4 @@ do-install:
${INSTALL_MAN} ${WRKSRC}/src/pesign-client.1 ${STAGEDIR}${MAN1PREFIX}/man/man1
${INSTALL_MAN} ${WRKSRC}/src/pesign.1 ${STAGEDIR}${MAN1PREFIX}/man/man1
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
diff --git a/sysutils/pesign/files/extra-patch-src_client.c b/sysutils/pesign/files/extra-patch-src_client.c
new file mode 100644
index 000000000000..885e26172847
--- /dev/null
+++ b/sysutils/pesign/files/extra-patch-src_client.c
@@ -0,0 +1,52 @@
+--- src/client.c.orig 2014-10-24 19:51:06 UTC
++++ src/client.c
+@@ -47,6 +47,49 @@ static struct {
+ {FLAG_LIST_END, NULL},
+ };
+
++#if defined(__FreeBSD__) && __FreeBSD__ < 10
++/*-
++ * Copyright (c) 2013 Niclas Zeising
++ * All rights reserved.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ * 1. Redistributions of source code must retain the above copyright
++ * notice, this list of conditions and the following disclaimer.
++ * 2. Redistributions in binary form must reproduce the above copyright
++ * notice, this list of conditions and the following disclaimer in the
++ * documentation and/or other materials provided with the distribution.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
++ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
++ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
++ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
++ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
++ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
++ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
++ * SUCH DAMAGE.
++ *
++ * $FreeBSD: head/lib/libc/string/strchrnul.c 288004 2015-09-20 03:51:15Z rodrigc
++ */
++
++static char *
++strchrnul(const char *p, int ch)
++{
++ char c;
++
++ c = ch;
++ for (;; ++p) {
++ if (*p == c || *p == '\0')
++ return ((char *)p);
++ }
++ /* NOTREACHED */
++}
++#endif
++
+ static void
+ print_flag_name(FILE *f, int flag)
+ {
diff --git a/sysutils/pesign/files/patch-src-daemon.c b/sysutils/pesign/files/patch-src-daemon.c
index ae033ffcecb4..9d021c4a51a8 100644
--- a/sysutils/pesign/files/patch-src-daemon.c
+++ b/sysutils/pesign/files/patch-src-daemon.c
@@ -8,6 +8,15 @@
#include <sys/types.h>
#include <sys/socket.h>
#include <sys/stat.h>
+@@ -839,7 +838,7 @@ shutdown:
+ do_shutdown(ctx, nsockets, pollfds);
+ return 0;
+ }
+- rc = ppoll(pollfds, nsockets, NULL, NULL);
++ rc = poll(pollfds, nsockets, INFTIM);
+ if (should_exit != 0)
+ goto shutdown;
+ if (rc < 0) {
@@ -864,8 +863,8 @@ shutdown:
struct sockaddr_un remote;