diff --git a/helpers/on-auth.js b/helpers/on-auth.js index 2ce485e164..18175b0e64 100644 --- a/helpers/on-auth.js +++ b/helpers/on-auth.js @@ -66,8 +66,14 @@ async function onAuth(auth, session, fn) { if (this.server instanceof IMAPServer) { const socket = (session.socket && session.socket._parent) || session.socket; - if (!socket || socket?.destroyed || socket?.readyState !== 'open') - throw new SocketError(); + if (!socket || socket?.destroyed || socket?.readyState !== 'open') { + const err = new SocketError(); + err.isCodeBug = true; + err.socket = socket; + err.session = session; + this.logger.fatal(err); + // throw err; // TODO: investigate why socket error occurs here + } } // override session.getQueryResponse (safeguard) diff --git a/helpers/refresh-session.js b/helpers/refresh-session.js index 023a25666f..c9b01f11ac 100644 --- a/helpers/refresh-session.js +++ b/helpers/refresh-session.js @@ -57,8 +57,14 @@ async function refreshSession(session, command) { this?.constructor?.name !== 'CalDAV' ) { const socket = (session.socket && session.socket._parent) || session.socket; - if (!socket || socket?.destroyed || socket?.readyState !== 'open') - throw new SocketError(); + if (!socket || socket?.destroyed || socket?.readyState !== 'open') { + const err = new SocketError(); + err.isCodeBug = true; + err.socket = socket; + err.session = session; + this.logger.fatal(err); + // throw err; // TODO: investigate why socket error occurs here + } } if (!isSANB(session?.user?.domain_id) || !isSANB(session?.user?.domain_name))