On Wed, Jun 12, 2019 at 09:20:45PM +0200, Klemens Nanni wrote:
> This is a long overdue maintenance release:
> - SSL now uses SNI, which for example GMail requires
> - fixed fallbacks for missing UIDPLUS extension (with e.g. DavMail)
> - fixed UIDVALIDITY recovery with really long Message-id headers
> - fixed GSSAPI authentication with Kerberos
> - fixed support for IMAP servers which do not sort search results (e.g.,
> poczta.o2.pl)
> - fixed CopyArrivalDate on platforms without glibc
> - fixed useless SASL warnings with certain plugins
> - the perl 5.14 requirement is now made explicit
> - improved OpenBSD support
> - fixed a bunch of compiler warnings
>
> All patches except pledge support have been merged upstream.
>
> Keeps working fine in daily usage on amd64.
> OK?
works fine on amd64.
OK remi@
>
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/mail/isync/Makefile,v
> retrieving revision 1.39
> diff -u -p -r1.39 Makefile
> --- Makefile 21 Feb 2019 19:22:27 -0000 1.39
> +++ Makefile 12 Jun 2019 19:09:33 -0000
> @@ -2,8 +2,7 @@
>
> COMMENT= synchronize IMAP4 and maildir mailboxes
>
> -DISTNAME= isync-1.3.0
> -REVISION= 5
> +DISTNAME= isync-1.3.1
>
> CATEGORIES= mail
> MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=isync/}
> Index: distinfo
> ===================================================================
> RCS file: /cvs/ports/mail/isync/distinfo,v
> retrieving revision 1.13
> diff -u -p -r1.13 distinfo
> --- distinfo 17 Oct 2017 17:24:14 -0000 1.13
> +++ distinfo 12 Jun 2019 19:09:38 -0000
> @@ -1,2 +1,2 @@
> -SHA256 (isync-1.3.0.tar.gz) = jV9YOXbjEZcFvbon+k/JYugH/1mW8k81SVcXj/ppfJw=
> -SIZE (isync-1.3.0.tar.gz) = 309459
> +SHA256 (isync-1.3.1.tar.gz) = aMtGQ9WBUgl/Acmzq+rX19TJVjGD1y88KjHSK8Fo8Oo=
> +SIZE (isync-1.3.1.tar.gz) = 311868
> Index: patches/patch-src_drv_imap_c
> ===================================================================
> RCS file: /cvs/ports/mail/isync/patches/patch-src_drv_imap_c,v
> retrieving revision 1.2
> diff -u -p -r1.2 patch-src_drv_imap_c
> --- patches/patch-src_drv_imap_c 21 Feb 2019 19:22:27 -0000 1.2
> +++ patches/patch-src_drv_imap_c 12 Jun 2019 19:16:07 -0000
> @@ -1,7 +1,6 @@
> $OpenBSD: patch-src_drv_imap_c,v 1.2 2019/02/21 19:22:27 kn Exp $
>
> -f85e2ae770169227e95168a11aff17372efaa192
> -"Fix CopyArrivalDate on platforms without glibc"
> +Use pledge.
>
> Index: src/drv_imap.c
> --- src/drv_imap.c.orig
> @@ -15,16 +14,7 @@ Index: src/drv_imap.c
> #ifdef HAVE_LIBSSL
> enum { SSL_None, SSL_STARTTLS, SSL_IMAPS };
> #endif
> -@@ -948,7 +950,7 @@ parse_date( const char *str )
> - struct tm datetime;
> -
> - memset( &datetime, 0, sizeof(datetime) );
> -- if (!(end = strptime( str, "%d-%b-%Y %H:%M:%S ", &datetime )))
> -+ if (!(end = strptime( str, "%e-%b-%Y %H:%M:%S ", &datetime )))
> - return -1;
> - if ((date = timegm( &datetime )) == -1)
> - return -1;
> -@@ -3267,6 +3269,8 @@ imap_parse_store( conffile_t *cfg, store_conf_t **stor
> +@@ -3317,6 +3319,8 @@ imap_parse_store( conffile_t *cfg, store_conf_t **stor
> }
> acc_opt = 1;
> }
> Index: patches/patch-src_drv_maildir_c
> ===================================================================
> RCS file: patches/patch-src_drv_maildir_c
> diff -N patches/patch-src_drv_maildir_c
> --- patches/patch-src_drv_maildir_c 12 May 2018 14:33:50 -0000 1.3
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,27 +0,0 @@
> -$OpenBSD: patch-src_drv_maildir_c,v 1.3 2018/05/12 14:33:50 jca Exp $
> -
> -Print time_t appropriately.
> -
> -Index: src/drv_maildir.c
> ---- src/drv_maildir.c.orig
> -+++ src/drv_maildir.c
> -@@ -1569,7 +1569,7 @@ maildir_store_msg( store_t *gctx, msg_data_t *data, in
> - uint uid;
> - char buf[_POSIX_PATH_MAX], nbuf[_POSIX_PATH_MAX], fbuf[NUM_FLAGS + 3],
> base[128];
> -
> -- bl = nfsnprintf( base, sizeof(base), "%ld.%d_%d.%s", (long)time( 0 ),
> Pid, ++MaildirCount, Hostname );
> -+ bl = nfsnprintf( base, sizeof(base), "%lld.%d_%d.%s", (long long)time(
> 0 ), Pid, ++MaildirCount, Hostname );
> - if (!to_trash) {
> - #ifdef USE_DB
> - if (ctx->usedb) {
> -@@ -1750,8 +1750,8 @@ maildir_trash_msg( store_t *gctx, message_t *gmsg,
> - for (;;) {
> - nfsnprintf( buf, sizeof(buf), "%s/%s/%s", ctx->path,
> subdirs[gmsg->status & M_RECENT], msg->base );
> - s = strstr( msg->base, ((maildir_store_conf_t
> *)gctx->conf)->info_prefix );
> -- nfsnprintf( nbuf, sizeof(nbuf), "%s/%s/%ld.%d_%d.%s%s",
> ctx->trash,
> -- subdirs[gmsg->status & M_RECENT], (long)time( 0 ),
> Pid, ++MaildirCount, Hostname, s ? s : "" );
> -+ nfsnprintf( nbuf, sizeof(nbuf), "%s/%s/%lld.%d_%d.%s%s",
> ctx->trash,
> -+ subdirs[gmsg->status & M_RECENT], (long long)time(
> 0 ), Pid, ++MaildirCount, Hostname, s ? s : "" );
> - if (!rename( buf, nbuf ))
> - break;
> - if (!stat( buf, &st )) {
> Index: patches/patch-src_drv_proxy_c
> ===================================================================
> RCS file: patches/patch-src_drv_proxy_c
> diff -N patches/patch-src_drv_proxy_c
> --- patches/patch-src_drv_proxy_c 12 May 2018 14:33:50 -0000 1.1
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,29 +0,0 @@
> -$OpenBSD: patch-src_drv_proxy_c,v 1.1 2018/05/12 14:33:50 jca Exp $
> -
> -Print time_t appropriately.
> -
> -Index: src/drv_proxy.c
> ---- src/drv_proxy.c.orig
> -+++ src/drv_proxy.c
> -@@ -239,8 +239,8 @@ proxy_@name@( store_t *gctx@decl_args@, void (*cb)( @d
> - static char fbuf[as(Flags) + 1];
> - proxy_make_flags( cmd->data->flags, fbuf );
> - //# END
> --//# DEFINE fetch_msg_print_fmt_cb_args , flags=%s, date=%ld, size=%d
> --//# DEFINE fetch_msg_print_pass_cb_args , fbuf, cmd->data->date,
> cmd->data->len
> -+//# DEFINE fetch_msg_print_fmt_cb_args , flags=%s, date=%lld, size=%d
> -+//# DEFINE fetch_msg_print_pass_cb_args , fbuf, (long long)cmd->data->date,
> cmd->data->len
> - //# DEFINE fetch_msg_print_cb_args
> - if (sts == DRV_OK && (DFlags & DEBUG_DRV_ALL)) {
> - printf( "%s=========\n", cmd->gen.ctx->label );
> -@@ -254,8 +254,8 @@ proxy_@name@( store_t *gctx@decl_args@, void (*cb)( @d
> - static char fbuf[as(Flags) + 1];
> - proxy_make_flags( data->flags, fbuf );
> - //# END
> --//# DEFINE store_msg_print_fmt_args , flags=%s, date=%ld, size=%d,
> to_trash=%s
> --//# DEFINE store_msg_print_pass_args , fbuf, data->date, data->len,
> to_trash ? "yes" : "no"
> -+//# DEFINE store_msg_print_fmt_args , flags=%s, date=%lld, size=%d,
> to_trash=%s
> -+//# DEFINE store_msg_print_pass_args , fbuf, (long long)data->date,
> data->len, to_trash ? "yes" : "no"
> - //# DEFINE store_msg_print_args
> - if (DFlags & DEBUG_DRV_ALL) {
> - printf( "%s>>>>>>>>>\n", ctx->label );
> Index: patches/patch-src_main_c
> ===================================================================
> RCS file: /cvs/ports/mail/isync/patches/patch-src_main_c,v
> retrieving revision 1.6
> diff -u -p -r1.6 patch-src_main_c
> --- patches/patch-src_main_c 8 Nov 2018 11:05:32 -0000 1.6
> +++ patches/patch-src_main_c 12 Jun 2019 19:16:27 -0000
> @@ -1,5 +1,7 @@
> $OpenBSD: patch-src_main_c,v 1.6 2018/11/08 11:05:32 sthen Exp $
>
> +Use pledge.
> +
> Index: src/main.c
> --- src/main.c.orig
> +++ src/main.c
> Index: patches/patch-src_socket_c
> ===================================================================
> RCS file: patches/patch-src_socket_c
> diff -N patches/patch-src_socket_c
> --- patches/patch-src_socket_c 12 May 2018 14:37:36 -0000 1.4
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,37 +0,0 @@
> -$OpenBSD: patch-src_socket_c,v 1.4 2018/05/12 14:37:36 jca Exp $
> -
> -Use functions provided by recent LibreSSL versions.
> -
> -Fix format string.
> -
> -Index: src/socket.c
> ---- src/socket.c.orig
> -+++ src/socket.c
> -@@ -40,7 +40,8 @@
> - # include <openssl/ssl.h>
> - # include <openssl/err.h>
> - # include <openssl/x509v3.h>
> --# if OPENSSL_VERSION_NUMBER < 0x10100000L
> -+# if OPENSSL_VERSION_NUMBER < 0x10100000L \
> -+ || (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER >=
> 0x2070100fL)
> - # define X509_OBJECT_get0_X509(o) ((o)->data.x509)
> - # define X509_STORE_get0_objects(o) ((o)->objs)
> - # endif
> -@@ -470,7 +471,7 @@ socket_connect_one( conn_t *sock )
> - struct sockaddr_in6 *in6 = ((struct sockaddr_in6 *)ai->ai_addr);
> - char sockname[64];
> - in6->sin6_port = htons( sock->conf->port );
> -- nfasprintf( &sock->name, "%s ([%s]:%hu)",
> -+ nfasprintf( &sock->name, "%s ([%s]:%d)",
> - sock->conf->host, inet_ntop( AF_INET6,
> &in6->sin6_addr, sockname, sizeof(sockname) ), sock->conf->port );
> - } else
> - #endif
> -@@ -482,7 +483,7 @@ socket_connect_one( conn_t *sock )
> - in->sin_addr.s_addr = *((int *)*sock->curr_addr);
> - #endif
> - in->sin_port = htons( sock->conf->port );
> -- nfasprintf( &sock->name, "%s (%s:%hu)",
> -+ nfasprintf( &sock->name, "%s (%s:%d)",
> - sock->conf->host, inet_ntoa( in->sin_addr ),
> sock->conf->port );
> - }
> -
>