From nobody Sat Jul 29 16:58:04 2023 X-Original-To: dev-commits-ports-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4RCrKm5PB4z4pdfc; Sat, 29 Jul 2023 16:58:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4RCrKm3XJ0z3Gvh; Sat, 29 Jul 2023 16:58:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1690649884; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tTrmRgEieqHPz89M4tU6644k9IRkxkVG97dmYu06g1U=; b=EpGzyQjHkhLL4XCHtITXMggW+JUx1pUW6mAu0tOWWytqQc1hmyZkUzVS5STOkLDbtClWbz gbbSnL2Z3FzpSs2XOC607Gy03r5DBAT50um9e08Ns8hOrtHMHLSUVtJ3rEmMBbtfXvlRnF iJilxejZJKWoMomNcKN/TbnhJd6ZSmV357maF9sm9FSjO/UEmPhujfyogbSfnrErVEwSyb Hf1L4w0bz3bV9MxRsInJGwI5NXuePFyrK20lkgNFiEHV6f099Jj4goe+19YMZrz+2j/kz6 eBEEJM/R3YNO9A476mbeLOoS06DX6V5tZjaVPdNXf9UG3+grVpFlEOioGBhYLQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1690649884; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tTrmRgEieqHPz89M4tU6644k9IRkxkVG97dmYu06g1U=; b=x/G0clwwQNXoFK4SB1zrRyyQihBxece1U+Al9f9lbmHAq4Abe8LEqb41keUtH5ssZh9n54 ozXqCAAj116+p5krq3bUkaPc9e4YAWe143O0XNk3gExCC8lEeWdpTKhIGHdB7uzR7qqAKn U+qTBB8HEfK66qeVNGX+gShv+CI4UO0L6P77R+BDgggMTF6K2YX9NI1CSxynWoSQb/tJ5+ 4Zgf3rreZZuzMOM4YbMewRwilBShjdPIZexxZHvqvkenxriEEN70Raj8qy8IWT9qUcD86e RIfhmvLTaHXYqYwQQoIKUZPQbbWX7XgodJGUIxHLRSEwoyBWxRCOhMmedz0qgw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1690649884; a=rsa-sha256; cv=none; b=WLpax33M1MPduIk45nXMwJdto6rQhHHnaZyUvdxyyl7KiC58H4RhKatiSj3dn+olVsytam o9xXRNNVqwDxEQ35NYjPS74omyf5y3Q9ENodnjvd/zDNUU3IXnWLP+JRux1NFp6z2iuiYA ERE3IMu7RH5CIsHQMqcMuKIq5VOB8DU7gDy9h4RcoJN3Z5zGXRx8DFY6ZEA2c0IvdzBTzg VmugJMnBLIO4N5wGK3oLy/jRZent4SD7PsRiTZ/CDvJyYXAjoDITVMz+W44HA9NZqNn5Qu 2cOoHVAOWNRNEbg5NFz4hCW1CDBpPgB0fUn6oa0U3KBcTqApGn/quLgBZPbwUg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4RCrKm1rZJzgbW; Sat, 29 Jul 2023 16:58:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 36TGw4pd025864; Sat, 29 Jul 2023 16:58:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 36TGw4BH025863; Sat, 29 Jul 2023 16:58:04 GMT (envelope-from git) Date: Sat, 29 Jul 2023 16:58:04 GMT Message-Id: <202307291658.36TGw4BH025863@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: =?utf-8?Q?Fernando=20Apestegu=C3=ADa?= Subject: git: 2b81a5f3f73c - main - net/dante: unbreak List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-all@freebsd.org X-BeenThere: dev-commits-ports-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: fernape X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2b81a5f3f73c8bcd910c246ff25bb1fc0135e7a9 Auto-Submitted: auto-generated The branch main has been updated by fernape: URL: https://cgit.FreeBSD.org/ports/commit/?id=2b81a5f3f73c8bcd910c246ff25bb1fc0135e7a9 commit 2b81a5f3f73c8bcd910c246ff25bb1fc0135e7a9 Author: Hiroo Ono AuthorDate: 2023-07-28 06:40:02 +0000 Commit: Fernando ApesteguĂ­a CommitDate: 2023-07-29 16:57:34 +0000 net/dante: unbreak Disable ran away test that works in local machines but for some reason fails in the official builders. PR: 272755 Reported by: hiroo.ono+freebsd@gmail.com --- net/dante/Makefile | 4 +- net/dante/files/patch-acinclude.m4 | 276 +++++++++++++++++++++++++++++++++++++ 2 files changed, 277 insertions(+), 3 deletions(-) diff --git a/net/dante/Makefile b/net/dante/Makefile index e61a676baf11..0031bfd84ba0 100644 --- a/net/dante/Makefile +++ b/net/dante/Makefile @@ -11,14 +11,12 @@ WWW= https://www.inet.no/dante/ LICENSE= BSD4CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -BROKEN= fails to configure - LIB_DEPENDS= libminiupnpc.so:net/miniupnpc \ libsasl2.so:security/cyrus-sasl2 CONFLICTS= socks5 -USES= libtool localbase +USES= autoreconf libtool localbase GNU_CONFIGURE= yes CONFIGURE_ARGS= --with-socks-conf=${PREFIX}/etc/socks.conf \ --with-sockd-conf=${PREFIX}/etc/sockd.conf diff --git a/net/dante/files/patch-acinclude.m4 b/net/dante/files/patch-acinclude.m4 new file mode 100644 index 000000000000..771468ccefc0 --- /dev/null +++ b/net/dante/files/patch-acinclude.m4 @@ -0,0 +1,276 @@ +--- 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]) + ;;