From 070eb39132e0bc155f5be5fc593dc5560f66cd96 Mon Sep 17 00:00:00 2001 From: Winni Neessen Date: Wed, 25 May 2022 10:46:50 +0200 Subject: [PATCH] Address #5 For the WriteToSendmail* methods the STDIN pipe should be closed so that a forced EOF is sent to the sending program --- msg.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/msg.go b/msg.go index fe18a6e..e43a08b 100644 --- a/msg.go +++ b/msg.go @@ -547,7 +547,10 @@ func (m *Msg) WriteToSendmailWithContext(ctx context.Context, sp string, a ...st return fmt.Errorf("sendmail command failed: %s", serr) } - // Wait for completion or cancellation of the sendmail executable + // Close STDIN and wait for completion or cancellation of the sendmail executable + if err := si.Close(); err != nil { + return fmt.Errorf("failed to close STDIN pipe: %w", err) + } if err := ec.Wait(); err != nil { return fmt.Errorf("sendmail command execution failed: %w", err) }