-
-
Notifications
You must be signed in to change notification settings - Fork 308
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
During IMAP reconnection neomutt sends LIST but not SELECT #1248
Labels
topic:imap
IMAP
Comments
Thanks, this is very valuable info! |
EdwardBetts
added a commit
to EdwardBetts/neomutt
that referenced
this issue
Jun 6, 2018
This is an attempt to do something about bug neomutt#1248 New imap_select_mailbox function split out of imap_open_mailbox to be called during reconnect. There is a bug in this implementation, it crashes during the reconnection stage with this error: terminated by signal SIGSEGV (Address boundary error) Somebody with a better grasp of C might figure out why it is failing.
EdwardBetts
added a commit
to EdwardBetts/neomutt
that referenced
this issue
Nov 19, 2018
EdwardBetts
added a commit
to EdwardBetts/neomutt
that referenced
this issue
Nov 19, 2018
fixed by e1271d5 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
If the connection to the IMAP server is lost neomutt will reconnect, but the reconnection is incomplete. When first opening a connection mutt sends the LIST and SELECT commands, during the reconnection it only sends the LIST command.
After a reconnect the neomutt status bar says
---NeoMutt: (no mailbox) [Msgs:0]
. This happens every time.Expected behaviour is for neomutt to reconnect and display the current mailbox.
This is the muttrc config file I used for testing.
To reproduce run test_imap.py (included below), then use neomutt to connect with these parameters:
Neomutt will connect to the IMAP server and show one message, after 3 seconds the test server will drop the connection, neomutt will attempt to reconnect but the reconnection is incomplete.
The cmd_handle_fatal function is responsible for handling the disconnection, it displays the "Mailbox closed" error, then calls imap_conn_find to reconnect.
It isn't clear who is responsible for sending the SELECT command to the IMAP server, maybe it should be in imap_conn_find or cmd_handle_fatal. The following is the relevant part of imap_conn_find.
imap_test.py
NeoMutt log
NeoMutt Version
NeoMutt 20180512
Copyright (C) 1996-2016 Michael R. Elkins and others.
NeoMutt comes with ABSOLUTELY NO WARRANTY; for details type 'neomutt -vv'.
NeoMutt is free software, and you are welcome to redistribute it
under certain conditions; type 'neomutt -vv' for details.
System: Linux 4.15.0-2-amd64 (x86_64)
ncurses: ncurses 6.1.20180210 (compiled with 6.1.20180210)
libidn: 1.33 (compiled with 1.33)
hcache backends: tokyocabinet
Compiler:
Using built-in specs.
COLLECT_GCC=cc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Debian 7.3.0-19' --with-bugurl=file:///usr/share/doc/gcc-7/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-7 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 7.3.0 (Debian 7.3.0-19)
Configure options: --build=x86_64-linux-gnu --prefix=/usr {--includedir=${prefix}/include} {--mandir=${prefix}/share/man} {--infodir=${prefix}/share/info} --sysconfdir=/etc --localstatedir=/var --disable-silent-rules {--libdir=${prefix}/lib/x86_64-linux-gnu} {--libexecdir=${prefix}/lib/x86_64-linux-gnu} --disable-maintainer-mode --disable-dependency-tracking --mandir=/usr/share/man --libexecdir=/usr/lib --with-mailpath=/var/mail --gpgme --lua --notmuch --with-ui --gnutls --gss --idn --mixmaster --sasl --tokyocabinet
Compilation CFLAGS: -g -O2 -fdebug-prefix-map=/build/neomutt-lNxelW/neomutt-20180512+dfsg.1=. -fstack-protector-strong -Wformat -Werror=format-security -std=c99 -D_ALL_SOURCE=1 -D_GNU_SOURCE=1 -D__EXTENSIONS__ -I/usr/include -I/usr/include/lua5.3 -DNCURSES_WIDECHAR -isystem /usr/include/mit-krb5
Default options:
+attach_headers_color +compose_to_sender +compress +cond_date +debug
+encrypt_to_self +forgotten_attachments +forwref +ifdef +imap +index_color
+initials +limit_current_thread +multiple_fcc +nested_if +new_mail +nntp +pop
+progress +quasi_delete +regcomp +reply_with_xorig +sensible_browser +sidebar
+skip_quoted +smtp +status_color +timeout +tls_sni +trash
Compile options:
+bkgdset +color +curs_set +fcntl -flock -fmemopen +futimens +getaddrinfo
+gnutls +gpgme +gss +hcache -homespool +idn -locales_hack +lua +meta
+mixmaster +nls +notmuch -openssl +pgp +sasl +smime +start_color
+sun_attachment +typeahead
MAILPATH="/var/mail"
MIXMASTER="mixmaster"
PKGDATADIR="/usr/share/neomutt"
SENDMAIL="/usr/sbin/sendmail"
SYSCONFDIR="/etc"
The text was updated successfully, but these errors were encountered: