diff --git a/net/dante/Makefile b/net/dante/Makefile index 0031bfd84ba0..458dbabda958 100644 --- a/net/dante/Makefile +++ b/net/dante/Makefile @@ -1,50 +1,53 @@ PORTNAME= dante PORTVERSION= 1.4.3 CATEGORIES= net security MASTER_SITES= http://www.inet.no/dante/files/ \ ftp://ftp.inet.no/pub/socks/ -MAINTAINER= ports@FreeBSD.org +MAINTAINER= danfe@FreeBSD.org COMMENT= Circuit-level firewall/proxy WWW= https://www.inet.no/dante/ LICENSE= BSD4CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE LIB_DEPENDS= libminiupnpc.so:net/miniupnpc \ libsasl2.so:security/cyrus-sasl2 CONFLICTS= socks5 -USES= autoreconf libtool localbase +USES= libtool localbase GNU_CONFIGURE= yes +GNU_CONFIGURE_MANPREFIX= ${PREFIX}/share CONFIGURE_ARGS= --with-socks-conf=${PREFIX}/etc/socks.conf \ --with-sockd-conf=${PREFIX}/etc/sockd.conf INSTALL_TARGET= install-strip USE_LDCONFIG= yes USE_RC_SUBR= sockd OPTIONS_DEFINE= DOCS EXAMPLES post-install: - ${INSTALL_DATA} ${WRKSRC}/example/socks.conf ${STAGEDIR}${PREFIX}/etc/socks.conf.sample - ${INSTALL_DATA} ${WRKSRC}/example/sockd.conf ${STAGEDIR}${PREFIX}/etc/sockd.conf.sample +.for x in s d + ${INSTALL_DATA} ${WRKSRC}/example/sock${x}.conf \ + ${STAGEDIR}${PREFIX}/etc/sock${x}.conf.sample +.endfor post-install-EXAMPLES-on: @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} - ${INSTALL_DATA} ${WRKSRC}/example/sockd-basic.conf ${STAGEDIR}${EXAMPLESDIR} - ${INSTALL_DATA} ${WRKSRC}/example/sockd-chaining.conf ${STAGEDIR}${EXAMPLESDIR} - ${INSTALL_DATA} ${WRKSRC}/example/socks-simple-withoutnameserver.conf ${STAGEDIR}${EXAMPLESDIR} - ${INSTALL_DATA} ${WRKSRC}/example/socks-simple.conf ${STAGEDIR}${EXAMPLESDIR} + ${INSTALL_DATA} ${WRKSRC}/example/sockd-basic.conf \ + ${WRKSRC}/example/sockd-chaining.conf \ + ${WRKSRC}/example/socks-simple-withoutnameserver.conf \ + ${WRKSRC}/example/socks-simple.conf ${STAGEDIR}${EXAMPLESDIR} post-install-DOCS-on: - @${MKDIR} ${STAGEDIR}${DOCSDIR} @${MKDIR} ${STAGEDIR}${DOCSDIR}/contrib - ${INSTALL_DATA} ${WRKSRC}/doc/README* ${STAGEDIR}${DOCSDIR} - ${INSTALL_DATA} ${WRKSRC}/doc/rfc* ${STAGEDIR}${DOCSDIR} - ${INSTALL_DATA} ${WRKSRC}/doc/SOCKS4*.protocol ${STAGEDIR}${DOCSDIR} - ${INSTALL_DATA} ${WRKSRC}/UPGRADE ${STAGEDIR}${DOCSDIR} - ${INSTALL_DATA} ${WRKSRC}/contrib/sockd-stat.awk ${STAGEDIR}${DOCSDIR}/contrib/sockd-stat.awk + ${INSTALL_DATA} ${WRKSRC}/doc/README* \ + ${WRKSRC}/doc/rfc* \ + ${WRKSRC}/doc/SOCKS4*.protocol \ + ${WRKSRC}/UPGRADE ${STAGEDIR}${DOCSDIR} + ${INSTALL_DATA} ${WRKSRC}/contrib/sockd-stat.awk \ + ${STAGEDIR}${DOCSDIR}/contrib .include diff --git a/net/dante/files/patch-acinclude.m4 b/net/dante/files/patch-acinclude.m4 deleted file mode 100644 index 771468ccefc0..000000000000 --- a/net/dante/files/patch-acinclude.m4 +++ /dev/null @@ -1,276 +0,0 @@ ---- acinclude.m4.orig 2023-07-27 14:17:06 UTC -+++ acinclude.m4 -@@ -437,270 +437,10 @@ unset pipeside - #This little hack tries to make an educated guess as to what is the - #case on this particular system. - AC_MSG_CHECKING(read/send-side pipe system) --AC_TRY_RUN([ --#include --#include -+#This test is known to fail on the FreeBSD's official packaging -+#machine. Set it to recvbased as FreeBSD is known to be. - --#include --#include --#include --#include --#include --#include --#include -- --#ifndef MIN --#define MIN(a,b) ((a) < (b) ? (a) : (b)) --#endif /* !MIN */ -- --#if NEED_AF_LOCAL --#define AF_LOCAL AF_UNIX --#endif /* NEED_AF_LOCAL */ -- --#define PACKETSIZE (1024) -- --#define PADBYTES (sizeof(short) * (64)) --/* -- * Just a wild guess. Dante uses sizeof(long). -- */ -- --#define SEND_PIPE (0) --#define RECV_PIPE (1) -- --#define EXIT_OK (0) /* type successfully determined */ --#define EXIT_UNKNOWN (1) /* error: unable to determine type */ -- --static void --setsockets(const int doreverse, const size_t packetsize, -- const int s, const int r, -- int *sndbuf, int *sndbuf_set, -- int *rcvbuf, int *rcvbuf_set); -- --static size_t --sendtest(const int s, const char *buf, const size_t buflen); -- --void --reswrite(const char *res); -- --int --main(void) --{ -- size_t sent, packetcount; -- int sndbuf, sndbuf_set, rcvbuf, rcvbuf_set; -- char buf[PACKETSIZE]; -- int datapipev[2]; -- -- if (socketpair(AF_LOCAL, SOCK_DGRAM, 0, datapipev) != 0) { -- perror("socketpair()"); -- exit(EXIT_UNKNOWN); -- } -- -- setsockets(0, -- PACKETSIZE, -- datapipev[SEND_PIPE], -- datapipev[RECV_PIPE], -- &sndbuf, &sndbuf_set, -- &rcvbuf, &rcvbuf_set); -- -- packetcount = MIN(sndbuf, sndbuf_set) / (PACKETSIZE + PADBYTES); -- -- fprintf(stderr, -- "Requested sndbuf to be %d, is %d. " -- "Requested rcvbuf to be %d, is %d.\n" -- "Calculated packetcount is %lu\n", -- sndbuf, sndbuf_set, -- rcvbuf, rcvbuf_set, -- (unsigned long)packetcount); -- -- sent = sendtest(datapipev[SEND_PIPE], buf, PACKETSIZE) / PACKETSIZE; -- -- if (sent >= packetcount) { -- fprintf(stderr, "status determined by send-side\n"); -- reswrite("sendbased"); -- exit(EXIT_OK); -- } -- -- /* -- * Try the reverse. Perhaps this system wants a large rcvbuf rather than -- * a large sndbuf. -- */ -- close(datapipev[SEND_PIPE]); -- close(datapipev[RECV_PIPE]); -- -- if (socketpair(AF_LOCAL, SOCK_DGRAM, 0, datapipev) != 0) { -- perror("socketpair()"); -- exit(EXIT_UNKNOWN); -- } -- -- setsockets(1, -- PACKETSIZE, -- datapipev[SEND_PIPE], -- datapipev[RECV_PIPE], -- &sndbuf, &sndbuf_set, -- &rcvbuf, &rcvbuf_set); -- -- packetcount = MIN(rcvbuf, rcvbuf_set) / (PACKETSIZE + PADBYTES); -- -- fprintf(stderr, -- "Requested sndbuf to be %d, is %d. " -- "Requested rcvbuf to be %d, is %d.\n" -- "Calculated packetcount is %lu\n", -- sndbuf, sndbuf_set, -- rcvbuf, rcvbuf_set, -- (unsigned long)packetcount); -- -- sent = sendtest(datapipev[SEND_PIPE], buf, PACKETSIZE) / PACKETSIZE; -- -- if (sent >= packetcount) { -- fprintf(stderr, "status determined by read-side\n"); -- reswrite("recvbased"); -- exit(EXIT_OK); -- } -- -- fprintf(stderr, "status is unknown\n"); -- return EXIT_UNKNOWN; --} -- --static void --setsockets(doreverse, packetsize, s, r, sndbuf, sndbuf_set, rcvbuf, rcvbuf_set) -- const int doreverse; -- const size_t packetsize; -- const int s; -- const int r; -- int *sndbuf, *sndbuf_set; -- int *rcvbuf, *rcvbuf_set; --{ -- socklen_t len; -- int p; -- -- if ((p = fcntl(s, F_GETFL, 0)) == -1 -- || fcntl(s, F_SETFL, p | O_NONBLOCK) == -1 -- || fcntl(r, F_SETFL, p | O_NONBLOCK) == -1) { -- perror("fcntl(F_SETFL/F_GETFL, O_NONBLOCK) failed"); -- exit(EXIT_UNKNOWN); -- } -- -- len = sizeof(*sndbuf_set); -- -- if (doreverse) { -- *sndbuf = packetsize + PADBYTES; -- -- if (setsockopt(s, SOL_SOCKET, SO_SNDBUF, sndbuf, sizeof(*sndbuf)) != 0) { -- perror("setsockopt(SO_SNDBUF)"); -- exit(EXIT_UNKNOWN); -- } -- -- if (getsockopt(s, SOL_SOCKET, SO_SNDBUF, sndbuf_set, &len) != 0) { -- perror("getsockopt(SO_SNDBUF)"); -- exit(EXIT_UNKNOWN); -- } -- -- *rcvbuf = *sndbuf_set * 10; -- if (setsockopt(r, SOL_SOCKET, SO_RCVBUF, rcvbuf, sizeof(*rcvbuf)) != 0) { -- perror("setsockopt(SO_RCVBUF)"); -- exit(EXIT_UNKNOWN); -- } -- } -- else { -- *rcvbuf = packetsize + PADBYTES; -- -- if (setsockopt(r, SOL_SOCKET, SO_RCVBUF, rcvbuf, sizeof(*rcvbuf)) != 0) { -- perror("setsockopt(SO_RCVBUF)"); -- exit(EXIT_UNKNOWN); -- } -- -- if (getsockopt(r, SOL_SOCKET, SO_RCVBUF, rcvbuf_set, &len) != 0) { -- perror("getsockopt(SO_RCVBUF)"); -- exit(EXIT_UNKNOWN); -- } -- -- *sndbuf = *rcvbuf_set * 10; -- if (setsockopt(s, SOL_SOCKET, SO_SNDBUF, sndbuf, sizeof(*sndbuf)) != 0) { -- perror("setsockopt(SO_SNDBUF)"); -- exit(EXIT_UNKNOWN); -- } -- } -- -- if (getsockopt(s, SOL_SOCKET, SO_SNDBUF, sndbuf_set, &len) != 0 -- || getsockopt(r, SOL_SOCKET, SO_RCVBUF, rcvbuf_set, &len) != 0) { -- perror("getsockopt(SO_SNDBUF/SO_RCVBUF)"); -- exit(EXIT_UNKNOWN); -- } -- -- fprintf(stderr, "sndbuf is %lu, rcvbuf is %lu\n", -- (unsigned long)*sndbuf_set, (unsigned long)*rcvbuf_set); -- -- if (doreverse) { -- if (*rcvbuf_set < *rcvbuf) { -- fprintf(stderr, "failed to set rcvbuf to %lu. Is %lu\n", -- (unsigned long)*rcvbuf, (unsigned long)*rcvbuf_set); -- exit(EXIT_UNKNOWN); -- } -- } -- else { -- if (*sndbuf_set < *sndbuf) { -- fprintf(stderr, "failed to set sndbuf to %lu (is %lu)\n", -- (unsigned long)*sndbuf, (unsigned long)*sndbuf_set); -- exit(EXIT_UNKNOWN); -- } -- } --} -- --static size_t --sendtest(s, buf, buflen) -- const int s; -- const char *buf; -- const size_t buflen; --{ -- ssize_t rc; -- size_t sent; -- int i; -- -- i = 1; -- sent = 0; -- errno = 0; -- -- while (1) { -- if ((rc = write(s, buf, buflen)) == -1) -- break; -- else { -- assert(rc == (ssize_t)buflen); -- -- ++i; -- sent += rc; -- } -- } -- -- fprintf(stderr, -- "failed sending packet #%d, sent %ld/%ld. " -- "Total bytes sent: %lu. Error on last packet: %s\n", -- i, -- (long)rc, -- (unsigned long)buflen, -- (unsigned long)sent, -- strerror(errno)); -- -- return sent; --} -- --void --reswrite(res) -- const char *res; --{ -- FILE *fp; -- if ((fp = fopen("conftest.out", "w")) == NULL) { -- perror("fopen"); -- exit(1); -- } -- fprintf(fp, "%s\n", res); -- fclose(fp); --}], [pipeside=`cat conftest.out` -- AC_MSG_RESULT([$pipeside]) --], [AC_MSG_RESULT(unknown)], -- [dnl XXX assume no when cross-compiling -- AC_MSG_RESULT(cross-compiling, assuming unknown)]) -- --case $pipeside in -+case "recvbased" in - recvbased) - AC_DEFINE(HAVE_PIPEBUFFER_RECV_BASED, 1, [platform pipe behavior]) - ;; diff --git a/net/dante/pkg-plist b/net/dante/pkg-plist index 5d5e703139d2..009b96a3336c 100644 --- a/net/dante/pkg-plist +++ b/net/dante/pkg-plist @@ -1,28 +1,28 @@ bin/socksify @sample etc/sockd.conf.sample @sample etc/socks.conf.sample include/socks.h lib/libdsocks.so lib/libsocks.a lib/libsocks.so lib/libsocks.so.0 lib/libsocks.so.0.1.1 sbin/sockd -man/man1/socksify.1.gz -man/man5/sockd.conf.5.gz -man/man5/socks.conf.5.gz -man/man8/sockd.8.gz %%PORTEXAMPLES%%%%EXAMPLESDIR%%/sockd-basic.conf %%PORTEXAMPLES%%%%EXAMPLESDIR%%/sockd-chaining.conf %%PORTEXAMPLES%%%%EXAMPLESDIR%%/socks-simple-withoutnameserver.conf %%PORTEXAMPLES%%%%EXAMPLESDIR%%/socks-simple.conf %%PORTDOCS%%%%DOCSDIR%%/README.socksify %%PORTDOCS%%%%DOCSDIR%%/README.survey %%PORTDOCS%%%%DOCSDIR%%/README.usage %%PORTDOCS%%%%DOCSDIR%%/SOCKS4.protocol %%PORTDOCS%%%%DOCSDIR%%/SOCKS4A.protocol %%PORTDOCS%%%%DOCSDIR%%/UPGRADE %%PORTDOCS%%%%DOCSDIR%%/contrib/sockd-stat.awk %%PORTDOCS%%%%DOCSDIR%%/rfc1928.txt %%PORTDOCS%%%%DOCSDIR%%/rfc1929.txt %%PORTDOCS%%%%DOCSDIR%%/rfc1961.txt +share/man/man1/socksify.1.gz +share/man/man5/sockd.conf.5.gz +share/man/man5/socks.conf.5.gz +share/man/man8/sockd.8.gz