git: 45bed8722929 - main - mail/mlmmj: fix ipv6 support
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 24 Jan 2022 08:34:23 UTC
The branch main has been updated by bapt:
URL: https://cgit.FreeBSD.org/ports/commit/?id=45bed872292949334ac6e47c409002e1f93b1043
commit 45bed872292949334ac6e47c409002e1f93b1043
Author: Baptiste Daroussin <bapt@FreeBSD.org>
AuthorDate: 2022-01-24 08:33:32 +0000
Commit: Baptiste Daroussin <bapt@FreeBSD.org>
CommitDate: 2022-01-24 08:34:13 +0000
mail/mlmmj: fix ipv6 support
---
mail/mlmmj/Makefile | 2 +-
mail/mlmmj/files/patch-src_init__sockfd.c | 11 +++++------
2 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/mail/mlmmj/Makefile b/mail/mlmmj/Makefile
index b8b31051d641..c1655ca42f86 100644
--- a/mail/mlmmj/Makefile
+++ b/mail/mlmmj/Makefile
@@ -2,7 +2,7 @@
PORTNAME= mlmmj
PORTVERSION= 1.3.0
-PORTREVISION= 9
+PORTREVISION= 10
CATEGORIES= mail
MASTER_SITES= http://mlmmj.org/releases/
diff --git a/mail/mlmmj/files/patch-src_init__sockfd.c b/mail/mlmmj/files/patch-src_init__sockfd.c
index 5eb98647a35d..009c421a3f84 100644
--- a/mail/mlmmj/files/patch-src_init__sockfd.c
+++ b/mail/mlmmj/files/patch-src_init__sockfd.c
@@ -8,7 +8,7 @@
#include <sys/types.h>
#include <sys/socket.h>
#include <unistd.h>
-@@ -29,35 +30,53 @@
+@@ -29,35 +30,50 @@
#include <arpa/inet.h>
#include <string.h>
#include <inttypes.h>
@@ -32,6 +32,8 @@
}
- *sockfd = socket(PF_INET, SOCK_STREAM, 0);
+- if(*sockfd == -1) {
+- log_error(LOG_ARGS, "Could not get socket");
+ memset(&hints, 0, sizeof(hints));
+ hints.ai_socktype = SOCK_STREAM;
+ hints.ai_family = PF_UNSPEC;
@@ -39,10 +41,6 @@
+ if (getaddrinfo(relayhost, srv, &hints, &ai) != 0) {
+ log_error(LOG_ARGS, "Unable to lookup for relayhost %s:%s",
+ relayhost, srv);
-+ return;
-+ }
- if(*sockfd == -1) {
- log_error(LOG_ARGS, "Could not get socket");
return;
}
- addr.sin_family = PF_INET;
@@ -50,11 +48,12 @@
- addr.sin_port = htons(port);
- len = sizeof(addr);
- if(connect(*sockfd, (struct sockaddr *)&addr, len) == -1) {
++
+ for (curai = ai; curai != NULL; curai = curai->ai_next) {
+ if ((sd = socket(ai->ai_family, ai->ai_socktype, ai->ai_protocol)) < 0) {
+ continue;
+ }
-+ if (connect(sd, ai->ai_addr, ai->ai_addrlen) == 0) {
++ if (connect(sd, ai->ai_addr, ai->ai_addrlen) != 0) {
+ close(sd);
+ sd = -1;
+ continue;