File tree Expand file tree Collapse file tree 1 file changed +15
-7
lines changed
Expand file tree Collapse file tree 1 file changed +15
-7
lines changed Original file line number Diff line number Diff line change @@ -25,15 +25,19 @@ export const checkSMTP = async (
2525
2626 socket . on ( 'fail' , msg => {
2727 r ( createOutput ( 'smtp' , msg ) )
28- socket . write ( `quit\r\n` )
29- socket . end ( )
30- socket . destroy ( )
28+ if ( socket . writable && ! socket . destroyed ) {
29+ socket . write ( `quit\r\n` )
30+ socket . end ( )
31+ socket . destroy ( )
32+ }
3133 } )
3234
3335 socket . on ( 'success' , ( ) => {
34- socket . write ( `quit\r\n` )
35- socket . end ( )
36- socket . destroy ( )
36+ if ( socket . writable && ! socket . destroyed ) {
37+ socket . write ( `quit\r\n` )
38+ socket . end ( )
39+ socket . destroy ( )
40+ }
3741 r ( createOutput ( ) )
3842 } )
3943
@@ -45,7 +49,11 @@ export const checkSMTP = async (
4549 let i = 0
4650 socket . on ( 'next' , ( ) => {
4751 if ( i < 3 ) {
48- socket . write ( commands [ i ++ ] )
52+ if ( socket . writable ) {
53+ socket . write ( commands [ i ++ ] )
54+ } else {
55+ socket . emit ( 'fail' , 'SMTP communication unexpectedly closed.' )
56+ }
4957 } else {
5058 socket . emit ( 'success' )
5159 }
You can’t perform that action at this time.
0 commit comments