isync: Fix "Buffer too small" error
This commit is contained in:
parent
a2a777538d
commit
24c0592e58
|
@ -0,0 +1,34 @@
|
|||
From e8a3a20aed135272a9ec0103f4055411c075f043 Mon Sep 17 00:00:00 2001
|
||||
From: Michal Sojka <michal.sojka@cvut.cz>
|
||||
Date: Mon, 7 Nov 2022 00:07:22 +0100
|
||||
Subject: [PATCH] Increase imap_vprintf buffer size
|
||||
|
||||
This fixes "Fatal: buffer too small. Please report a bug." error. See
|
||||
https://sourceforge.net/p/isync/mailman/isync-devel/thread/87fsevvebj.fsf%40steelpick.2x.cz/#msg37731590
|
||||
for related discussion.
|
||||
|
||||
When using mbsync with XOAUTH2 authentication (needed for Office365
|
||||
mailboxes), the access token used for the LOGIN command may not fit
|
||||
into the currently used buffer of 1000 characters. In my case, I need
|
||||
the buffer to be at least 2000 characters long. To make this more
|
||||
future-proof, I increase the buffer size to 4000 characters.
|
||||
---
|
||||
src/drv_imap.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/drv_imap.c b/src/drv_imap.c
|
||||
index c5a7aed..7847192 100644
|
||||
--- a/src/drv_imap.c
|
||||
+++ b/src/drv_imap.c
|
||||
@@ -528,7 +528,7 @@ imap_vprintf( const char *fmt, va_list ap )
|
||||
uint totlen = 0;
|
||||
const char *segs[MAX_SEGS];
|
||||
uint segls[MAX_SEGS];
|
||||
- char buf[1000];
|
||||
+ char buf[4000];
|
||||
|
||||
d = buf;
|
||||
ed = d + sizeof(buf);
|
||||
--
|
||||
2.38.1
|
||||
|
|
@ -12,6 +12,11 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "1zq0wwvmqsl9y71546dr0aygzn9gjjfiw19hlcq87s929y4p6ckw";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Fixes "Fatal: buffer too small" error
|
||||
./0001-Increase-imap_vprintf-buffer-size.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pkg-config perl ];
|
||||
buildInputs = [ openssl db cyrus_sasl zlib ]
|
||||
++ lib.optionals stdenv.isDarwin [ Security ];
|
||||
|
|
Loading…
Reference in a new issue