0 votes
by (370 points)

We are using IMAP functionality for quite some customers. Several of them are suddenly reporting issues, probably as of last week. It happens in several versions of our software, yet none of them were recently updated. The only thing they have in common, is AFAIK that they all use Office 365.

When moving/creating IMAP message at some point the error "Connection was closed by the remote connection end." occurs. There's no clear indication of when/why this happens.

Any ideas?

I've enabled logging, one portion of it shown below:

2019-10-01 17:31:36.268 INFO Imap(1)[1] Command: ...1445 bytes...
2019-10-01 17:31:36.268 DEBUG Imap(1)[1] Info: State changed from 'Reading' to 'Sending'.
2019-10-01 17:31:36.268 VERBOSE Imap(1)[1] TLS: Sent TLS packet:
0000 |17-03-03-00-02-0D-0A | .......
2019-10-01 17:31:36.268 VERBOSE Imap(1)[1] Info: Sent data:
0000 |0D-0A | ..
2019-10-01 17:31:36.268 INFO Imap(1)[1] Command:
2019-10-01 17:31:36.268 DEBUG Imap(1)[1] Info: State changed from 'Sending' to 'Reading'.
2019-10-01 17:31:36.274 DEBUG Imap(1)[1] TLS: TLS socket error, 0 bytes of data were received.
2019-10-01 17:31:36.286 DEBUG Imap(1)[1] TLS: TLS socket was closed: System.Net.Sockets.SocketException (0x80004005): De externe host heeft een verbinding verbroken
bij System.Net.Sockets.Socket.Receive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)
bij Rebex.Net.ProxySocket.Receive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)
bij Rebex.Net.JXG.WP(Int32 C)
bij Rebex.Net.JXG.JP()
bij Rebex.Net.JXG.YP()
2019-10-01 17:31:36.289 INFO Imap(1)[1] TLS: Alert Alert:Alert was sent.
2019-10-01 17:31:36.289 INFO Imap(1)[1] TLS: State StateChange:Closed
2019-10-01 17:31:36.289 VERBOSE Imap(1)[1] TLS: Sent TLS packet:
0000 |15-03-03-00-02-02-50 | ......P
2019-10-01 17:31:36.292 ERROR Imap(1)[1] Info: Rebex.Net.TlsException: Connection was closed by the remote connection end. ---> System.Net.Sockets.SocketException: De externe host heeft een verbinding verbroken
bij System.Net.Sockets.Socket.Receive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)
bij Rebex.Net.ProxySocket.Receive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)
bij Rebex.Net.JXG.WP(Int32 C)
bij Rebex.Net.JXG.JP()
bij Rebex.Net.JXG.YP()
--- Einde van intern uitzonderingsstackpad ---
bij Rebex.Net.JXG.YP()
bij Rebex.Net.TlsSocket.Poll(Int32 microSeconds, SocketSelectMode mode)
bij Rebex.Net.LEG.EV(Int32 C)
bij Rebex.Net.LEG.KV(Byte[] C, Int32 V, Int32 Z)
bij Rebex.Net.LEG.KV()
bij Rebex.Net.LEG.QV(Int32& C)
bij Rebex.Net.Imap.DVV()
bij Rebex.Net.Imap.OVV(String C, ArrayList V)
bij Rebex.Net.Imap.DX(String C, OEG V, String Z, Boolean N)
bij Rebex.Net.Imap.NJ(String C, Object[] V)
bij Rebex.Net.Imap.TW(String C, Stream V, ImapMessageFlags Z, MailDateTime N, String[] Q)
bij Rebex.Net.Imap.TW(String C, MimeMessage V, ImapMessageFlags Z, String[] N)
bij Rebex.Net.Imap.IY(String C, MailMessage V, ImapMessageFlags Z, String[] N)
2019-10-01 17:31:36.303 ERROR Imap(1)[1] Info: System.InvalidOperationException: Cannot send command to the server because the response for previous one was not received.
bij Rebex.Net.Imap.XVV(String C, String V, Object[] Z)
bij Rebex.Net.Imap.NJ(String C, Object[] V)
bij Rebex.Net.Imap.FY(String C, ImapFolderListMode V, Boolean Z)
2019-10-01 17:31:36.307 DEBUG Imap(1)[1] TLS: Closing TLS socket.
2019-10-01 17:31:36.308 DEBUG Imap(1)[1] Info: State changed from 'Reading' to 'Disconnected'.

Applies to: Rebex Secure Mail

1 Answer

0 votes
by (370 points)
selected by
 
Best answer

After testing with the new 2019R3.2 the problem appeared to have disappeared.

Reinstalling the older version of our software confirmed all was working again.

Apparently something had changed at the office 365 side that has caused this issue. Unclear at this time what has caused this temporary failure.

...