diff --git a/message_encrypt.go b/message_encrypt.go index 6500206..d5081e8 100644 --- a/message_encrypt.go +++ b/message_encrypt.go @@ -262,6 +262,14 @@ func encryptFull(kr *crypto.KeyRing, literal []byte) ([]byte, error) { newHeader.Set("To", value) } + if value, ok := header.GetChecked("Cc"); ok { + newHeader.Set("Cc", value) + } + + if value, ok := header.GetChecked("Bcc"); ok { + newHeader.Set("Bcc", value) + } + if value, ok := header.GetChecked("Subject"); ok { newHeader.Set("Subject", value) } diff --git a/message_encrypt_test.go b/message_encrypt_test.go index 196353e..0c8bed1 100644 --- a/message_encrypt_test.go +++ b/message_encrypt_test.go @@ -16,6 +16,8 @@ import ( func TestEncryptMessage_Simple(t *testing.T) { const message = `From: Nathaniel Borenstein To: Ned Freed +Cc: John Doe +Bcc: Jane Doe Subject: Sample message (import 2) MIME-Version: 1.0 Content-type: text/plain @@ -39,6 +41,8 @@ This is explicitly typed plain ASCII text. assert.Equal(t, header.Get("From"), "Nathaniel Borenstein ") assert.Equal(t, header.Get("To"), "Ned Freed ") + assert.Equal(t, header.Get("Cc"), "John Doe ") + assert.Equal(t, header.Get("Bcc"), "Jane Doe ") assert.Equal(t, header.Get("Subject"), "Sample message (import 2)") assert.Equal(t, header.Get("MIME-Version"), "1.0") @@ -59,6 +63,8 @@ This is explicitly typed plain ASCII text. func TestEncryptMessage_MultipleTextParts(t *testing.T) { const message = `From: Nathaniel Borenstein To: Ned Freed +Cc: John Doe +Bcc: Jane Doe Subject: Sample message (import 2) MIME-Version: 1.0 Content-type: multipart/mixed; boundary="simple boundary" @@ -98,6 +104,8 @@ This is the epilogue. It is also to be ignored. assert.Equal(t, header.Get("From"), "Nathaniel Borenstein ") assert.Equal(t, header.Get("To"), "Ned Freed ") + assert.Equal(t, header.Get("Cc"), "John Doe ") + assert.Equal(t, header.Get("Bcc"), "Jane Doe ") assert.Equal(t, header.Get("Subject"), "Sample message (import 2)") assert.Equal(t, header.Get("MIME-Version"), "1.0") assert.Equal(t, header.Get("Received"), "from mail.protonmail.ch by mail.protonmail.ch; Tue, 25 Nov 2016")