isync: update to 1.3.1

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

isync: update to 1.3.1

Klemens Nanni-2
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?

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 );
- }
-

Reply | Threaded
Open this post in threaded view
|

Re: isync: update to 1.3.1

Remi Locherer
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 );
> - }
> -
>