git: 8d05626bb2eb - main - net/ipsvd: fix pkg-fallout with LLVM15

From: Matthias Andree <mandree_at_FreeBSD.org>
Date: Fri, 05 May 2023 22:26:25 UTC
The branch main has been updated by mandree:

URL: https://cgit.FreeBSD.org/ports/commit/?id=8d05626bb2eb2ec1361e876f8ac20baf2c6a1ee3

commit 8d05626bb2eb2ec1361e876f8ac20baf2c6a1ee3
Author:     Matthias Andree <mandree@FreeBSD.org>
AuthorDate: 2023-05-05 22:20:46 +0000
Commit:     Matthias Andree <mandree@FreeBSD.org>
CommitDate: 2023-05-05 22:26:21 +0000

    net/ipsvd: fix pkg-fallout with LLVM15
    
    ./compile udpsvd.c
    udpsvd.c:271:32: error: incompatible pointer to integer conversion passing 'gid_t[61]' (aka 'unsigned int[61]') to parameter of type 'unsigned long' [-Wint-conversion]
          bufnum[fmt_ulong(bufnum, ugid.gid)] =0;
                                   ^~~~~~~~
    and use ugid.gid[0], and -include unistd.h globally, to fix
    several missing prototype warnings around execve.
    
    Someone tell Gerrit Pape that this code needs some serious fixing
    around type widths and prototypes.
    
    Deprecate, unless the upstream fixes things, and expire end of 2023.
---
 net/ipsvd/Makefile                 |  7 ++++++-
 net/ipsvd/files/patch-src_udpsvd.c | 11 +++++++++++
 2 files changed, 17 insertions(+), 1 deletion(-)

diff --git a/net/ipsvd/Makefile b/net/ipsvd/Makefile
index 87c6d77f4891..3e67eb66bc5a 100644
--- a/net/ipsvd/Makefile
+++ b/net/ipsvd/Makefile
@@ -1,5 +1,6 @@
 PORTNAME=	ipsvd
 PORTVERSION=	1.0.0
+PORTREVISION=	1
 CATEGORIES=	net
 MASTER_SITES=	http://smarden.org/ipsvd/
 
@@ -18,12 +19,16 @@ BROKEN_riscv64=		fails to install: Checking udpsvd... drop: unable to read from
 WRKSRC=		${WRKDIR}/net/${DISTNAME}
 ALL_TARGET=	default
 
+DEPRECATED=	bogus assumption of system type widths, likely crash-prone
+EXPIRATION_DATE=2023-12-31
+
 DOCS=		package/CHANGES package/COPYING package/README doc/*.html
 
 OPTIONS_DEFINE=	DOCS
+USE_CSTD=	c89
 
 do-configure:
-	@${ECHO_CMD} "${CC} ${CFLAGS}" > ${WRKSRC}/src/conf-cc
+	@${ECHO_CMD} "${CC} ${CFLAGS} -include unistd.h" > ${WRKSRC}/src/conf-cc
 	@${ECHO_CMD} "${CC} ${LDFLAGS}" > ${WRKSRC}/src/conf-ld
 	@${ECHO_CMD} "${LOCALBASE}/include/libdjbdns" \
 		> ${WRKSRC}/src/conf-djbdnsinc
diff --git a/net/ipsvd/files/patch-src_udpsvd.c b/net/ipsvd/files/patch-src_udpsvd.c
new file mode 100644
index 000000000000..15c186535726
--- /dev/null
+++ b/net/ipsvd/files/patch-src_udpsvd.c
@@ -0,0 +1,11 @@
+--- src/udpsvd.c.orig	2008-06-15 20:31:14 UTC
++++ src/udpsvd.c
+@@ -268,7 +268,7 @@ int main(int argc, const char **argv, const char *cons
+     if (user) {
+       bufnum[fmt_ulong(bufnum, ugid.uid)] =0;
+       out(", uid "); out(bufnum);
+-      bufnum[fmt_ulong(bufnum, ugid.gid)] =0;
++      bufnum[fmt_ulong(bufnum, ugid.gid[0])] =0;
+       out(", gid "); out(bufnum);
+     }
+     flush(", starting.\n");