FreeBSD Bugzilla – Attachment 245489 Details for
Bug 274331
net/rinetd: update to new upstream and 0.73
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
revised (v3) patch to 0.73 + d4e0a60
0001-net-rinetd-update-to-new-upstream-and-0.73.patch (text/plain), 10.38 KB, created by
Marcin Gryszkalis
on 2023-10-07 17:00:36 UTC
(
hide
)
Description:
revised (v3) patch to 0.73 + d4e0a60
Filename:
MIME Type:
Creator:
Marcin Gryszkalis
Created:
2023-10-07 17:00:36 UTC
Size:
10.38 KB
patch
obsolete
>From 81c2a960377e0b13aeb038c72ffadf650c84f177 Mon Sep 17 00:00:00 2001 >From: Marcin Gryszkalis <mg@fork.pl> >Date: Sat, 7 Oct 2023 18:57:30 +0200 >Subject: [PATCH] net/rinetd: update to new upstream and 0.73 > >--- > net/rinetd/Makefile | 27 ++-- > net/rinetd/distinfo | 5 +- > net/rinetd/files/patch-Makefile | 22 --- > net/rinetd/files/patch-rinetd.c | 18 --- > net/rinetd/files/patch-select2poll | 194 ------------------------- > net/rinetd/files/patch-src_Makefile.am | 11 ++ > net/rinetd/files/patch-src_rinetd.c | 11 ++ > 7 files changed, 40 insertions(+), 248 deletions(-) > delete mode 100644 net/rinetd/files/patch-Makefile > delete mode 100644 net/rinetd/files/patch-rinetd.c > delete mode 100644 net/rinetd/files/patch-select2poll > create mode 100644 net/rinetd/files/patch-src_Makefile.am > create mode 100644 net/rinetd/files/patch-src_rinetd.c > >diff --git a/net/rinetd/Makefile b/net/rinetd/Makefile >index 0da4a420331b..3d91b7993446 100644 >--- a/net/rinetd/Makefile >+++ b/net/rinetd/Makefile >@@ -1,21 +1,26 @@ > PORTNAME= rinetd >-PORTVERSION= 0.62 >-PORTREVISION= 4 >+PORTVERSION= 0.73 >+DISTVERSIONPREFIX= v >+PORTREVISION= 0 > CATEGORIES= net >-MASTER_SITES= http://www.boutell.com/rinetd/http/ \ >- GENTOO >-DISTNAME= rinetd > > MAINTAINER= garga@FreeBSD.org > COMMENT= Simple TCP port redirector >+WWW= https://github.com/samhocevar/rinetd > > LICENSE= GPLv2 > >+USES= cpe dos2unix autoreconf >+ > OPTIONS_DEFINE= DOCS > >-WRKSRC= ${WRKDIR}/rinetd-${PORTVERSION} >+WRKSRC= ${WRKDIR}/rinetd-${GH_TAGNAME} >+ >+GNU_CONFIGURE= yes > >-USES= cpe dos2unix >+USE_GITHUB= yes >+GH_ACCOUNT= samhocevar >+GH_TAGNAME= d4e0a60 > > PORTDOCS= index.html > PLIST_FILES= sbin/rinetd \ >@@ -23,15 +28,13 @@ PLIST_FILES= sbin/rinetd \ > > USE_RC_SUBR= rinetd > >-post-extract: >- @${MV} ${WRKDIR}/rinetd ${WRKSRC} >- > post-patch: > @${REINPLACE_CMD} -E "s,(/etc/rinetd.conf),${PREFIX}\1," \ >- ${WRKSRC}/rinetd.[8c] >+ ${WRKSRC}/rinetd.8 >+ @${REINPLACE_CMD} -E "s,(/etc/rinetd.conf),${PREFIX}\1," \ >+ ${WRKSRC}/src/rinetd.h > @${REINPLACE_CMD} -E "s,/usr(/sbin/rinetd),${PREFIX}\1," \ > ${WRKSRC}/rinetd.8 >- @${REINPLACE_CMD} -e "s,cc ,${CC} ,g" ${WRKSRC}/Makefile > > post-install: > ${MKDIR} ${STAGEDIR}${DOCSDIR} >diff --git a/net/rinetd/distinfo b/net/rinetd/distinfo >index bc61c920ceb7..7f43e7e364cf 100644 >--- a/net/rinetd/distinfo >+++ b/net/rinetd/distinfo >@@ -1,2 +1,3 @@ >-SHA256 (rinetd.tar.gz) = 0c68d27c5bd4b16ce4f58a6db514dd6ff37b2604a88b02c1dfcdc00fc1059898 >-SIZE (rinetd.tar.gz) = 115541 >+TIMESTAMP = 1696686326 >+SHA256 (samhocevar-rinetd-v0.73-d4e0a60_GH0.tar.gz) = 76eef19e0af8459c9434ac8ac0b58edac1bba353f5aaceb1d5f971fb3f6a3016 >+SIZE (samhocevar-rinetd-v0.73-d4e0a60_GH0.tar.gz) = 45544 >diff --git a/net/rinetd/files/patch-Makefile b/net/rinetd/files/patch-Makefile >deleted file mode 100644 >index f0e1b68d01bf..000000000000 >--- a/net/rinetd/files/patch-Makefile >+++ /dev/null >@@ -1,22 +0,0 @@ >---- ../rinetd.orig/Makefile Mon Mar 1 13:41:50 1999 >-+++ Makefile Sat Jun 12 12:54:48 1999 >-@@ -1,9 +1,14 @@ >--CFLAGS=-DLINUX -g >-+CFLAGS+=-I. -DLINUX >- >--rinetd: rinetd.o match.o >-- gcc rinetd.o match.o -o rinetd >-+all: rinetd >-+ >-+rinetd: rinetd.o match.o getopt.o >-+ ${CC} ${CFLAGS} rinetd.o match.o getopt.o -o rinetd >-+ >-+getopt.o: >-+ ${CC} ${CFLAGS} -c getopt.c >- >- install: rinetd >-- install -m 700 rinetd /usr/sbin >-- install -m 644 rinetd.8 /usr/man/man8 >-+ install -s -m 755 rinetd ${DESTDIR}${PREFIX}/sbin >-+ install -m 644 rinetd.8 ${DESTDIR}${PREFIX}/man/man8 >- >diff --git a/net/rinetd/files/patch-rinetd.c b/net/rinetd/files/patch-rinetd.c >deleted file mode 100644 >index 3c32c5bf626d..000000000000 >--- a/net/rinetd/files/patch-rinetd.c >+++ /dev/null >@@ -1,18 +0,0 @@ >---- rinetd.c.orig Thu Jul 19 22:19:59 2001 >-+++ rinetd.c Thu Jul 19 22:20:26 2001 >-@@ -243,6 +243,7 @@ >- signal(SIGHUP, hup); >- #endif /* WIN32 */ >- signal(SIGTERM, term); >-+ setsid(); >- initArrays(); >- readConfiguration(); >- RegisterPID(); >-@@ -646,6 +646,7 @@ >- } >- } >- } >-+ fclose(in); >- /* Open the log file */ >- if (logFile) { >- fclose(logFile); >diff --git a/net/rinetd/files/patch-select2poll b/net/rinetd/files/patch-select2poll >deleted file mode 100644 >index cbcb3d749b48..000000000000 >--- a/net/rinetd/files/patch-select2poll >+++ /dev/null >@@ -1,194 +0,0 @@ >---- rinetd.c.orig Mon Apr 14 22:19:23 2003 >-+++ rinetd.c Tue Oct 4 07:25:42 2005 >-@@ -12,6 +12,7 @@ >- #include <netinet/in.h> >- #include <getopt.h> >- #include <errno.h> >-+#include <poll.h> >- #define INVALID_SOCKET (-1) >- #include <sys/time.h> >- #endif /* WIN32 */ >-@@ -94,6 +95,7 @@ >- #include "match.h" >- >- SOCKET *seFds = 0; >-+static int first_set = 0; >- /* In network order, for network purposes */ >- struct in_addr *seLocalAddrs = 0; >- unsigned short *seLocalPorts = 0; >-@@ -750,15 +752,82 @@ >- void openLocalFd(int se, int i); >- int getAddress(char *host, struct in_addr *iaddr); >- >-+inline void poll_init_fds(struct pollfd *pfds, int size) { >-+ int i; >-+ >-+ memset(pfds, 0, sizeof(struct pollfd) * size); >-+ first_set = 1; >-+ for(i = 0; i < size; i++) >-+ pfds[i].fd = -1; >-+} >-+ >-+inline int poll_set_fd(struct pollfd *pfds, int size, int count, >-+ int fd, short int ev) { >-+#ifdef _NEW_POLL_SET_FD >-+ if(first_set) { >-+ pfds[count].fd = fd; >-+ pfds[count].events |= ev; >-+ first_set = 0; >-+ return 0; >-+ } >-+ if(pfds[count].fd != fd && !first_set) { >-+ count++; >-+ } >-+ >-+ pfds[count].fd = fd; >-+ pfds[count].events |= ev; >-+ >-+ return count; >-+#else >-+ int i; >-+ >-+ for(i = 0; i < size; i++) { >-+ if(pfds[i].fd == -1) { >-+ pfds[i].fd = fd; >-+ pfds[i].events |= ev; >-+ count++; >-+ break; >-+ } >-+ if(pfds[i].fd == fd) { >-+ pfds[i].events |= ev; >-+ break; >-+ } >-+ } >-+ >-+ return count; >-+#endif >-+} >-+ >-+int poll_fd_isset(struct pollfd *pfds, int nfds, int fd, short event) { >-+ int i; >-+ >-+ for(i = 0; i < nfds; i++) { >-+ if(pfds[i].fd == fd) >-+ return pfds[i].revents & event; >-+ } >-+ >-+ return 0; >-+} >-+ >- void selectPass(void) { >- int i; >-- fd_set readfds, writefds; >-- FD_ZERO(&readfds); >-- FD_ZERO(&writefds); >-+ int nfds = 0; >-+ int total = 0; >-+ static struct pollfd *pfds = NULL; >-+ >- /* Server sockets */ >-+ total = seTotal + (coTotal * 2); >-+ >-+ if(!pfds) { >-+ pfds = malloc(sizeof(struct pollfd) * total); >-+ } >-+ >-+ poll_init_fds(pfds, total); >-+ >- for (i = 0; (i < seTotal); i++) { >- if (seFds[i] != INVALID_SOCKET) { >-- FD_SET(seFds[i], &readfds); >-+ //FD_SET(seFds[i], &readfds) >-+ nfds = poll_set_fd(pfds, total, nfds, seFds[i], POLLIN); >- } >- } >- /* Connection sockets */ >-@@ -768,35 +837,47 @@ >- } >- if (coClosing[i]) { >- if (!reClosed[i]) { >-- FD_SET(reFds[i], &writefds); >-- } >-- if (!loClosed[i]) { >-- FD_SET(loFds[i], &writefds); >-+ //FD_SET(reFds[i], &writefds); >-+ nfds = poll_set_fd(pfds, total, nfds, >-+ reFds[i], POLLOUT); >- } >- } >- /* Get more input if we have room for it */ >- if ((!reClosed[i]) && (coInputRPos[i] < bufferSpace)) { >-- FD_SET(reFds[i], &readfds); >-+ //FD_SET(reFds[i], &readfds); >-+ nfds = poll_set_fd(pfds, total, nfds, reFds[i], POLLIN); >- } >- /* Send more output if we have any */ >- if ((!reClosed[i]) && (coOutputWPos[i] < coOutputRPos[i])) { >-- FD_SET(reFds[i], &writefds); >-+ //FD_SET(reFds[i], &writefds); >-+ nfds = poll_set_fd(pfds, total, nfds, reFds[i], POLLOUT); >- } >-+ if (coClosing[i]) { >-+ if (!loClosed[i]) { >-+ //FD_SET(loFds[i], &writefds); >-+ nfds = poll_set_fd(pfds, total, nfds, >-+ loFds[i], POLLOUT); >-+ } >-+ } >- /* Accept more output from the local >- server if there's room */ >- if ((!loClosed[i]) && (coOutputRPos[i] < bufferSpace)) { >-- FD_SET(loFds[i], &readfds); >-+ //FD_SET(loFds[i], &readfds); >-+ nfds = poll_set_fd(pfds, total, nfds, loFds[i], POLLIN); >- } >- /* Send more input to the local server >- if we have any */ >- if ((!loClosed[i]) && (coInputWPos[i] < coInputRPos[i])) { >-- FD_SET(loFds[i], &writefds); >-+ //FD_SET(loFds[i], &writefds); >-+ nfds = poll_set_fd(pfds, total, nfds, loFds[i], POLLOUT); >- } >- } >-- select(maxfd + 1, &readfds, &writefds, 0, 0); >-+ //select(maxfd + 1, &readfds, &writefds, 0, 0); >-+ poll(pfds, nfds + 1, -1); >- for (i = 0; (i < seTotal); i++) { >- if (seFds[i] != -1) { >-- if (FD_ISSET(seFds[i], &readfds)) { >-+ //if (FD_ISSET(seFds[i], &readfds)) { >-+ if (poll_fd_isset(pfds, nfds, seFds[i], POLLIN)) { >- handleAccept(i); >- } >- } >-@@ -806,22 +887,26 @@ >- continue; >- } >- if (!reClosed[i]) { >-- if (FD_ISSET(reFds[i], &readfds)) { >-+ //if (FD_ISSET(reFds[i], &readfds)) { >-+ if (poll_fd_isset(pfds, nfds, reFds[i], POLLIN)) { >- handleRemoteRead(i); >- } >- } >- if (!reClosed[i]) { >-- if (FD_ISSET(reFds[i], &writefds)) { >-+ //if (FD_ISSET(reFds[i], &writefds)) { >-+ if (poll_fd_isset(pfds, nfds, reFds[i], POLLOUT)) { >- handleRemoteWrite(i); >- } >- } >- if (!loClosed[i]) { >-- if (FD_ISSET(loFds[i], &readfds)) { >-+ //if (FD_ISSET(loFds[i], &readfds)) { >-+ if (poll_fd_isset(pfds, nfds, loFds[i], POLLIN)) { >- handleLocalRead(i); >- } >- } >- if (!loClosed[i]) { >-- if (FD_ISSET(loFds[i], &writefds)) { >-+ //if (FD_ISSET(loFds[i], &writefds)) { >-+ if (poll_fd_isset(pfds, nfds, loFds[i], POLLOUT)) { >- handleLocalWrite(i); >- } >- } >diff --git a/net/rinetd/files/patch-src_Makefile.am b/net/rinetd/files/patch-src_Makefile.am >new file mode 100644 >index 000000000000..1ab42eb1cad7 >--- /dev/null >+++ b/net/rinetd/files/patch-src_Makefile.am >@@ -0,0 +1,11 @@ >+--- src/Makefile.am.orig 2023-10-07 16:13:36 UTC >++++ src/Makefile.am >+@@ -18,7 +18,7 @@ parse.c: parse.peg >+ # _DARWIN_C_SOURCE is for NI_MAXHOST on OS X >+ # _XOPEN_SOURCE is for struct sigaction >+ # _GNU_SOURCE is for h_errno and gethostbyname-related macros >+-___rinetd_CFLAGS = -std=c99 -D_POSIX_C_SOURCE=200809L \ >++___rinetd_CFLAGS = -std=c99 \ >+ -D_XOPEN_SOURCE -D_GNU_SOURCE -D_DARWIN_C_SOURCE \ >+ -Wall -Wextra -Wwrite-strings >+ >diff --git a/net/rinetd/files/patch-src_rinetd.c b/net/rinetd/files/patch-src_rinetd.c >new file mode 100644 >index 000000000000..5f0ea6dc73b1 >--- /dev/null >+++ b/net/rinetd/files/patch-src_rinetd.c >@@ -0,0 +1,11 @@ >+--- src/rinetd.c.orig 2023-10-07 16:13:36 UTC >++++ src/rinetd.c >+@@ -927,7 +927,7 @@ RETSIGTYPE quit(int s) >+ >+ void registerPID(char const *pid_file_name) >+ { >+-#if defined(__linux__) >++#if defined(__linux__) || defined(__FreeBSD__) >+ FILE *pid_file = fopen(pid_file_name, "w"); >+ if (pid_file == NULL) { >+ /* non-fatal, non-Linux may lack /var/run... */ >-- >2.42.0 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 274331
:
245482
|
245487
| 245489