diff options
Diffstat (limited to 'framework/src')
208 files changed, 10117 insertions, 1 deletions
diff --git a/framework/src/domain/mimetreeparser/otp/CMakeLists.txt b/framework/src/domain/mimetreeparser/otp/CMakeLists.txt index baa6decd..f480fa21 100644 --- a/framework/src/domain/mimetreeparser/otp/CMakeLists.txt +++ b/framework/src/domain/mimetreeparser/otp/CMakeLists.txt | |||
@@ -54,7 +54,6 @@ set(libmimetreeparser_SRCS | |||
54 | attachmentstrategy.cpp | 54 | attachmentstrategy.cpp |
55 | #HTML Writer | 55 | #HTML Writer |
56 | queuehtmlwriter.cpp | 56 | queuehtmlwriter.cpp |
57 | # htmlwriter/filehtmlwriter.cpp | ||
58 | attachmenttemporaryfilesdirs.cpp | 57 | attachmenttemporaryfilesdirs.cpp |
59 | ) | 58 | ) |
60 | 59 | ||
@@ -69,3 +68,5 @@ target_link_libraries(kube_otp | |||
69 | Qt5::Gui | 68 | Qt5::Gui |
70 | ) | 69 | ) |
71 | install(TARGETS kube_otp DESTINATION ${LIB_INSTALL_DIR}) | 70 | install(TARGETS kube_otp DESTINATION ${LIB_INSTALL_DIR}) |
71 | |||
72 | add_subdirectory(autotests) | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/CMakeLists.txt b/framework/src/domain/mimetreeparser/otp/autotests/CMakeLists.txt new file mode 100644 index 00000000..3f344c82 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/CMakeLists.txt | |||
@@ -0,0 +1,47 @@ | |||
1 | include_directories(../) | ||
2 | include_directories(${CMAKE_CURRENT_BINARY_DIR}) | ||
3 | |||
4 | set(AUTOMOC ON) | ||
5 | |||
6 | set(EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR}) | ||
7 | add_definitions( -DMAIL_DATA_DIR="${CMAKE_CURRENT_SOURCE_DIR}/data" ) | ||
8 | |||
9 | include(${CMAKE_CURRENT_SOURCE_DIR}/kdepim_add_gpg_crypto_test.cmake) | ||
10 | |||
11 | # convenience macro to add qtest unit tests | ||
12 | macro(add_mimetreeparser_unittest _source) | ||
13 | get_filename_component(_name ${_source} NAME_WE) | ||
14 | ecm_add_test(${_source} util.cpp setupenv.cpp | ||
15 | TEST_NAME ${_name} | ||
16 | NAME_PREFIX "mimetreeparser-" | ||
17 | LINK_LIBRARIES kube_otp Qt5::Test KF5::Mime Gpgmepp | ||
18 | ) | ||
19 | endmacro () | ||
20 | |||
21 | macro(add_mimetreeparser_class_unittest _source _additionalSource) | ||
22 | get_filename_component(_name ${_source} NAME_WE) | ||
23 | ecm_add_test(${_source} ${_additionalSource} | ||
24 | TEST_NAME ${_name} | ||
25 | NAME_PREFIX "mimetreeparser-" | ||
26 | LINK_LIBRARIES kube_otp Qt5::Test KF5::Mime Gpgmepp | ||
27 | ) | ||
28 | endmacro () | ||
29 | |||
30 | macro(add_mimetreeparser_crypto_unittest _source) | ||
31 | set(_test ${_source} util.cpp) | ||
32 | get_filename_component(_name ${_source} NAME_WE) | ||
33 | add_executable( ${_name} ${_test} setupenv.cpp) | ||
34 | ecm_mark_as_test(mimetreeparser-${_name}) | ||
35 | target_link_libraries( ${_name} | ||
36 | kube_otp | ||
37 | Qt5::Test | ||
38 | KF5::Mime | ||
39 | Gpgmepp | ||
40 | ) | ||
41 | add_gpg_crypto_test(${_name} mimetreeparser-${_name}) | ||
42 | endmacro () | ||
43 | |||
44 | #FIXME | ||
45 | add_mimetreeparser_crypto_unittest(attachmenttest.cpp) | ||
46 | add_mimetreeparser_unittest(nodehelpertest.cpp) | ||
47 | #add_mimetreeparser_class_unittest( cryptohelpertest.cpp "../src/viewer/cryptohelper.cpp") | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/attachmenttest.cpp b/framework/src/domain/mimetreeparser/otp/autotests/attachmenttest.cpp new file mode 100644 index 00000000..44e40a45 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/attachmenttest.cpp | |||
@@ -0,0 +1,68 @@ | |||
1 | /* | ||
2 | Copyright (c) 2015 Volker Krause <vkrause@kde.org> | ||
3 | |||
4 | This library is free software; you can redistribute it and/or modify it | ||
5 | under the terms of the GNU Library General Public License as published by | ||
6 | the Free Software Foundation; either version 2 of the License, or (at your | ||
7 | option) any later version. | ||
8 | |||
9 | This library is distributed in the hope that it will be useful, but WITHOUT | ||
10 | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
11 | FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public | ||
12 | License for more details. | ||
13 | |||
14 | You should have received a copy of the GNU Library General Public License | ||
15 | along with this library; see the file COPYING.LIB. If not, write to the | ||
16 | Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA | ||
17 | 02110-1301, USA. | ||
18 | */ | ||
19 | #include "objecttreeparser.h" | ||
20 | #include "util.h" | ||
21 | |||
22 | #include "setupenv.h" | ||
23 | |||
24 | #include <qtest.h> | ||
25 | |||
26 | using namespace MimeTreeParser; | ||
27 | |||
28 | class AttachmentTest : public QObject | ||
29 | { | ||
30 | Q_OBJECT | ||
31 | private Q_SLOTS: | ||
32 | void initTestCase(); | ||
33 | void testEncryptedAttachment_data(); | ||
34 | void testEncryptedAttachment(); | ||
35 | }; | ||
36 | |||
37 | QTEST_MAIN(AttachmentTest) | ||
38 | |||
39 | void AttachmentTest::initTestCase() | ||
40 | { | ||
41 | MimeTreeParser::Test::setupEnv(); | ||
42 | } | ||
43 | |||
44 | void AttachmentTest::testEncryptedAttachment_data() | ||
45 | { | ||
46 | QTest::addColumn<QString>("mbox"); | ||
47 | QTest::newRow("encrypted") << "openpgp-encrypted-two-attachments.mbox"; | ||
48 | QTest::newRow("signed") << "openpgp-signed-two-attachments.mbox"; | ||
49 | QTest::newRow("signed+encrypted") << "openpgp-signed-encrypted-two-attachments.mbox"; | ||
50 | QTest::newRow("encrypted+partial signed") << "openpgp-encrypted-partially-signed-attachments.mbox"; | ||
51 | } | ||
52 | |||
53 | void AttachmentTest::testEncryptedAttachment() | ||
54 | { | ||
55 | QFETCH(QString, mbox); | ||
56 | auto msg = readAndParseMail(mbox); | ||
57 | NodeHelper nodeHelper; | ||
58 | Test::TestObjectTreeSource testSource(nullptr); | ||
59 | testSource.setAllowDecryption(true); | ||
60 | ObjectTreeParser otp(&testSource, &nodeHelper); | ||
61 | otp.parseObjectTree(msg.data()); | ||
62 | |||
63 | auto attachments = msg->attachments(); | ||
64 | auto encAtts = nodeHelper.attachmentsOfExtraContents(); | ||
65 | QCOMPARE(attachments.size() + encAtts.size(), 2); | ||
66 | } | ||
67 | |||
68 | #include "attachmenttest.moc" | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/cryptohelpertest.cpp b/framework/src/domain/mimetreeparser/otp/autotests/cryptohelpertest.cpp new file mode 100644 index 00000000..251e657d --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/cryptohelpertest.cpp | |||
@@ -0,0 +1,144 @@ | |||
1 | /* Copyright 2015 Sandro Knauß <knauss@kolabsys.com> | ||
2 | |||
3 | This program is free software; you can redistribute it and/or | ||
4 | modify it under the terms of the GNU General Public License as | ||
5 | published by the Free Software Foundation; either version 2 of | ||
6 | the License or (at your option) version 3 or any later version | ||
7 | accepted by the membership of KDE e.V. (or its successor approved | ||
8 | by the membership of KDE e.V.), which shall act as a proxy | ||
9 | defined in Section 14 of version 3 of the license. | ||
10 | |||
11 | This program is distributed in the hope that it will be useful, | ||
12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | GNU General Public License for more details. | ||
15 | |||
16 | You should have received a copy of the GNU General Public License | ||
17 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
18 | */ | ||
19 | #include "cryptohelpertest.h" | ||
20 | |||
21 | #include "cryptohelper.h" | ||
22 | |||
23 | #include <QTest> | ||
24 | |||
25 | using namespace MimeTreeParser; | ||
26 | |||
27 | void CryptoHelperTest::testPMFDEmpty() | ||
28 | { | ||
29 | QCOMPARE(prepareMessageForDecryption("").count(), 0); | ||
30 | } | ||
31 | |||
32 | void CryptoHelperTest::testPMFDWithNoPGPBlock() | ||
33 | { | ||
34 | const QByteArray text = "testblabla"; | ||
35 | const QList<Block> blocks = prepareMessageForDecryption(text); | ||
36 | QCOMPARE(blocks.count(), 1); | ||
37 | QCOMPARE(blocks[0].text(), text); | ||
38 | QCOMPARE(blocks[0].type(), NoPgpBlock); | ||
39 | } | ||
40 | |||
41 | void CryptoHelperTest::testPGPBlockType() | ||
42 | { | ||
43 | const QString blockText = QStringLiteral("text"); | ||
44 | const QString preString = QStringLiteral("before\n"); | ||
45 | for (int i = 1; i <= PrivateKeyBlock; ++i) { | ||
46 | QString name; | ||
47 | switch (i) { | ||
48 | case PgpMessageBlock: | ||
49 | name = QStringLiteral("MESSAGE"); | ||
50 | break; | ||
51 | case MultiPgpMessageBlock: | ||
52 | name = QStringLiteral("MESSAGE PART"); | ||
53 | break; | ||
54 | case SignatureBlock: | ||
55 | name = QStringLiteral("SIGNATURE"); | ||
56 | break; | ||
57 | case ClearsignedBlock: | ||
58 | name = QStringLiteral("SIGNED MESSAGE"); | ||
59 | break; | ||
60 | case PublicKeyBlock: | ||
61 | name = QStringLiteral("PUBLIC KEY BLOCK"); | ||
62 | break; | ||
63 | case PrivateKeyBlock: | ||
64 | name = QStringLiteral("PRIVATE KEY BLOCK"); | ||
65 | break; | ||
66 | } | ||
67 | QString text = QLatin1String("-----BEGIN PGP ") + name + QLatin1String("\n") + blockText; | ||
68 | QList<Block> blocks = prepareMessageForDecryption(preString.toLatin1() + text.toLatin1()); | ||
69 | QCOMPARE(blocks.count(), 1); | ||
70 | QCOMPARE(blocks[0].type(), UnknownBlock); | ||
71 | |||
72 | text += QLatin1String("\n-----END PGP ") + name + QLatin1String("\n"); | ||
73 | blocks = prepareMessageForDecryption(preString.toLatin1() + text.toLatin1()); | ||
74 | QCOMPARE(blocks.count(), 2); | ||
75 | QCOMPARE(blocks[1].text(), text.toLatin1()); | ||
76 | QCOMPARE(blocks[1].type(), static_cast<PGPBlockType>(i)); | ||
77 | } | ||
78 | } | ||
79 | |||
80 | void CryptoHelperTest::testDeterminePGPBlockType() | ||
81 | { | ||
82 | const QString blockText = QStringLiteral("text"); | ||
83 | for (int i = 1; i <= PrivateKeyBlock; ++i) { | ||
84 | QString name; | ||
85 | switch (i) { | ||
86 | |||
87 | case PgpMessageBlock: | ||
88 | name = QStringLiteral("MESSAGE"); | ||
89 | break; | ||
90 | case MultiPgpMessageBlock: | ||
91 | name = QStringLiteral("MESSAGE PART"); | ||
92 | break; | ||
93 | case SignatureBlock: | ||
94 | name = QStringLiteral("SIGNATURE"); | ||
95 | break; | ||
96 | case ClearsignedBlock: | ||
97 | name = QStringLiteral("SIGNED MESSAGE"); | ||
98 | break; | ||
99 | case PublicKeyBlock: | ||
100 | name = QStringLiteral("PUBLIC KEY BLOCK"); | ||
101 | break; | ||
102 | case PrivateKeyBlock: | ||
103 | name = QStringLiteral("PRIVATE KEY BLOCK"); | ||
104 | break; | ||
105 | } | ||
106 | const QString text = QLatin1String("-----BEGIN PGP ") + name + QLatin1String("\n") + blockText + QLatin1String("\n"); | ||
107 | const Block block = Block(text.toLatin1()); | ||
108 | QCOMPARE(block.text(), text.toLatin1()); | ||
109 | QCOMPARE(block.type(), static_cast<PGPBlockType>(i)); | ||
110 | } | ||
111 | } | ||
112 | |||
113 | void CryptoHelperTest::testEmbededPGPBlock() | ||
114 | { | ||
115 | const QByteArray text = QByteArray("before\n-----BEGIN PGP MESSAGE-----\ncrypted - you see :)\n-----END PGP MESSAGE-----\nafter"); | ||
116 | const QList<Block> blocks = prepareMessageForDecryption(text); | ||
117 | QCOMPARE(blocks.count(), 3); | ||
118 | QCOMPARE(blocks[0].text(), QByteArray("before\n")); | ||
119 | QCOMPARE(blocks[1].text(), QByteArray("-----BEGIN PGP MESSAGE-----\ncrypted - you see :)\n-----END PGP MESSAGE-----\n")); | ||
120 | QCOMPARE(blocks[2].text(), QByteArray("after")); | ||
121 | } | ||
122 | |||
123 | void CryptoHelperTest::testClearSignedMessage() | ||
124 | { | ||
125 | const QByteArray text = QByteArray("before\n-----BEGIN PGP SIGNED MESSAGE-----\nsigned content\n-----BEGIN PGP SIGNATURE-----\nfancy signature\n-----END PGP SIGNATURE-----\nafter"); | ||
126 | const QList<Block> blocks = prepareMessageForDecryption(text); | ||
127 | QCOMPARE(blocks.count(), 3); | ||
128 | QCOMPARE(blocks[0].text(), QByteArray("before\n")); | ||
129 | QCOMPARE(blocks[1].text(), QByteArray("-----BEGIN PGP SIGNED MESSAGE-----\nsigned content\n-----BEGIN PGP SIGNATURE-----\nfancy signature\n-----END PGP SIGNATURE-----\n")); | ||
130 | QCOMPARE(blocks[2].text(), QByteArray("after")); | ||
131 | } | ||
132 | |||
133 | void CryptoHelperTest::testMultipleBlockMessage() | ||
134 | { | ||
135 | const QByteArray text = QByteArray("before\n-----BEGIN PGP SIGNED MESSAGE-----\nsigned content\n-----BEGIN PGP SIGNATURE-----\nfancy signature\n-----END PGP SIGNATURE-----\nafter\n-----BEGIN PGP MESSAGE-----\ncrypted - you see :)\n-----END PGP MESSAGE-----\n"); | ||
136 | const QList<Block> blocks = prepareMessageForDecryption(text); | ||
137 | QCOMPARE(blocks.count(), 4); | ||
138 | QCOMPARE(blocks[0].text(), QByteArray("before\n")); | ||
139 | QCOMPARE(blocks[1].text(), QByteArray("-----BEGIN PGP SIGNED MESSAGE-----\nsigned content\n-----BEGIN PGP SIGNATURE-----\nfancy signature\n-----END PGP SIGNATURE-----\n")); | ||
140 | QCOMPARE(blocks[2].text(), QByteArray("after\n")); | ||
141 | QCOMPARE(blocks[3].text(), QByteArray("-----BEGIN PGP MESSAGE-----\ncrypted - you see :)\n-----END PGP MESSAGE-----\n")); | ||
142 | } | ||
143 | |||
144 | QTEST_APPLESS_MAIN(CryptoHelperTest) | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/cryptohelpertest.h b/framework/src/domain/mimetreeparser/otp/autotests/cryptohelpertest.h new file mode 100644 index 00000000..71ae086f --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/cryptohelpertest.h | |||
@@ -0,0 +1,42 @@ | |||
1 | /* Copyright 2009 Thomas McGuire <mcguire@kde.org> | ||
2 | |||
3 | This program is free software; you can redistribute it and/or | ||
4 | modify it under the terms of the GNU General Public License as | ||
5 | published by the Free Software Foundation; either version 2 of | ||
6 | the License or (at your option) version 3 or any later version | ||
7 | accepted by the membership of KDE e.V. (or its successor approved | ||
8 | by the membership of KDE e.V.), which shall act as a proxy | ||
9 | defined in Section 14 of version 3 of the license. | ||
10 | |||
11 | This program is distributed in the hope that it will be useful, | ||
12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | GNU General Public License for more details. | ||
15 | |||
16 | You should have received a copy of the GNU General Public License | ||
17 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
18 | */ | ||
19 | #ifndef CRYPTOHELPERTEST_H | ||
20 | #define CRYPTOHELPERTEST_H | ||
21 | |||
22 | #include <QObject> | ||
23 | |||
24 | namespace MimeTreeParser | ||
25 | { | ||
26 | |||
27 | class CryptoHelperTest : public QObject | ||
28 | { | ||
29 | Q_OBJECT | ||
30 | |||
31 | private Q_SLOTS: | ||
32 | void testPMFDEmpty(); | ||
33 | void testPMFDWithNoPGPBlock(); | ||
34 | void testPGPBlockType(); | ||
35 | void testDeterminePGPBlockType(); | ||
36 | void testEmbededPGPBlock(); | ||
37 | void testClearSignedMessage(); | ||
38 | void testMultipleBlockMessage(); | ||
39 | }; | ||
40 | |||
41 | } | ||
42 | #endif | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/alternative-notext.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/alternative-notext.mbox new file mode 100644 index 00000000..86026437 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/alternative-notext.mbox | |||
@@ -0,0 +1,22 @@ | |||
1 | Return-Path: <konqi@example.org> | ||
2 | Date: Wed, 8 Jun 2016 20:34:44 -0700 | ||
3 | From: Konqi <konqi@example.org> | ||
4 | To: konqi@kde.org | ||
5 | Subject: A random subject with a empty text alternative contenttype | ||
6 | MIME-Version: 1.0 | ||
7 | Content-Type: multipart/alternative; | ||
8 | boundary="----=_Part_12345678_12345678" | ||
9 | |||
10 | |||
11 | ------=_Part_12345678_12345678 | ||
12 | Content-Transfer-Encoding: 7Bit | ||
13 | Content-Type: text/html; charset="windows-1252" | ||
14 | |||
15 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> | ||
16 | <html><head><meta name="qrichtext" content="1" /><style type="text/css"> | ||
17 | p, li { white-space: pre-wrap; } | ||
18 | </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> | ||
19 | <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">Some <span style=" font-weight:600;">HTML</span> text</p></body></html> | ||
20 | |||
21 | |||
22 | ------=_Part_12345678_12345678-- | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/alternative-notext.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/alternative-notext.mbox.html new file mode 100644 index 00000000..41db4eab --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/alternative-notext.mbox.html | |||
@@ -0,0 +1,17 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <div style="position: relative"> | ||
11 | <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">Some <span style=" font-weight:600;">HTML</span> text</p> | ||
12 | </div> | ||
13 | </div> | ||
14 | </div> | ||
15 | </div> | ||
16 | </body> | ||
17 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/alternative-notext.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/alternative-notext.mbox.tree new file mode 100644 index 00000000..0de07281 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/alternative-notext.mbox.tree | |||
@@ -0,0 +1,2 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::AlternativeMessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/alternative.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/alternative.mbox new file mode 100644 index 00000000..a2c58591 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/alternative.mbox | |||
@@ -0,0 +1,34 @@ | |||
1 | Return-Path: <konqi@example.org> | ||
2 | Date: Wed, 8 Jun 2016 20:34:44 -0700 | ||
3 | From: Konqi <konqi@example.org> | ||
4 | To: konqi@kde.org | ||
5 | Subject: A random subject with alternative contenttype | ||
6 | MIME-Version: 1.0 | ||
7 | Content-Type: multipart/alternative; | ||
8 | boundary="----=_Part_12345678_12345678" | ||
9 | |||
10 | |||
11 | ------=_Part_12345678_12345678 | ||
12 | Content-Type: text/plain; charset=utf-8 | ||
13 | Content-Transfer-Encoding: quoted-printable | ||
14 | |||
15 | If you can see this text it means that your email client couldn't display o= | ||
16 | ur newsletter properly. | ||
17 | Please visit this link to view the newsletter on our website: http://www.go= | ||
18 | g.com/newsletter/ | ||
19 | |||
20 | =2D GOG.com Team | ||
21 | |||
22 | |||
23 | ------=_Part_12345678_12345678 | ||
24 | Content-Transfer-Encoding: 7Bit | ||
25 | Content-Type: text/html; charset="windows-1252" | ||
26 | |||
27 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> | ||
28 | <html><head><meta name="qrichtext" content="1" /><style type="text/css"> | ||
29 | p, li { white-space: pre-wrap; } | ||
30 | </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> | ||
31 | <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">Some <span style=" font-weight:600;">HTML</span> text</p></body></html> | ||
32 | |||
33 | |||
34 | ------=_Part_12345678_12345678-- | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/alternative.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/alternative.mbox.html new file mode 100644 index 00000000..2fe886f1 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/alternative.mbox.html | |||
@@ -0,0 +1,17 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att2"/> | ||
9 | <div id="attachmentDiv2"> | ||
10 | <div style="position: relative"> | ||
11 | <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">Some <span style=" font-weight:600;">HTML</span> text</p> | ||
12 | </div> | ||
13 | </div> | ||
14 | </div> | ||
15 | </div> | ||
16 | </body> | ||
17 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/alternative.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/alternative.mbox.tree new file mode 100644 index 00000000..0de07281 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/alternative.mbox.tree | |||
@@ -0,0 +1,2 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::AlternativeMessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/details/forward-openpgp-signed-encrypted.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/details/forward-openpgp-signed-encrypted.mbox.html new file mode 100644 index 00000000..9a81f103 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/details/forward-openpgp-signed-encrypted.mbox.html | |||
@@ -0,0 +1,84 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <div class="noquote"> | ||
11 | <div dir="ltr">bla bla bla</div> | ||
12 | </div> | ||
13 | </div> | ||
14 | <a name="att2"/> | ||
15 | <div id="attachmentDiv2"> | ||
16 | <table cellspacing="1" cellpadding="1" class="rfc822"> | ||
17 | <tr class="rfc822H"> | ||
18 | <td dir="ltr"> | ||
19 | <a href="attachment:2.1?place=body">Encapsulated message</a> | ||
20 | </td> | ||
21 | </tr> | ||
22 | <tr class="rfc822B"> | ||
23 | <td> | ||
24 | <a name="att2.1"/> | ||
25 | <div id="attachmentDiv2.1"> | ||
26 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
27 | <tr class="encrH"> | ||
28 | <td dir="ltr">Encrypted message</td> | ||
29 | </tr> | ||
30 | <tr class="encrB"> | ||
31 | <td> | ||
32 | <div style="position: relative; word-wrap: break-word"> | ||
33 | <a name="att"/> | ||
34 | <div id="attachmentDiv"> | ||
35 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
36 | <tr class="signOkKeyOkH"> | ||
37 | <td dir="ltr"> | ||
38 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
39 | <tr> | ||
40 | <td rowspan="2">Message was signed by <a href="mailto:test@kolab.org">test@kolab.org</a> (Key ID: <a href="kmail:showCertificate#gpg ### OpenPGP ### 8D9860C58F246DE6">0x8D9860C58F246DE6</a>).<br/>The signature is valid and the key is fully trusted.</td> | ||
41 | <td align="right" valign="top" nowrap="nowrap"> | ||
42 | <a href="kmail:hideSignatureDetails">Hide Details</a> | ||
43 | </td> | ||
44 | </tr> | ||
45 | <tr> | ||
46 | <td align="right" valign="bottom" nowrap="nowrap"/> | ||
47 | </tr> | ||
48 | </table> | ||
49 | </td> | ||
50 | </tr> | ||
51 | <tr class="signOkKeyOkB"> | ||
52 | <td> | ||
53 | <a name="att1"/> | ||
54 | <div id="attachmentDiv1"> | ||
55 | <div class="noquote"> | ||
56 | <div dir="ltr">encrypted message text</div> | ||
57 | </div> | ||
58 | </div> | ||
59 | </td> | ||
60 | </tr> | ||
61 | <tr class="signOkKeyOkH"> | ||
62 | <td dir="ltr">End of signed message</td> | ||
63 | </tr> | ||
64 | </table> | ||
65 | </div> | ||
66 | </div> | ||
67 | </td> | ||
68 | </tr> | ||
69 | <tr class="encrH"> | ||
70 | <td dir="ltr">End of encrypted message</td> | ||
71 | </tr> | ||
72 | </table> | ||
73 | </div> | ||
74 | </td> | ||
75 | </tr> | ||
76 | <tr class="rfc822H"> | ||
77 | <td dir="ltr">End of encapsulated message</td> | ||
78 | </tr> | ||
79 | </table> | ||
80 | </div> | ||
81 | </div> | ||
82 | </div> | ||
83 | </body> | ||
84 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-encoded.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-encoded.mbox.html new file mode 100644 index 00000000..65d5f95e --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-encoded.mbox.html | |||
@@ -0,0 +1,38 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signWarn"> | ||
9 | <tr class="signWarnH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td rowspan="2">Message was signed on 12/21/15 3:46 PM with unknown key <a href="kmail:showCertificate#gpg ### OpenPGP ### E68031D299A6527C">0xE68031D299A6527C</a>.<br/>The validity of the signature cannot be verified.<br/>Status:<i>No public key to verify the signature</i></td> | ||
14 | <td align="right" valign="top" nowrap="nowrap"> | ||
15 | <a href="kmail:hideSignatureDetails">Hide Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | <tr> | ||
19 | <td align="right" valign="bottom" nowrap="nowrap"/> | ||
20 | </tr> | ||
21 | </table> | ||
22 | </td> | ||
23 | </tr> | ||
24 | <tr class="signWarnB"> | ||
25 | <td> | ||
26 | <div class="noquote"> | ||
27 | <div dir="ltr">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec a diam lectus. Sed sit amet ipsum mauris. Maecenas congue ligula ac quam viverra nec consectetur ante hendrerit. Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean ut gravida lorem. Ut turpis felis, pulvinar a semper sed, adipiscing id dolor. Pellentesque auctor nisi id magna consequat sagittis. Curabitur dapibus enim sit amet elit pharetra tincidunt feugiat nisl imperdiet. Ut convallis libero in urna ultrices accumsan. Donec sed odio eros. Donec viverra mi quis quam pulvinar at malesuada arcu rhoncus. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. In rutrum accumsan ultricies. Mauris vitae nisi at sem facilisis semper ac in est.</div> | ||
28 | </div> | ||
29 | </td> | ||
30 | </tr> | ||
31 | <tr class="signWarnH"> | ||
32 | <td dir="ltr">End of signed message</td> | ||
33 | </tr> | ||
34 | </table> | ||
35 | </div> | ||
36 | </div> | ||
37 | </body> | ||
38 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-encrypted+signed.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-encrypted+signed.mbox.html new file mode 100644 index 00000000..96361c30 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-encrypted+signed.mbox.html | |||
@@ -0,0 +1,55 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
15 | <tr class="signOkKeyOkH"> | ||
16 | <td dir="ltr"> | ||
17 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
18 | <tr> | ||
19 | <td rowspan="2">Message was signed by <a href="mailto:test@kolab.org">test@kolab.org</a> (Key ID: <a href="kmail:showCertificate#gpg ### OpenPGP ### 8D9860C58F246DE6">0x8D9860C58F246DE6</a>).<br/>The signature is valid and the key is fully trusted.</td> | ||
20 | <td align="right" valign="top" nowrap="nowrap"> | ||
21 | <a href="kmail:hideSignatureDetails">Hide Details</a> | ||
22 | </td> | ||
23 | </tr> | ||
24 | <tr> | ||
25 | <td align="right" valign="bottom" nowrap="nowrap"/> | ||
26 | </tr> | ||
27 | </table> | ||
28 | </td> | ||
29 | </tr> | ||
30 | <tr class="signOkKeyOkB"> | ||
31 | <td> | ||
32 | <div style="position: relative; word-wrap: break-word"> | ||
33 | <a name="att"/> | ||
34 | <div id="attachmentDiv"> | ||
35 | <div class="noquote"> | ||
36 | <div dir="ltr">encrypted message text</div> | ||
37 | </div> | ||
38 | </div> | ||
39 | </div> | ||
40 | </td> | ||
41 | </tr> | ||
42 | <tr class="signOkKeyOkH"> | ||
43 | <td dir="ltr">End of signed message</td> | ||
44 | </tr> | ||
45 | </table> | ||
46 | </td> | ||
47 | </tr> | ||
48 | <tr class="encrH"> | ||
49 | <td dir="ltr">End of encrypted message</td> | ||
50 | </tr> | ||
51 | </table> | ||
52 | </div> | ||
53 | </div> | ||
54 | </body> | ||
55 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox.html new file mode 100644 index 00000000..cc6bf03e --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox.html | |||
@@ -0,0 +1,80 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
11 | <tr class="encrH"> | ||
12 | <td dir="ltr">Encrypted message</td> | ||
13 | </tr> | ||
14 | <tr class="encrB"> | ||
15 | <td> | ||
16 | <div style="position: relative; word-wrap: break-word"> | ||
17 | <a name="att"/> | ||
18 | <div id="attachmentDiv"> | ||
19 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
20 | <tr class="signOkKeyOkH"> | ||
21 | <td dir="ltr"> | ||
22 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
23 | <tr> | ||
24 | <td rowspan="2">Message was signed by <a href="mailto:test@kolab.org">test@kolab.org</a> (Key ID: <a href="kmail:showCertificate#gpg ### OpenPGP ### 8D9860C58F246DE6">0x8D9860C58F246DE6</a>).<br/>The signature is valid and the key is fully trusted.</td> | ||
25 | <td align="right" valign="top" nowrap="nowrap"> | ||
26 | <a href="kmail:hideSignatureDetails">Hide Details</a> | ||
27 | </td> | ||
28 | </tr> | ||
29 | <tr> | ||
30 | <td align="right" valign="bottom" nowrap="nowrap"/> | ||
31 | </tr> | ||
32 | </table> | ||
33 | </td> | ||
34 | </tr> | ||
35 | <tr class="signOkKeyOkB"> | ||
36 | <td> | ||
37 | <a name="att1"/> | ||
38 | <div id="attachmentDiv1"> | ||
39 | <a name="att1.1"/> | ||
40 | <div id="attachmentDiv1.1"> | ||
41 | <div class="noquote"> | ||
42 | <div dir="ltr">test text</div> | ||
43 | </div> | ||
44 | </div> | ||
45 | <a name="att1.2"/> | ||
46 | <div id="attachmentDiv1.2"> | ||
47 | <hr/> | ||
48 | <div> | ||
49 | <a href="attachment:1:e0:1.2?place=body"><img align="center" height="48" width="48" src="file:text-plain.svg" border="0" style="max-width: 100%" alt=""/>file.txt</a> | ||
50 | </div> | ||
51 | <div/> | ||
52 | </div> | ||
53 | </div> | ||
54 | </td> | ||
55 | </tr> | ||
56 | <tr class="signOkKeyOkH"> | ||
57 | <td dir="ltr">End of signed message</td> | ||
58 | </tr> | ||
59 | </table> | ||
60 | </div> | ||
61 | </div> | ||
62 | </td> | ||
63 | </tr> | ||
64 | <tr class="encrH"> | ||
65 | <td dir="ltr">End of encrypted message</td> | ||
66 | </tr> | ||
67 | </table> | ||
68 | </div> | ||
69 | <a name="att2"/> | ||
70 | <div id="attachmentDiv2"> | ||
71 | <hr/> | ||
72 | <div> | ||
73 | <a href="attachment:2?place=body"><img align="center" height="48" width="48" src="file:image-png.svg" border="0" style="max-width: 100%" alt=""/>image.png</a> | ||
74 | </div> | ||
75 | <div/> | ||
76 | </div> | ||
77 | </div> | ||
78 | </div> | ||
79 | </body> | ||
80 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-encrypted-attachment.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-encrypted-attachment.mbox.html new file mode 100644 index 00000000..61bf5d28 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-encrypted-attachment.mbox.html | |||
@@ -0,0 +1,69 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
18 | <tr class="signOkKeyOkH"> | ||
19 | <td dir="ltr"> | ||
20 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
21 | <tr> | ||
22 | <td rowspan="2">Message was signed by <a href="mailto:test@kolab.org">test@kolab.org</a> (Key ID: <a href="kmail:showCertificate#gpg ### OpenPGP ### 8D9860C58F246DE6">0x8D9860C58F246DE6</a>).<br/>The signature is valid and the key is fully trusted.</td> | ||
23 | <td align="right" valign="top" nowrap="nowrap"> | ||
24 | <a href="kmail:hideSignatureDetails">Hide Details</a> | ||
25 | </td> | ||
26 | </tr> | ||
27 | <tr> | ||
28 | <td align="right" valign="bottom" nowrap="nowrap"/> | ||
29 | </tr> | ||
30 | </table> | ||
31 | </td> | ||
32 | </tr> | ||
33 | <tr class="signOkKeyOkB"> | ||
34 | <td> | ||
35 | <a name="att1"/> | ||
36 | <div id="attachmentDiv1"> | ||
37 | <a name="att1.1"/> | ||
38 | <div id="attachmentDiv1.1"> | ||
39 | <div class="noquote"> | ||
40 | <div dir="ltr">test text</div> | ||
41 | </div> | ||
42 | </div> | ||
43 | <a name="att1.2"/> | ||
44 | <div id="attachmentDiv1.2"> | ||
45 | <hr/> | ||
46 | <div> | ||
47 | <a href="attachment:e0:1.2?place=body"><img align="center" height="48" width="48" src="file:text-plain.svg" border="0" style="max-width: 100%" alt=""/>file.txt</a> | ||
48 | </div> | ||
49 | <div/> | ||
50 | </div> | ||
51 | </div> | ||
52 | </td> | ||
53 | </tr> | ||
54 | <tr class="signOkKeyOkH"> | ||
55 | <td dir="ltr">End of signed message</td> | ||
56 | </tr> | ||
57 | </table> | ||
58 | </div> | ||
59 | </div> | ||
60 | </td> | ||
61 | </tr> | ||
62 | <tr class="encrH"> | ||
63 | <td dir="ltr">End of encrypted message</td> | ||
64 | </tr> | ||
65 | </table> | ||
66 | </div> | ||
67 | </div> | ||
68 | </body> | ||
69 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-encrypted-non-encrypted-attachment.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-encrypted-non-encrypted-attachment.mbox.html new file mode 100644 index 00000000..8d8bde0d --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-encrypted-non-encrypted-attachment.mbox.html | |||
@@ -0,0 +1,72 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
11 | <tr class="encrH"> | ||
12 | <td dir="ltr">Encrypted message</td> | ||
13 | </tr> | ||
14 | <tr class="encrB"> | ||
15 | <td> | ||
16 | <div style="position: relative; word-wrap: break-word"> | ||
17 | <a name="att"/> | ||
18 | <div id="attachmentDiv"> | ||
19 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
20 | <tr class="signOkKeyOkH"> | ||
21 | <td dir="ltr"> | ||
22 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
23 | <tr> | ||
24 | <td rowspan="2">Message was signed by <a href="mailto:test@kolab.org">test@kolab.org</a> (Key ID: <a href="kmail:showCertificate#gpg ### OpenPGP ### 8D9860C58F246DE6">0x8D9860C58F246DE6</a>).<br/>The signature is valid and the key is fully trusted.</td> | ||
25 | <td align="right" valign="top" nowrap="nowrap"> | ||
26 | <a href="kmail:hideSignatureDetails">Hide Details</a> | ||
27 | </td> | ||
28 | </tr> | ||
29 | <tr> | ||
30 | <td align="right" valign="bottom" nowrap="nowrap"/> | ||
31 | </tr> | ||
32 | </table> | ||
33 | </td> | ||
34 | </tr> | ||
35 | <tr class="signOkKeyOkB"> | ||
36 | <td> | ||
37 | <a name="att1"/> | ||
38 | <div id="attachmentDiv1"> | ||
39 | <a name="att1.1"/> | ||
40 | <div id="attachmentDiv1.1"> | ||
41 | <div class="noquote"> | ||
42 | <div dir="ltr">test text</div> | ||
43 | </div> | ||
44 | </div> | ||
45 | </div> | ||
46 | </td> | ||
47 | </tr> | ||
48 | <tr class="signOkKeyOkH"> | ||
49 | <td dir="ltr">End of signed message</td> | ||
50 | </tr> | ||
51 | </table> | ||
52 | </div> | ||
53 | </div> | ||
54 | </td> | ||
55 | </tr> | ||
56 | <tr class="encrH"> | ||
57 | <td dir="ltr">End of encrypted message</td> | ||
58 | </tr> | ||
59 | </table> | ||
60 | </div> | ||
61 | <a name="att2"/> | ||
62 | <div id="attachmentDiv2"> | ||
63 | <hr/> | ||
64 | <div> | ||
65 | <a href="attachment:2?place=body"><img align="center" height="48" width="48" src="file:image-png.svg" border="0" style="max-width: 100%" alt=""/>image.png</a> | ||
66 | </div> | ||
67 | <div/> | ||
68 | </div> | ||
69 | </div> | ||
70 | </div> | ||
71 | </body> | ||
72 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-encrypted-partially-signed-attachments.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-encrypted-partially-signed-attachments.mbox.html new file mode 100644 index 00000000..1716b841 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-encrypted-partially-signed-attachments.mbox.html | |||
@@ -0,0 +1,102 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
11 | <tr class="encrH"> | ||
12 | <td dir="ltr">Encrypted message</td> | ||
13 | </tr> | ||
14 | <tr class="encrB"> | ||
15 | <td> | ||
16 | <div style="position: relative; word-wrap: break-word"> | ||
17 | <a name="att"/> | ||
18 | <div id="attachmentDiv"> | ||
19 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
20 | <tr class="signOkKeyOkH"> | ||
21 | <td dir="ltr"> | ||
22 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
23 | <tr> | ||
24 | <td rowspan="2">Message was signed by <a href="mailto:test@kolab.org">test@kolab.org</a> (Key ID: <a href="kmail:showCertificate#gpg ### OpenPGP ### 8D9860C58F246DE6">0x8D9860C58F246DE6</a>).<br/>The signature is valid and the key is fully trusted.</td> | ||
25 | <td align="right" valign="top" nowrap="nowrap"> | ||
26 | <a href="kmail:hideSignatureDetails">Hide Details</a> | ||
27 | </td> | ||
28 | </tr> | ||
29 | <tr> | ||
30 | <td align="right" valign="bottom" nowrap="nowrap"/> | ||
31 | </tr> | ||
32 | </table> | ||
33 | </td> | ||
34 | </tr> | ||
35 | <tr class="signOkKeyOkB"> | ||
36 | <td> | ||
37 | <a name="att1"/> | ||
38 | <div id="attachmentDiv1"> | ||
39 | <a name="att1.1"/> | ||
40 | <div id="attachmentDiv1.1"> | ||
41 | <div class="noquote"> | ||
42 | <div dir="ltr">This is the main body.</div> | ||
43 | </div> | ||
44 | </div> | ||
45 | <a name="att1.2"/> | ||
46 | <div id="attachmentDiv1.2"> | ||
47 | <table cellspacing="1" class="textAtm"> | ||
48 | <tr class="textAtmH"> | ||
49 | <td dir="ltr">attachment1.txt</td> | ||
50 | </tr> | ||
51 | <tr class="textAtmB"> | ||
52 | <td> | ||
53 | <div class="noquote"> | ||
54 | <div dir="ltr">This is a signed attachment.</div> | ||
55 | </div> | ||
56 | </td> | ||
57 | </tr> | ||
58 | </table> | ||
59 | </div> | ||
60 | </div> | ||
61 | </td> | ||
62 | </tr> | ||
63 | <tr class="signOkKeyOkH"> | ||
64 | <td dir="ltr">End of signed message</td> | ||
65 | </tr> | ||
66 | </table> | ||
67 | </div> | ||
68 | </div> | ||
69 | </td> | ||
70 | </tr> | ||
71 | <tr class="encrH"> | ||
72 | <td dir="ltr">End of encrypted message</td> | ||
73 | </tr> | ||
74 | </table> | ||
75 | </div> | ||
76 | <a name="att2"/> | ||
77 | <div id="attachmentDiv2"> | ||
78 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
79 | <tr class="encrH"> | ||
80 | <td dir="ltr">Encrypted message</td> | ||
81 | </tr> | ||
82 | <tr class="encrB"> | ||
83 | <td> | ||
84 | <div style="position: relative; word-wrap: break-word"> | ||
85 | <a name="att"/> | ||
86 | <div id="attachmentDiv"> | ||
87 | <div class="noquote"> | ||
88 | <div dir="ltr">This is an unsigned attachment.</div> | ||
89 | </div> | ||
90 | </div> | ||
91 | </div> | ||
92 | </td> | ||
93 | </tr> | ||
94 | <tr class="encrH"> | ||
95 | <td dir="ltr">End of encrypted message</td> | ||
96 | </tr> | ||
97 | </table> | ||
98 | </div> | ||
99 | </div> | ||
100 | </div> | ||
101 | </body> | ||
102 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-inline-charset-encrypted.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-inline-charset-encrypted.mbox.html new file mode 100644 index 00000000..c2fa2fee --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-inline-charset-encrypted.mbox.html | |||
@@ -0,0 +1,50 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
15 | <tr class="signOkKeyOkH"> | ||
16 | <td dir="ltr"> | ||
17 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
18 | <tr> | ||
19 | <td rowspan="2">Message was signed by <a href="mailto:test@kolab.org">test@kolab.org</a> (Key ID: <a href="kmail:showCertificate#gpg ### OpenPGP ### 8D9860C58F246DE6">0x8D9860C58F246DE6</a>).<br/>The signature is valid and the key is fully trusted.</td> | ||
20 | <td align="right" valign="top" nowrap="nowrap"> | ||
21 | <a href="kmail:hideSignatureDetails">Hide Details</a> | ||
22 | </td> | ||
23 | </tr> | ||
24 | <tr> | ||
25 | <td align="right" valign="bottom" nowrap="nowrap"/> | ||
26 | </tr> | ||
27 | </table> | ||
28 | </td> | ||
29 | </tr> | ||
30 | <tr class="signOkKeyOkB"> | ||
31 | <td> | ||
32 | <div class="noquote"> | ||
33 | <div dir="ltr">asdasd asd asd asdf sadf sdaf sadf öäü</div> | ||
34 | </div> | ||
35 | </td> | ||
36 | </tr> | ||
37 | <tr class="signOkKeyOkH"> | ||
38 | <td dir="ltr">End of signed message</td> | ||
39 | </tr> | ||
40 | </table> | ||
41 | </td> | ||
42 | </tr> | ||
43 | <tr class="encrH"> | ||
44 | <td dir="ltr">End of encrypted message</td> | ||
45 | </tr> | ||
46 | </table> | ||
47 | </div> | ||
48 | </div> | ||
49 | </body> | ||
50 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-inline-signed.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-inline-signed.mbox.html new file mode 100644 index 00000000..00a9dc5b --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-inline-signed.mbox.html | |||
@@ -0,0 +1,38 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
9 | <tr class="signOkKeyOkH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td rowspan="2">Message was signed by <a href="mailto:test@kolab.org">test@kolab.org</a> (Key ID: <a href="kmail:showCertificate#gpg ### OpenPGP ### 8D9860C58F246DE6">0x8D9860C58F246DE6</a>).<br/>The signature is valid and the key is fully trusted.</td> | ||
14 | <td align="right" valign="top" nowrap="nowrap"> | ||
15 | <a href="kmail:hideSignatureDetails">Hide Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | <tr> | ||
19 | <td align="right" valign="bottom" nowrap="nowrap"/> | ||
20 | </tr> | ||
21 | </table> | ||
22 | </td> | ||
23 | </tr> | ||
24 | <tr class="signOkKeyOkB"> | ||
25 | <td> | ||
26 | <div class="noquote"> | ||
27 | <div dir="ltr">ohno öäü</div> | ||
28 | </div> | ||
29 | </td> | ||
30 | </tr> | ||
31 | <tr class="signOkKeyOkH"> | ||
32 | <td dir="ltr">End of signed message</td> | ||
33 | </tr> | ||
34 | </table> | ||
35 | </div> | ||
36 | </div> | ||
37 | </body> | ||
38 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-signed-base64-mailman-footer.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-signed-base64-mailman-footer.mbox.html new file mode 100644 index 00000000..c10cecd8 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-signed-base64-mailman-footer.mbox.html | |||
@@ -0,0 +1,81 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <table cellspacing="1" cellpadding="1" class="signWarn"> | ||
11 | <tr class="signWarnH"> | ||
12 | <td dir="ltr"> | ||
13 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
14 | <tr> | ||
15 | <td rowspan="2">Message was signed on 8/22/15 9:31 AM with unknown key <a href="kmail:showCertificate#gpg ### OpenPGP ### 7F96CCD64D12D247">0x7F96CCD64D12D247</a>.<br/>The validity of the signature cannot be verified.<br/>Status:<i>No public key to verify the signature</i></td> | ||
16 | <td align="right" valign="top" nowrap="nowrap"> | ||
17 | <a href="kmail:hideSignatureDetails">Hide Details</a> | ||
18 | </td> | ||
19 | </tr> | ||
20 | <tr> | ||
21 | <td align="right" valign="bottom" nowrap="nowrap"/> | ||
22 | </tr> | ||
23 | </table> | ||
24 | </td> | ||
25 | </tr> | ||
26 | <tr class="signWarnB"> | ||
27 | <td> | ||
28 | <a name="att1.1"/> | ||
29 | <div id="attachmentDiv1.1"> | ||
30 | <div class="noquote"> | ||
31 | <div dir="ltr">Hi,</div> | ||
32 | <br/> | ||
33 | <div dir="ltr">I've talked to Ben, the current Phabricator test setup would actually be </div> | ||
34 | <div dir="ltr">usable for "production" use for task/project management for us, without </div> | ||
35 | <div dir="ltr">causing the sysadmins unreasonable trouble when migrating to the full </div> | ||
36 | <div dir="ltr">production deployment of Phabricator eventually.</div> | ||
37 | <br/> | ||
38 | <div dir="ltr">Phabricator project layout it orthogonal to repo layout, so we can structure </div> | ||
39 | <div dir="ltr">this however we want. Among other teams I see at least the following layouts:</div> | ||
40 | <div dir="ltr">- single project for everything</div> | ||
41 | <div dir="ltr">- a project per release</div> | ||
42 | <div dir="ltr">- a project per component/module (ie. close to the repo layout)</div> | ||
43 | <br/> | ||
44 | <div dir="ltr">How do we want to structure this?</div> | ||
45 | <br/> | ||
46 | <div dir="ltr">I would start with a single project to not fragment this too much, as we have </div> | ||
47 | <div dir="ltr">a relatively small team actually looking into this, so everyone is looking at </div> | ||
48 | <div dir="ltr">most sub-projects anyway. And should we eventually hit scaling limits, we can </div> | ||
49 | <div dir="ltr">always expand this I think.</div> | ||
50 | <br/> | ||
51 | <div dir="ltr">We of course should also talk about what we actually want to put in there. My </div> | ||
52 | <div dir="ltr">current motivation is having a place to collect the tasks for getting more of </div> | ||
53 | <div dir="ltr">the former pimlibs into KF5, and anything else I run into on the way there </div> | ||
54 | <div dir="ltr">that we eventually should clean up/improve.</div> | ||
55 | <br/> | ||
56 | <div dir="ltr">regards,</div> | ||
57 | <div dir="ltr">Volker</div> | ||
58 | </div> | ||
59 | </div> | ||
60 | </td> | ||
61 | </tr> | ||
62 | <tr class="signWarnH"> | ||
63 | <td dir="ltr">End of signed message</td> | ||
64 | </tr> | ||
65 | </table> | ||
66 | </div> | ||
67 | <a name="att2"/> | ||
68 | <div id="attachmentDiv2"> | ||
69 | <div class="noquote"> | ||
70 | <div dir="ltr">_______________________________________________</div> | ||
71 | <div dir="ltr">KDE PIM mailing list <a href="mailto:kde-pim@kde.org">kde-pim@kde.org</a></div> | ||
72 | <div dir="ltr"> | ||
73 | <a href="https://mail.kde.org/mailman/listinfo/kde-pim">https://mail.kde.org/mailman/listinfo/kde-pim</a> | ||
74 | </div> | ||
75 | <div dir="ltr">KDE PIM home page at <a href="http://pim.kde.org/">http://pim.kde.org/</a></div> | ||
76 | </div> | ||
77 | </div> | ||
78 | </div> | ||
79 | </div> | ||
80 | </body> | ||
81 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-signed-encrypted-two-attachments.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-signed-encrypted-two-attachments.mbox.html new file mode 100644 index 00000000..2c02a22c --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-signed-encrypted-two-attachments.mbox.html | |||
@@ -0,0 +1,91 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
18 | <tr class="signOkKeyOkH"> | ||
19 | <td dir="ltr"> | ||
20 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
21 | <tr> | ||
22 | <td rowspan="2">Message was signed by <a href="mailto:test@kolab.org">test@kolab.org</a> (Key ID: <a href="kmail:showCertificate#gpg ### OpenPGP ### 8D9860C58F246DE6">0x8D9860C58F246DE6</a>).<br/>The signature is valid and the key is fully trusted.</td> | ||
23 | <td align="right" valign="top" nowrap="nowrap"> | ||
24 | <a href="kmail:hideSignatureDetails">Hide Details</a> | ||
25 | </td> | ||
26 | </tr> | ||
27 | <tr> | ||
28 | <td align="right" valign="bottom" nowrap="nowrap"/> | ||
29 | </tr> | ||
30 | </table> | ||
31 | </td> | ||
32 | </tr> | ||
33 | <tr class="signOkKeyOkB"> | ||
34 | <td> | ||
35 | <a name="att1"/> | ||
36 | <div id="attachmentDiv1"> | ||
37 | <a name="att1.1"/> | ||
38 | <div id="attachmentDiv1.1"> | ||
39 | <div class="noquote"> | ||
40 | <div dir="ltr">this is the main body</div> | ||
41 | </div> | ||
42 | </div> | ||
43 | <a name="att1.2"/> | ||
44 | <div id="attachmentDiv1.2"> | ||
45 | <table cellspacing="1" class="textAtm"> | ||
46 | <tr class="textAtmH"> | ||
47 | <td dir="ltr">attachment1.txt</td> | ||
48 | </tr> | ||
49 | <tr class="textAtmB"> | ||
50 | <td> | ||
51 | <div class="noquote"> | ||
52 | <div dir="ltr">this is one attachment</div> | ||
53 | </div> | ||
54 | </td> | ||
55 | </tr> | ||
56 | </table> | ||
57 | </div> | ||
58 | <a name="att1.3"/> | ||
59 | <div id="attachmentDiv1.3"> | ||
60 | <table cellspacing="1" class="textAtm"> | ||
61 | <tr class="textAtmH"> | ||
62 | <td dir="ltr">attachment2.txt</td> | ||
63 | </tr> | ||
64 | <tr class="textAtmB"> | ||
65 | <td> | ||
66 | <div class="noquote"> | ||
67 | <div dir="ltr">this is the second attachment</div> | ||
68 | </div> | ||
69 | </td> | ||
70 | </tr> | ||
71 | </table> | ||
72 | </div> | ||
73 | </div> | ||
74 | </td> | ||
75 | </tr> | ||
76 | <tr class="signOkKeyOkH"> | ||
77 | <td dir="ltr">End of signed message</td> | ||
78 | </tr> | ||
79 | </table> | ||
80 | </div> | ||
81 | </div> | ||
82 | </td> | ||
83 | </tr> | ||
84 | <tr class="encrH"> | ||
85 | <td dir="ltr">End of encrypted message</td> | ||
86 | </tr> | ||
87 | </table> | ||
88 | </div> | ||
89 | </div> | ||
90 | </body> | ||
91 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-signed-encrypted.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-signed-encrypted.mbox.html new file mode 100644 index 00000000..d3a7a0ce --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-signed-encrypted.mbox.html | |||
@@ -0,0 +1,58 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
18 | <tr class="signOkKeyOkH"> | ||
19 | <td dir="ltr"> | ||
20 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
21 | <tr> | ||
22 | <td rowspan="2">Message was signed by <a href="mailto:test@kolab.org">test@kolab.org</a> (Key ID: <a href="kmail:showCertificate#gpg ### OpenPGP ### 8D9860C58F246DE6">0x8D9860C58F246DE6</a>).<br/>The signature is valid and the key is fully trusted.</td> | ||
23 | <td align="right" valign="top" nowrap="nowrap"> | ||
24 | <a href="kmail:hideSignatureDetails">Hide Details</a> | ||
25 | </td> | ||
26 | </tr> | ||
27 | <tr> | ||
28 | <td align="right" valign="bottom" nowrap="nowrap"/> | ||
29 | </tr> | ||
30 | </table> | ||
31 | </td> | ||
32 | </tr> | ||
33 | <tr class="signOkKeyOkB"> | ||
34 | <td> | ||
35 | <a name="att1"/> | ||
36 | <div id="attachmentDiv1"> | ||
37 | <div class="noquote"> | ||
38 | <div dir="ltr">encrypted message text</div> | ||
39 | </div> | ||
40 | </div> | ||
41 | </td> | ||
42 | </tr> | ||
43 | <tr class="signOkKeyOkH"> | ||
44 | <td dir="ltr">End of signed message</td> | ||
45 | </tr> | ||
46 | </table> | ||
47 | </div> | ||
48 | </div> | ||
49 | </td> | ||
50 | </tr> | ||
51 | <tr class="encrH"> | ||
52 | <td dir="ltr">End of encrypted message</td> | ||
53 | </tr> | ||
54 | </table> | ||
55 | </div> | ||
56 | </div> | ||
57 | </body> | ||
58 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-signed-mailinglist+old.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-signed-mailinglist+old.mbox.html new file mode 100644 index 00000000..e7da94db --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-signed-mailinglist+old.mbox.html | |||
@@ -0,0 +1,97 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <div style="position: relative; word-wrap: break-word"> | ||
9 | <a name="att"/> | ||
10 | <div id="attachmentDiv"> | ||
11 | <div class="noquote"> | ||
12 | <div dir="ltr">Oh man a header :)</div> | ||
13 | <br/> | ||
14 | </div> | ||
15 | </div> | ||
16 | </div> | ||
17 | <div style="position: relative; word-wrap: break-word"> | ||
18 | <a name="att"/> | ||
19 | <div id="attachmentDiv"> | ||
20 | <table cellspacing="1" cellpadding="1" class="rfc822"> | ||
21 | <tr class="rfc822H"> | ||
22 | <td dir="ltr"> | ||
23 | <a href="attachment:e1:1?place=body">Encapsulated message</a> | ||
24 | </td> | ||
25 | </tr> | ||
26 | <tr class="rfc822B"> | ||
27 | <td> | ||
28 | <a name="att1"/> | ||
29 | <div id="attachmentDiv1"> | ||
30 | <table cellspacing="1" cellpadding="1" class="signWarn"> | ||
31 | <tr class="signWarnH"> | ||
32 | <td dir="ltr"> | ||
33 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
34 | <tr> | ||
35 | <td rowspan="2">Message was signed on 4/8/13 9:51 AM with unknown key <a href="kmail:showCertificate#gpg ### OpenPGP ### D6B72EB1A7F1DB43">0xD6B72EB1A7F1DB43</a>.<br/>The validity of the signature cannot be verified.<br/>Status:<i>No public key to verify the signature</i></td> | ||
36 | <td align="right" valign="top" nowrap="nowrap"> | ||
37 | <a href="kmail:hideSignatureDetails">Hide Details</a> | ||
38 | </td> | ||
39 | </tr> | ||
40 | <tr> | ||
41 | <td align="right" valign="bottom" nowrap="nowrap"/> | ||
42 | </tr> | ||
43 | </table> | ||
44 | </td> | ||
45 | </tr> | ||
46 | <tr class="signWarnB"> | ||
47 | <td> | ||
48 | <a name="att1.1"/> | ||
49 | <div id="attachmentDiv1.1"> | ||
50 | <div class="noquote"> | ||
51 | <div dir="ltr">hi..</div> | ||
52 | <br/> | ||
53 | <div dir="ltr">i noticed a new branch when i pulled kde-workspace today (finally!): </div> | ||
54 | <div dir="ltr">activities_optional</div> | ||
55 | <br/> | ||
56 | <div dir="ltr">the lone commit in it was pushed on april 1, so maybe it's an april fools </div> | ||
57 | <div dir="ltr">joke, but if it isn't, it looks like someone is trying to do something that </div> | ||
58 | <div dir="ltr">makes no sense (and has no chance of being merged into master). so if this is </div> | ||
59 | <div dir="ltr">a "for reals" branch, perhaps the motivation behind it can be shared?</div> | ||
60 | <br/> | ||
61 | <div dir="ltr">-- </div> | ||
62 | <div dir="ltr">Aaron J. Seigo</div> | ||
63 | </div> | ||
64 | </div> | ||
65 | </td> | ||
66 | </tr> | ||
67 | <tr class="signWarnH"> | ||
68 | <td dir="ltr">End of signed message</td> | ||
69 | </tr> | ||
70 | </table> | ||
71 | </div> | ||
72 | </td> | ||
73 | </tr> | ||
74 | <tr class="rfc822H"> | ||
75 | <td dir="ltr">End of encapsulated message</td> | ||
76 | </tr> | ||
77 | </table> | ||
78 | </div> | ||
79 | </div> | ||
80 | <div style="position: relative; word-wrap: break-word"> | ||
81 | <a name="att"/> | ||
82 | <div id="attachmentDiv"> | ||
83 | <div class="noquote"> | ||
84 | <div dir="ltr">Plasma-devel mailing list</div> | ||
85 | <div dir="ltr"> | ||
86 | <a href="mailto:Plasma-devel@kde.org">Plasma-devel@kde.org</a> | ||
87 | </div> | ||
88 | <div dir="ltr"> | ||
89 | <a href="https://mail.kde.org/mailman/listinfo/plasma-devel">https://mail.kde.org/mailman/listinfo/plasma-devel</a> | ||
90 | </div> | ||
91 | </div> | ||
92 | </div> | ||
93 | </div> | ||
94 | </div> | ||
95 | </div> | ||
96 | </body> | ||
97 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-signed-mailinglist.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-signed-mailinglist.mbox.html new file mode 100644 index 00000000..f5b20b6d --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-signed-mailinglist.mbox.html | |||
@@ -0,0 +1,68 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <table cellspacing="1" cellpadding="1" class="signWarn"> | ||
11 | <tr class="signWarnH"> | ||
12 | <td dir="ltr"> | ||
13 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
14 | <tr> | ||
15 | <td rowspan="2">Message was signed on 4/8/13 9:51 AM with unknown key <a href="kmail:showCertificate#gpg ### OpenPGP ### D6B72EB1A7F1DB43">0xD6B72EB1A7F1DB43</a>.<br/>The validity of the signature cannot be verified.<br/>Status:<i>No public key to verify the signature</i></td> | ||
16 | <td align="right" valign="top" nowrap="nowrap"> | ||
17 | <a href="kmail:hideSignatureDetails">Hide Details</a> | ||
18 | </td> | ||
19 | </tr> | ||
20 | <tr> | ||
21 | <td align="right" valign="bottom" nowrap="nowrap"/> | ||
22 | </tr> | ||
23 | </table> | ||
24 | </td> | ||
25 | </tr> | ||
26 | <tr class="signWarnB"> | ||
27 | <td> | ||
28 | <a name="att1.1"/> | ||
29 | <div id="attachmentDiv1.1"> | ||
30 | <div class="noquote"> | ||
31 | <div dir="ltr">hi..</div> | ||
32 | <br/> | ||
33 | <div dir="ltr">i noticed a new branch when i pulled kde-workspace today (finally!): </div> | ||
34 | <div dir="ltr">activities_optional</div> | ||
35 | <br/> | ||
36 | <div dir="ltr">the lone commit in it was pushed on april 1, so maybe it's an april fools </div> | ||
37 | <div dir="ltr">joke, but if it isn't, it looks like someone is trying to do something that </div> | ||
38 | <div dir="ltr">makes no sense (and has no chance of being merged into master). so if this is </div> | ||
39 | <div dir="ltr">a "for reals" branch, perhaps the motivation behind it can be shared?</div> | ||
40 | <br/> | ||
41 | <div dir="ltr">-- </div> | ||
42 | <div dir="ltr">Aaron J. Seigo</div> | ||
43 | </div> | ||
44 | </div> | ||
45 | </td> | ||
46 | </tr> | ||
47 | <tr class="signWarnH"> | ||
48 | <td dir="ltr">End of signed message</td> | ||
49 | </tr> | ||
50 | </table> | ||
51 | </div> | ||
52 | <a name="att2"/> | ||
53 | <div id="attachmentDiv2"> | ||
54 | <div class="noquote"> | ||
55 | <div dir="ltr">_______________________________________________</div> | ||
56 | <div dir="ltr">Plasma-devel mailing list</div> | ||
57 | <div dir="ltr"> | ||
58 | <a href="mailto:Plasma-devel@kde.org">Plasma-devel@kde.org</a> | ||
59 | </div> | ||
60 | <div dir="ltr"> | ||
61 | <a href="https://mail.kde.org/mailman/listinfo/plasma-devel">https://mail.kde.org/mailman/listinfo/plasma-devel</a> | ||
62 | </div> | ||
63 | </div> | ||
64 | </div> | ||
65 | </div> | ||
66 | </div> | ||
67 | </body> | ||
68 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-signed-two-attachments.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-signed-two-attachments.mbox.html new file mode 100644 index 00000000..1432aa44 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/details/openpgp-signed-two-attachments.mbox.html | |||
@@ -0,0 +1,74 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
9 | <tr class="signOkKeyOkH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td rowspan="2">Message was signed by <a href="mailto:test@kolab.org">test@kolab.org</a> (Key ID: <a href="kmail:showCertificate#gpg ### OpenPGP ### 8D9860C58F246DE6">0x8D9860C58F246DE6</a>).<br/>The signature is valid and the key is fully trusted.</td> | ||
14 | <td align="right" valign="top" nowrap="nowrap"> | ||
15 | <a href="kmail:hideSignatureDetails">Hide Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | <tr> | ||
19 | <td align="right" valign="bottom" nowrap="nowrap"/> | ||
20 | </tr> | ||
21 | </table> | ||
22 | </td> | ||
23 | </tr> | ||
24 | <tr class="signOkKeyOkB"> | ||
25 | <td> | ||
26 | <a name="att1"/> | ||
27 | <div id="attachmentDiv1"> | ||
28 | <a name="att1.1"/> | ||
29 | <div id="attachmentDiv1.1"> | ||
30 | <div class="noquote"> | ||
31 | <div dir="ltr">this is the main body text</div> | ||
32 | </div> | ||
33 | </div> | ||
34 | <a name="att1.2"/> | ||
35 | <div id="attachmentDiv1.2"> | ||
36 | <table cellspacing="1" class="textAtm"> | ||
37 | <tr class="textAtmH"> | ||
38 | <td dir="ltr">attachment1.txt</td> | ||
39 | </tr> | ||
40 | <tr class="textAtmB"> | ||
41 | <td> | ||
42 | <div class="noquote"> | ||
43 | <div dir="ltr">this is attachment one</div> | ||
44 | </div> | ||
45 | </td> | ||
46 | </tr> | ||
47 | </table> | ||
48 | </div> | ||
49 | <a name="att1.3"/> | ||
50 | <div id="attachmentDiv1.3"> | ||
51 | <table cellspacing="1" class="textAtm"> | ||
52 | <tr class="textAtmH"> | ||
53 | <td dir="ltr">attachment2.txt</td> | ||
54 | </tr> | ||
55 | <tr class="textAtmB"> | ||
56 | <td> | ||
57 | <div class="noquote"> | ||
58 | <div dir="ltr">this is attachment two</div> | ||
59 | </div> | ||
60 | </td> | ||
61 | </tr> | ||
62 | </table> | ||
63 | </div> | ||
64 | </div> | ||
65 | </td> | ||
66 | </tr> | ||
67 | <tr class="signOkKeyOkH"> | ||
68 | <td dir="ltr">End of signed message</td> | ||
69 | </tr> | ||
70 | </table> | ||
71 | </div> | ||
72 | </div> | ||
73 | </body> | ||
74 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/details/signed-forward-openpgp-signed-encrypted.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/details/signed-forward-openpgp-signed-encrypted.mbox.html new file mode 100644 index 00000000..b960f318 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/details/signed-forward-openpgp-signed-encrypted.mbox.html | |||
@@ -0,0 +1,111 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
9 | <tr class="signOkKeyOkH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td rowspan="2">Message was signed by <a href="mailto:test@kolab.org">test@kolab.org</a> (Key ID: <a href="kmail:showCertificate#gpg ### OpenPGP ### 8D9860C58F246DE6">0x8D9860C58F246DE6</a>).<br/>The signature is valid and the key is fully trusted.</td> | ||
14 | <td align="right" valign="top" nowrap="nowrap"> | ||
15 | <a href="kmail:hideSignatureDetails">Hide Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | <tr> | ||
19 | <td align="right" valign="bottom" nowrap="nowrap"/> | ||
20 | </tr> | ||
21 | </table> | ||
22 | </td> | ||
23 | </tr> | ||
24 | <tr class="signOkKeyOkB"> | ||
25 | <td> | ||
26 | <a name="att1"/> | ||
27 | <div id="attachmentDiv1"> | ||
28 | <a name="att1.1"/> | ||
29 | <div id="attachmentDiv1.1"> | ||
30 | <div class="noquote"> | ||
31 | <div dir="ltr">bla bla bla</div> | ||
32 | </div> | ||
33 | </div> | ||
34 | <a name="att1.2"/> | ||
35 | <div id="attachmentDiv1.2"> | ||
36 | <table cellspacing="1" cellpadding="1" class="rfc822"> | ||
37 | <tr class="rfc822H"> | ||
38 | <td dir="ltr"> | ||
39 | <a href="attachment:1.2.1?place=body">Encapsulated message</a> | ||
40 | </td> | ||
41 | </tr> | ||
42 | <tr class="rfc822B"> | ||
43 | <td> | ||
44 | <a name="att1.2.1"/> | ||
45 | <div id="attachmentDiv1.2.1"> | ||
46 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
47 | <tr class="encrH"> | ||
48 | <td dir="ltr">Encrypted message</td> | ||
49 | </tr> | ||
50 | <tr class="encrB"> | ||
51 | <td> | ||
52 | <div style="position: relative; word-wrap: break-word"> | ||
53 | <a name="att"/> | ||
54 | <div id="attachmentDiv"> | ||
55 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
56 | <tr class="signOkKeyOkH"> | ||
57 | <td dir="ltr"> | ||
58 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
59 | <tr> | ||
60 | <td rowspan="2">Message was signed by <a href="mailto:test@kolab.org">test@kolab.org</a> (Key ID: <a href="kmail:showCertificate#gpg ### OpenPGP ### 8D9860C58F246DE6">0x8D9860C58F246DE6</a>).<br/>The signature is valid and the key is fully trusted.</td> | ||
61 | <td align="right" valign="top" nowrap="nowrap"> | ||
62 | <a href="kmail:hideSignatureDetails">Hide Details</a> | ||
63 | </td> | ||
64 | </tr> | ||
65 | <tr> | ||
66 | <td align="right" valign="bottom" nowrap="nowrap"/> | ||
67 | </tr> | ||
68 | </table> | ||
69 | </td> | ||
70 | </tr> | ||
71 | <tr class="signOkKeyOkB"> | ||
72 | <td> | ||
73 | <a name="att1"/> | ||
74 | <div id="attachmentDiv1"> | ||
75 | <div class="noquote"> | ||
76 | <div dir="ltr">encrypted message text</div> | ||
77 | </div> | ||
78 | </div> | ||
79 | </td> | ||
80 | </tr> | ||
81 | <tr class="signOkKeyOkH"> | ||
82 | <td dir="ltr">End of signed message</td> | ||
83 | </tr> | ||
84 | </table> | ||
85 | </div> | ||
86 | </div> | ||
87 | </td> | ||
88 | </tr> | ||
89 | <tr class="encrH"> | ||
90 | <td dir="ltr">End of encrypted message</td> | ||
91 | </tr> | ||
92 | </table> | ||
93 | </div> | ||
94 | </td> | ||
95 | </tr> | ||
96 | <tr class="rfc822H"> | ||
97 | <td dir="ltr">End of encapsulated message</td> | ||
98 | </tr> | ||
99 | </table> | ||
100 | </div> | ||
101 | </div> | ||
102 | </td> | ||
103 | </tr> | ||
104 | <tr class="signOkKeyOkH"> | ||
105 | <td dir="ltr">End of signed message</td> | ||
106 | </tr> | ||
107 | </table> | ||
108 | </div> | ||
109 | </div> | ||
110 | </body> | ||
111 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/details/smime-opaque-enc+sign.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/details/smime-opaque-enc+sign.mbox.html new file mode 100644 index 00000000..d6345a7c --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/details/smime-opaque-enc+sign.mbox.html | |||
@@ -0,0 +1,60 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
18 | <tr class="signOkKeyOkH"> | ||
19 | <td dir="ltr"> | ||
20 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
21 | <tr> | ||
22 | <td rowspan="2">Message was signed by <a href="mailto:test%40example.com">test@example.com</a> on 1/10/13 3:48 PM with key <a href="kmail:showCertificate#gpgsm ### SMIME ### 4CC658E3212B49DC">0x4CC658E3212B49DC</a><br/> <br/>Status:<i>Good signature.</i><br/> <br/><u>Warning:</u> Sender's mail address is not stored in the <a href="kmail:showCertificate#gpgsm ### SMIME ### 4CC658E3212B49DC">certificate</a> used for signing.<br/>sender: <br/>stored: test@example.com</td> | ||
23 | <td align="right" valign="top" nowrap="nowrap"> | ||
24 | <a href="kmail:hideSignatureDetails">Hide Details</a> | ||
25 | </td> | ||
26 | </tr> | ||
27 | <tr> | ||
28 | <td align="right" valign="bottom" nowrap="nowrap"/> | ||
29 | </tr> | ||
30 | </table> | ||
31 | </td> | ||
32 | </tr> | ||
33 | <tr class="signOkKeyOkB"> | ||
34 | <td> | ||
35 | <div style="position: relative; word-wrap: break-word"> | ||
36 | <a name="att"/> | ||
37 | <div id="attachmentDiv"> | ||
38 | <div class="noquote"> | ||
39 | <div dir="ltr">Encrypted and signed mail.</div> | ||
40 | </div> | ||
41 | </div> | ||
42 | </div> | ||
43 | </td> | ||
44 | </tr> | ||
45 | <tr class="signOkKeyOkH"> | ||
46 | <td dir="ltr">End of signed message</td> | ||
47 | </tr> | ||
48 | </table> | ||
49 | </div> | ||
50 | </div> | ||
51 | </td> | ||
52 | </tr> | ||
53 | <tr class="encrH"> | ||
54 | <td dir="ltr">End of encrypted message</td> | ||
55 | </tr> | ||
56 | </table> | ||
57 | </div> | ||
58 | </div> | ||
59 | </body> | ||
60 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/details/smime-opaque-sign.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/details/smime-opaque-sign.mbox.html new file mode 100644 index 00000000..248b93ff --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/details/smime-opaque-sign.mbox.html | |||
@@ -0,0 +1,43 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
9 | <tr class="signOkKeyOkH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td rowspan="2">Message was signed by <a href="mailto:test%40example.com">test@example.com</a> on 1/10/13 3:48 PM with key <a href="kmail:showCertificate#gpgsm ### SMIME ### 4CC658E3212B49DC">0x4CC658E3212B49DC</a><br/> <br/>Status:<i>Good signature.</i></td> | ||
14 | <td align="right" valign="top" nowrap="nowrap"> | ||
15 | <a href="kmail:hideSignatureDetails">Hide Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | <tr> | ||
19 | <td align="right" valign="bottom" nowrap="nowrap"/> | ||
20 | </tr> | ||
21 | </table> | ||
22 | </td> | ||
23 | </tr> | ||
24 | <tr class="signOkKeyOkB"> | ||
25 | <td> | ||
26 | <div style="position: relative; word-wrap: break-word"> | ||
27 | <a name="att"/> | ||
28 | <div id="attachmentDiv"> | ||
29 | <div class="noquote"> | ||
30 | <div dir="ltr">A simple signed only test.</div> | ||
31 | </div> | ||
32 | </div> | ||
33 | </div> | ||
34 | </td> | ||
35 | </tr> | ||
36 | <tr class="signOkKeyOkH"> | ||
37 | <td dir="ltr">End of signed message</td> | ||
38 | </tr> | ||
39 | </table> | ||
40 | </div> | ||
41 | </div> | ||
42 | </body> | ||
43 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/details/smime-signed-encrypted.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/details/smime-signed-encrypted.mbox.html new file mode 100644 index 00000000..6e811632 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/details/smime-signed-encrypted.mbox.html | |||
@@ -0,0 +1,58 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
18 | <tr class="signOkKeyOkH"> | ||
19 | <td dir="ltr"> | ||
20 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
21 | <tr> | ||
22 | <td rowspan="2">Message was signed by <a href="mailto:test%40example.com">test@example.com</a> on 9/8/10 3:51 PM with key <a href="kmail:showCertificate#gpgsm ### SMIME ### 4CC658E3212B49DC">0x4CC658E3212B49DC</a><br/> <br/>Status:<i>Good signature.</i><br/> <br/><u>Warning:</u> Sender's mail address is not stored in the <a href="kmail:showCertificate#gpgsm ### SMIME ### 4CC658E3212B49DC">certificate</a> used for signing.<br/>sender: <br/>stored: test@example.com</td> | ||
23 | <td align="right" valign="top" nowrap="nowrap"> | ||
24 | <a href="kmail:hideSignatureDetails">Hide Details</a> | ||
25 | </td> | ||
26 | </tr> | ||
27 | <tr> | ||
28 | <td align="right" valign="bottom" nowrap="nowrap"/> | ||
29 | </tr> | ||
30 | </table> | ||
31 | </td> | ||
32 | </tr> | ||
33 | <tr class="signOkKeyOkB"> | ||
34 | <td> | ||
35 | <a name="att1"/> | ||
36 | <div id="attachmentDiv1"> | ||
37 | <div class="noquote"> | ||
38 | <div dir="ltr">encrypted message text</div> | ||
39 | </div> | ||
40 | </div> | ||
41 | </td> | ||
42 | </tr> | ||
43 | <tr class="signOkKeyOkH"> | ||
44 | <td dir="ltr">End of signed message</td> | ||
45 | </tr> | ||
46 | </table> | ||
47 | </div> | ||
48 | </div> | ||
49 | </td> | ||
50 | </tr> | ||
51 | <tr class="encrH"> | ||
52 | <td dir="ltr">End of encrypted message</td> | ||
53 | </tr> | ||
54 | </table> | ||
55 | </div> | ||
56 | </div> | ||
57 | </body> | ||
58 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/encapsulated-with-attachment.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/encapsulated-with-attachment.mbox new file mode 100644 index 00000000..885b9d1b --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/encapsulated-with-attachment.mbox | |||
@@ -0,0 +1,53 @@ | |||
1 | From: Thomas McGuire <dontspamme@gmx.net> | ||
2 | Subject: Fwd: Test with attachment | ||
3 | Date: Wed, 5 Aug 2009 10:58:27 +0200 | ||
4 | MIME-Version: 1.0 | ||
5 | Content-Type: Multipart/Mixed; | ||
6 | boundary="Boundary-00=_zmUeKB+A8hGfCVZ" | ||
7 | |||
8 | |||
9 | --Boundary-00=_zmUeKB+A8hGfCVZ | ||
10 | Content-Type: text/plain; | ||
11 | charset="iso-8859-15" | ||
12 | Content-Transfer-Encoding: 7bit | ||
13 | Content-Disposition: inline | ||
14 | |||
15 | This is the first encapsulating message. | ||
16 | |||
17 | --Boundary-00=_zmUeKB+A8hGfCVZ | ||
18 | Content-Type: message/rfc822; | ||
19 | name="forwarded message" | ||
20 | Content-Transfer-Encoding: 7bit | ||
21 | Content-Description: Thomas McGuire <dontspamme@gmx.net>: Test with attachment | ||
22 | Content-Disposition: inline | ||
23 | |||
24 | From: Thomas McGuire <dontspamme@gmx.net> | ||
25 | Subject: Test with attachment | ||
26 | Date: Wed, 5 Aug 2009 10:57:58 +0200 | ||
27 | MIME-Version: 1.0 | ||
28 | Content-Type: Multipart/Mixed; | ||
29 | boundary="Boundary-00=_WmUeKQpGb0DHyx1" | ||
30 | |||
31 | --Boundary-00=_WmUeKQpGb0DHyx1 | ||
32 | Content-Type: text/plain; | ||
33 | charset="us-ascii" | ||
34 | Content-Transfer-Encoding: 7bit | ||
35 | Content-Disposition: inline | ||
36 | |||
37 | |||
38 | |||
39 | |||
40 | This is the second encapsulated message. | ||
41 | |||
42 | --Boundary-00=_WmUeKQpGb0DHyx1 | ||
43 | Content-Type: text/plain; | ||
44 | name="attachment.txt" | ||
45 | Content-Transfer-Encoding: 7bit | ||
46 | Content-Disposition: attachment; | ||
47 | filename="attachment.txt" | ||
48 | |||
49 | This is an attachment. | ||
50 | |||
51 | --Boundary-00=_WmUeKQpGb0DHyx1-- | ||
52 | |||
53 | --Boundary-00=_zmUeKB+A8hGfCVZ-- | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/encapsulated-with-attachment.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/encapsulated-with-attachment.mbox.html new file mode 100644 index 00000000..aa3d1090 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/encapsulated-with-attachment.mbox.html | |||
@@ -0,0 +1,51 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <div class="noquote"> | ||
11 | <div dir="ltr">This is the first encapsulating message.</div> | ||
12 | </div> | ||
13 | </div> | ||
14 | <a name="att2"/> | ||
15 | <div id="attachmentDiv2"> | ||
16 | <table cellspacing="1" cellpadding="1" class="rfc822"> | ||
17 | <tr class="rfc822H"> | ||
18 | <td dir="ltr"> | ||
19 | <a href="attachment:2.1?place=body">Encapsulated message</a> | ||
20 | </td> | ||
21 | </tr> | ||
22 | <tr class="rfc822B"> | ||
23 | <td> | ||
24 | <a name="att2.1"/> | ||
25 | <div id="attachmentDiv2.1"> | ||
26 | <a name="att2.1.1"/> | ||
27 | <div id="attachmentDiv2.1.1"> | ||
28 | <div class="noquote"> | ||
29 | <div dir="ltr">This is the second encapsulated message.</div> | ||
30 | </div> | ||
31 | </div> | ||
32 | <a name="att2.1.2"/> | ||
33 | <div id="attachmentDiv2.1.2"> | ||
34 | <hr/> | ||
35 | <div> | ||
36 | <a href="attachment:2.1.2?place=body"><img align="center" height="48" width="48" src="file:text-plain.svg" border="0" style="max-width: 100%" alt=""/>attachment.txt</a> | ||
37 | </div> | ||
38 | <div/> | ||
39 | </div> | ||
40 | </div> | ||
41 | </td> | ||
42 | </tr> | ||
43 | <tr class="rfc822H"> | ||
44 | <td dir="ltr">End of encapsulated message</td> | ||
45 | </tr> | ||
46 | </table> | ||
47 | </div> | ||
48 | </div> | ||
49 | </div> | ||
50 | </body> | ||
51 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/encapsulated-with-attachment.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/encapsulated-with-attachment.mbox.tree new file mode 100644 index 00000000..050414a2 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/encapsulated-with-attachment.mbox.tree | |||
@@ -0,0 +1,10 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::MimeMessagePart | ||
3 | * MimeTreeParser::TextMessagePart | ||
4 | * MimeTreeParser::MessagePart | ||
5 | * MimeTreeParser::EncapsulatedRfc822MessagePart | ||
6 | * MimeTreeParser::MimeMessagePart | ||
7 | * MimeTreeParser::AttachmentMessagePart | ||
8 | * MimeTreeParser::MessagePart | ||
9 | * MimeTreeParser::AttachmentMessagePart | ||
10 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/forward-openpgp-signed-encrypted.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/forward-openpgp-signed-encrypted.mbox new file mode 100644 index 00000000..1c166940 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/forward-openpgp-signed-encrypted.mbox | |||
@@ -0,0 +1,69 @@ | |||
1 | From test@kolab.org Wed, 08 Sep 2010 17:52:37 +0200 | ||
2 | From: OpenPGP Test <test@kolab.org> | ||
3 | Subject: Fwd: OpenPGP signed and encrypted | ||
4 | Date: Wed, 08 Sep 2010 17:52:37 +0200 | ||
5 | User-Agent: KMail/4.6 pre (Linux/2.6.34-rc2-2-default; KDE/4.5.60; x86_64; ; ) | ||
6 | MIME-Version: 1.0 | ||
7 | Content-Type: multipart/mixed; boundary="nextPart2148910.9CGjQOYhYJ" | ||
8 | Content-Transfer-Encoding: 7Bit | ||
9 | |||
10 | |||
11 | --nextPart2148910.9CGjQOYhYJ | ||
12 | Content-Transfer-Encoding: 7Bit | ||
13 | Content-Type: text/plain; charset="us-ascii" | ||
14 | |||
15 | bla bla bla | ||
16 | --nextPart2148910.9CGjQOYhYJ | ||
17 | Content-Type: message/rfc822 | ||
18 | Content-Disposition: inline; filename="forwarded message" | ||
19 | Content-Description: OpenPGP Test <test@kolab.org>: OpenPGP signed and encrypted | ||
20 | |||
21 | From: OpenPGP Test <test@kolab.org> | ||
22 | To: test@kolab.org | ||
23 | Subject: OpenPGP signed and encrypted | ||
24 | Date: Tue, 07 Sep 2010 18:08:44 +0200 | ||
25 | User-Agent: KMail/4.6 pre (Linux/2.6.34-rc2-2-default; KDE/4.5.60; x86_64; ; ) | ||
26 | MIME-Version: 1.0 | ||
27 | Content-Type: multipart/encrypted; boundary="nextPart25203163.0xtB501Z4V"; protocol="application/pgp-encrypted" | ||
28 | Content-Transfer-Encoding: 7Bit | ||
29 | |||
30 | |||
31 | --nextPart25203163.0xtB501Z4V | ||
32 | Content-Type: application/pgp-encrypted | ||
33 | Content-Disposition: attachment | ||
34 | |||
35 | Version: 1 | ||
36 | --nextPart25203163.0xtB501Z4V | ||
37 | Content-Type: application/octet-stream | ||
38 | Content-Disposition: inline; filename="msg.asc" | ||
39 | |||
40 | -----BEGIN PGP MESSAGE----- | ||
41 | Version: GnuPG v2.0.15 (GNU/Linux) | ||
42 | |||
43 | hQEMAwzOQ1qnzNo7AQf7BFYWaGiCTGtXY59bSh3LCXNnWZejblYALxIUNXOFEXbm | ||
44 | y/YA95FmQsy3U5HRCAJV/DY1PEaJz1RTm9bcdIpDC3Ab2YzSwmOwV5fcoUOB2df4 | ||
45 | KjX19Q+2F3JxpPQ0N1gHf4dKfIu19LH+CKeFzUN13aJs5J4A5wlj+NjJikxzmxDS | ||
46 | kDtNYndynPmo9DJQcsUFw3gpvx5HaHvx1cT4mAB2M5cd2l+vN1jYbaWb0x5Zq41z | ||
47 | mRNI89aPieC3rcM2289m68fGloNbYvi8mZJu5RrI4Tbi/D7Rjm1y63lHgVV6AN88 | ||
48 | XAzRiedOeF99LoTBulrJdtT8AAgCs8nCetcWpIffdtLpAZiZkzHmYOU7nqGxqpRk | ||
49 | OVeUTrCn9DW2SMmHjaP4IiKnMvzEycu5F4a72+V1LeMIhMSjTRTq+ZE2PTaqH59z | ||
50 | QsMn7Nb6GlOICbTptRKNNtyJKO7xXlpT7YtvNKnCyEOkH2XrYH7GvpYCiuQ0/o+7 | ||
51 | SxV436ZejiYIg6DQDXJCoa2DXimGp0C10Jh0HwX0BixpoNtwEjkGRYcX6P/JzkH0 | ||
52 | oBood4Ly+Tiu6iVDisrK3AVGYpIzCrKkE9qULTw4R/jFKR2tcCqGb7Fxtk2LV7Md | ||
53 | 3S+DyOKrvKQ5GNwbp9OE97pwk+Lr1JS3UAvj5f6BR+1PVNcC0i0wWkgwDjPh1eGD | ||
54 | enMQmorE6+N0uHtH2F4fOxo/TbbA3+zhI25kVW3bO03xyUl/cmQZeb52nvfOvtOo | ||
55 | gSb2j6bPkzljDMPEzrtJjbFtGHJbPfUQYJgZv9OE2EQIqpg6goIw279alBq6GLIX | ||
56 | pkO+dRmztzjcDyhcLxMuQ4cTizel/0J/bU7U6lvwHSyZVbT4Ev+opG5K70Hbqbwr | ||
57 | NZcgdWXbSeesxGM/oQaMeSurOevxVl+/zrTVAek61aRRd1baAYqgi2pf2V7y4oK3 | ||
58 | qkdxzmoFpRdNlfrQW65NZWnHOi9rC9XxANIwnVn3kRcDf+t2K4PrFluI157lXM/o | ||
59 | wX91j88fazysbJlQ6TjsApO9ETiPOFEBqouxCTtCZzlUgyVG8jpIjdHWFnagHeXH | ||
60 | +lXNdYjxnTWTjTxMOZC9ySMpXkjWdFI1ecxVwu6Ik6RX51rvBJAAXWP75yUjPKJ4 | ||
61 | rRi5oQl/VLl0QznO7lvgMPtUwgDVNWO/r7Kn9B387h9fAJZ/kWFAEDW2yhAzABqO | ||
62 | rCNKDzBPgfAwCnikCpMoCbOL7SU8BdbzQHD8/Lkv4m0pzliHQ/KkGF710koBzTmF | ||
63 | N7+wk9pwIuvcrEBQj567 | ||
64 | =GV0c | ||
65 | -----END PGP MESSAGE----- | ||
66 | |||
67 | --nextPart25203163.0xtB501Z4V-- | ||
68 | |||
69 | --nextPart2148910.9CGjQOYhYJ-- | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/forward-openpgp-signed-encrypted.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/forward-openpgp-signed-encrypted.mbox.html new file mode 100644 index 00000000..7632ec39 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/forward-openpgp-signed-encrypted.mbox.html | |||
@@ -0,0 +1,81 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <div class="noquote"> | ||
11 | <div dir="ltr">bla bla bla</div> | ||
12 | </div> | ||
13 | </div> | ||
14 | <a name="att2"/> | ||
15 | <div id="attachmentDiv2"> | ||
16 | <table cellspacing="1" cellpadding="1" class="rfc822"> | ||
17 | <tr class="rfc822H"> | ||
18 | <td dir="ltr"> | ||
19 | <a href="attachment:2.1?place=body">Encapsulated message</a> | ||
20 | </td> | ||
21 | </tr> | ||
22 | <tr class="rfc822B"> | ||
23 | <td> | ||
24 | <a name="att2.1"/> | ||
25 | <div id="attachmentDiv2.1"> | ||
26 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
27 | <tr class="encrH"> | ||
28 | <td dir="ltr">Encrypted message</td> | ||
29 | </tr> | ||
30 | <tr class="encrB"> | ||
31 | <td> | ||
32 | <div style="position: relative; word-wrap: break-word"> | ||
33 | <a name="att"/> | ||
34 | <div id="attachmentDiv"> | ||
35 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
36 | <tr class="signOkKeyOkH"> | ||
37 | <td dir="ltr"> | ||
38 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
39 | <tr> | ||
40 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
41 | <td align="right"> | ||
42 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
43 | </td> | ||
44 | </tr> | ||
45 | </table> | ||
46 | </td> | ||
47 | </tr> | ||
48 | <tr class="signOkKeyOkB"> | ||
49 | <td> | ||
50 | <a name="att1"/> | ||
51 | <div id="attachmentDiv1"> | ||
52 | <div class="noquote"> | ||
53 | <div dir="ltr">encrypted message text</div> | ||
54 | </div> | ||
55 | </div> | ||
56 | </td> | ||
57 | </tr> | ||
58 | <tr class="signOkKeyOkH"> | ||
59 | <td dir="ltr">End of signed message</td> | ||
60 | </tr> | ||
61 | </table> | ||
62 | </div> | ||
63 | </div> | ||
64 | </td> | ||
65 | </tr> | ||
66 | <tr class="encrH"> | ||
67 | <td dir="ltr">End of encrypted message</td> | ||
68 | </tr> | ||
69 | </table> | ||
70 | </div> | ||
71 | </td> | ||
72 | </tr> | ||
73 | <tr class="rfc822H"> | ||
74 | <td dir="ltr">End of encapsulated message</td> | ||
75 | </tr> | ||
76 | </table> | ||
77 | </div> | ||
78 | </div> | ||
79 | </div> | ||
80 | </body> | ||
81 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/forward-openpgp-signed-encrypted.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/forward-openpgp-signed-encrypted.mbox.tree new file mode 100644 index 00000000..324156db --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/forward-openpgp-signed-encrypted.mbox.tree | |||
@@ -0,0 +1,9 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::MimeMessagePart | ||
3 | * MimeTreeParser::TextMessagePart | ||
4 | * MimeTreeParser::MessagePart | ||
5 | * MimeTreeParser::EncapsulatedRfc822MessagePart | ||
6 | * MimeTreeParser::EncryptedMessagePart | ||
7 | * MimeTreeParser::SignedMessagePart | ||
8 | * MimeTreeParser::TextMessagePart | ||
9 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox.html new file mode 100644 index 00000000..73c4d2d7 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox.html | |||
@@ -0,0 +1,61 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
11 | <tr class="encrH"> | ||
12 | <td dir="ltr">Encrypted message</td> | ||
13 | </tr> | ||
14 | <tr class="encrB"> | ||
15 | <td> | ||
16 | <div style="position: relative; word-wrap: break-word"> | ||
17 | <a name="att"/> | ||
18 | <div id="attachmentDiv"> | ||
19 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
20 | <tr class="signOkKeyOkH"> | ||
21 | <td dir="ltr"> | ||
22 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
23 | <tr> | ||
24 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
25 | <td align="right"> | ||
26 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
27 | </td> | ||
28 | </tr> | ||
29 | </table> | ||
30 | </td> | ||
31 | </tr> | ||
32 | <tr class="signOkKeyOkB"> | ||
33 | <td> | ||
34 | <a name="att1"/> | ||
35 | <div id="attachmentDiv1"> | ||
36 | <a name="att1.1"/> | ||
37 | <div id="attachmentDiv1.1"> | ||
38 | <div class="noquote"> | ||
39 | <div dir="ltr">test text</div> | ||
40 | </div> | ||
41 | </div> | ||
42 | </div> | ||
43 | </td> | ||
44 | </tr> | ||
45 | <tr class="signOkKeyOkH"> | ||
46 | <td dir="ltr">End of signed message</td> | ||
47 | </tr> | ||
48 | </table> | ||
49 | </div> | ||
50 | </div> | ||
51 | </td> | ||
52 | </tr> | ||
53 | <tr class="encrH"> | ||
54 | <td dir="ltr">End of encrypted message</td> | ||
55 | </tr> | ||
56 | </table> | ||
57 | </div> | ||
58 | </div> | ||
59 | </div> | ||
60 | </body> | ||
61 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-encrypted-attachment.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-encrypted-attachment.mbox.html new file mode 100644 index 00000000..d5e4550e --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-encrypted-attachment.mbox.html | |||
@@ -0,0 +1,58 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
18 | <tr class="signOkKeyOkH"> | ||
19 | <td dir="ltr"> | ||
20 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
21 | <tr> | ||
22 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
23 | <td align="right"> | ||
24 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
25 | </td> | ||
26 | </tr> | ||
27 | </table> | ||
28 | </td> | ||
29 | </tr> | ||
30 | <tr class="signOkKeyOkB"> | ||
31 | <td> | ||
32 | <a name="att1"/> | ||
33 | <div id="attachmentDiv1"> | ||
34 | <a name="att1.1"/> | ||
35 | <div id="attachmentDiv1.1"> | ||
36 | <div class="noquote"> | ||
37 | <div dir="ltr">test text</div> | ||
38 | </div> | ||
39 | </div> | ||
40 | </div> | ||
41 | </td> | ||
42 | </tr> | ||
43 | <tr class="signOkKeyOkH"> | ||
44 | <td dir="ltr">End of signed message</td> | ||
45 | </tr> | ||
46 | </table> | ||
47 | </div> | ||
48 | </div> | ||
49 | </td> | ||
50 | </tr> | ||
51 | <tr class="encrH"> | ||
52 | <td dir="ltr">End of encrypted message</td> | ||
53 | </tr> | ||
54 | </table> | ||
55 | </div> | ||
56 | </div> | ||
57 | </body> | ||
58 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-encrypted-non-encrypted-attachment.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-encrypted-non-encrypted-attachment.mbox.html new file mode 100644 index 00000000..73c4d2d7 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-encrypted-non-encrypted-attachment.mbox.html | |||
@@ -0,0 +1,61 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
11 | <tr class="encrH"> | ||
12 | <td dir="ltr">Encrypted message</td> | ||
13 | </tr> | ||
14 | <tr class="encrB"> | ||
15 | <td> | ||
16 | <div style="position: relative; word-wrap: break-word"> | ||
17 | <a name="att"/> | ||
18 | <div id="attachmentDiv"> | ||
19 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
20 | <tr class="signOkKeyOkH"> | ||
21 | <td dir="ltr"> | ||
22 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
23 | <tr> | ||
24 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
25 | <td align="right"> | ||
26 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
27 | </td> | ||
28 | </tr> | ||
29 | </table> | ||
30 | </td> | ||
31 | </tr> | ||
32 | <tr class="signOkKeyOkB"> | ||
33 | <td> | ||
34 | <a name="att1"/> | ||
35 | <div id="attachmentDiv1"> | ||
36 | <a name="att1.1"/> | ||
37 | <div id="attachmentDiv1.1"> | ||
38 | <div class="noquote"> | ||
39 | <div dir="ltr">test text</div> | ||
40 | </div> | ||
41 | </div> | ||
42 | </div> | ||
43 | </td> | ||
44 | </tr> | ||
45 | <tr class="signOkKeyOkH"> | ||
46 | <td dir="ltr">End of signed message</td> | ||
47 | </tr> | ||
48 | </table> | ||
49 | </div> | ||
50 | </div> | ||
51 | </td> | ||
52 | </tr> | ||
53 | <tr class="encrH"> | ||
54 | <td dir="ltr">End of encrypted message</td> | ||
55 | </tr> | ||
56 | </table> | ||
57 | </div> | ||
58 | </div> | ||
59 | </div> | ||
60 | </body> | ||
61 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-encrypted-partially-signed-attachments.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-encrypted-partially-signed-attachments.mbox.html new file mode 100644 index 00000000..ebad7354 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-encrypted-partially-signed-attachments.mbox.html | |||
@@ -0,0 +1,84 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
11 | <tr class="encrH"> | ||
12 | <td dir="ltr">Encrypted message</td> | ||
13 | </tr> | ||
14 | <tr class="encrB"> | ||
15 | <td> | ||
16 | <div style="position: relative; word-wrap: break-word"> | ||
17 | <a name="att"/> | ||
18 | <div id="attachmentDiv"> | ||
19 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
20 | <tr class="signOkKeyOkH"> | ||
21 | <td dir="ltr"> | ||
22 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
23 | <tr> | ||
24 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
25 | <td align="right"> | ||
26 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
27 | </td> | ||
28 | </tr> | ||
29 | </table> | ||
30 | </td> | ||
31 | </tr> | ||
32 | <tr class="signOkKeyOkB"> | ||
33 | <td> | ||
34 | <a name="att1"/> | ||
35 | <div id="attachmentDiv1"> | ||
36 | <a name="att1.1"/> | ||
37 | <div id="attachmentDiv1.1"> | ||
38 | <div class="noquote"> | ||
39 | <div dir="ltr">This is the main body.</div> | ||
40 | </div> | ||
41 | </div> | ||
42 | </div> | ||
43 | </td> | ||
44 | </tr> | ||
45 | <tr class="signOkKeyOkH"> | ||
46 | <td dir="ltr">End of signed message</td> | ||
47 | </tr> | ||
48 | </table> | ||
49 | </div> | ||
50 | </div> | ||
51 | </td> | ||
52 | </tr> | ||
53 | <tr class="encrH"> | ||
54 | <td dir="ltr">End of encrypted message</td> | ||
55 | </tr> | ||
56 | </table> | ||
57 | </div> | ||
58 | <a name="att2"/> | ||
59 | <div id="attachmentDiv2"> | ||
60 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
61 | <tr class="encrH"> | ||
62 | <td dir="ltr">Encrypted message</td> | ||
63 | </tr> | ||
64 | <tr class="encrB"> | ||
65 | <td> | ||
66 | <div style="position: relative; word-wrap: break-word"> | ||
67 | <a name="att"/> | ||
68 | <div id="attachmentDiv"> | ||
69 | <div class="noquote"> | ||
70 | <div dir="ltr">This is an unsigned attachment.</div> | ||
71 | </div> | ||
72 | </div> | ||
73 | </div> | ||
74 | </td> | ||
75 | </tr> | ||
76 | <tr class="encrH"> | ||
77 | <td dir="ltr">End of encrypted message</td> | ||
78 | </tr> | ||
79 | </table> | ||
80 | </div> | ||
81 | </div> | ||
82 | </div> | ||
83 | </body> | ||
84 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-encrypted-two-attachments.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-encrypted-two-attachments.mbox.html new file mode 100644 index 00000000..4cdeaa63 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-encrypted-two-attachments.mbox.html | |||
@@ -0,0 +1,34 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <a name="att1"/> | ||
18 | <div id="attachmentDiv1"> | ||
19 | <div class="noquote"> | ||
20 | <div dir="ltr">this is the main body part</div> | ||
21 | </div> | ||
22 | </div> | ||
23 | </div> | ||
24 | </div> | ||
25 | </td> | ||
26 | </tr> | ||
27 | <tr class="encrH"> | ||
28 | <td dir="ltr">End of encrypted message</td> | ||
29 | </tr> | ||
30 | </table> | ||
31 | </div> | ||
32 | </div> | ||
33 | </body> | ||
34 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-signed-apple.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-signed-apple.mbox.html new file mode 100644 index 00000000..330b02a1 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-signed-apple.mbox.html | |||
@@ -0,0 +1,50 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signWarn"> | ||
9 | <tr class="signWarnH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td>Not enough information to check signature validity.</td> | ||
14 | <td align="right"> | ||
15 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | </table> | ||
19 | </td> | ||
20 | </tr> | ||
21 | <tr class="signWarnB"> | ||
22 | <td> | ||
23 | <a name="att1"/> | ||
24 | <div id="attachmentDiv1"> | ||
25 | <a name="att1.2"/> | ||
26 | <div id="attachmentDiv1.2"> | ||
27 | <a name="att1.2.1"/> | ||
28 | <div id="attachmentDiv1.2.1"> | ||
29 | <div style="position: relative"> | ||
30 | <div class="">pre attachment</div> | ||
31 | </div> | ||
32 | </div> | ||
33 | <a name="att1.2.3"/> | ||
34 | <div id="attachmentDiv1.2.3"> | ||
35 | <div style="position: relative"> | ||
36 | <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">Some <span style=" font-weight:600;">HTML</span> text</p> | ||
37 | </div> | ||
38 | </div> | ||
39 | </div> | ||
40 | </div> | ||
41 | </td> | ||
42 | </tr> | ||
43 | <tr class="signWarnH"> | ||
44 | <td dir="ltr">End of signed message</td> | ||
45 | </tr> | ||
46 | </table> | ||
47 | </div> | ||
48 | </div> | ||
49 | </body> | ||
50 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-signed-encrypted-two-attachments.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-signed-encrypted-two-attachments.mbox.html new file mode 100644 index 00000000..83b7a66c --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-signed-encrypted-two-attachments.mbox.html | |||
@@ -0,0 +1,58 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
18 | <tr class="signOkKeyOkH"> | ||
19 | <td dir="ltr"> | ||
20 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
21 | <tr> | ||
22 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
23 | <td align="right"> | ||
24 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
25 | </td> | ||
26 | </tr> | ||
27 | </table> | ||
28 | </td> | ||
29 | </tr> | ||
30 | <tr class="signOkKeyOkB"> | ||
31 | <td> | ||
32 | <a name="att1"/> | ||
33 | <div id="attachmentDiv1"> | ||
34 | <a name="att1.1"/> | ||
35 | <div id="attachmentDiv1.1"> | ||
36 | <div class="noquote"> | ||
37 | <div dir="ltr">this is the main body</div> | ||
38 | </div> | ||
39 | </div> | ||
40 | </div> | ||
41 | </td> | ||
42 | </tr> | ||
43 | <tr class="signOkKeyOkH"> | ||
44 | <td dir="ltr">End of signed message</td> | ||
45 | </tr> | ||
46 | </table> | ||
47 | </div> | ||
48 | </div> | ||
49 | </td> | ||
50 | </tr> | ||
51 | <tr class="encrH"> | ||
52 | <td dir="ltr">End of encrypted message</td> | ||
53 | </tr> | ||
54 | </table> | ||
55 | </div> | ||
56 | </div> | ||
57 | </body> | ||
58 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-signed-mailinglist+additional-children.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-signed-mailinglist+additional-children.mbox.html new file mode 100644 index 00000000..25b1ad04 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-signed-mailinglist+additional-children.mbox.html | |||
@@ -0,0 +1,52 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <a name="att1.1"/> | ||
11 | <div id="attachmentDiv1.1"> | ||
12 | <div class="noquote"> | ||
13 | <div dir="ltr">hi..</div> | ||
14 | <br/> | ||
15 | <div dir="ltr">i noticed a new branch when i pulled kde-workspace today (finally!): </div> | ||
16 | <div dir="ltr">activities_optional</div> | ||
17 | <br/> | ||
18 | <div dir="ltr">the lone commit in it was pushed on april 1, so maybe it's an april fools </div> | ||
19 | <div dir="ltr">joke, but if it isn't, it looks like someone is trying to do something that </div> | ||
20 | <div dir="ltr">makes no sense (and has no chance of being merged into master). so if this is </div> | ||
21 | <div dir="ltr">a "for reals" branch, perhaps the motivation behind it can be shared?</div> | ||
22 | <br/> | ||
23 | <div dir="ltr">-- </div> | ||
24 | <div dir="ltr">Aaron J. Seigo</div> | ||
25 | </div> | ||
26 | </div> | ||
27 | <a name="att1.2"/> | ||
28 | <div id="attachmentDiv1.2"> | ||
29 | <hr/> | ||
30 | <div> | ||
31 | <a href="attachment:1.2?place=body"><img align="center" height="48" width="48" src="file:application-pgp-signature.svg" border="0" style="max-width: 100%" alt=""/>signature.asc</a> | ||
32 | </div> | ||
33 | <div>This is a digitally signed message part.</div> | ||
34 | </div> | ||
35 | </div> | ||
36 | <a name="att2"/> | ||
37 | <div id="attachmentDiv2"> | ||
38 | <div class="noquote"> | ||
39 | <div dir="ltr">_______________________________________________</div> | ||
40 | <div dir="ltr">Plasma-devel mailing list</div> | ||
41 | <div dir="ltr"> | ||
42 | <a href="mailto:Plasma-devel@kde.org">Plasma-devel@kde.org</a> | ||
43 | </div> | ||
44 | <div dir="ltr"> | ||
45 | <a href="https://mail.kde.org/mailman/listinfo/plasma-devel">https://mail.kde.org/mailman/listinfo/plasma-devel</a> | ||
46 | </div> | ||
47 | </div> | ||
48 | </div> | ||
49 | </div> | ||
50 | </div> | ||
51 | </body> | ||
52 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-signed-no-protocol.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-signed-no-protocol.mbox.html new file mode 100644 index 00000000..bdac52b6 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-signed-no-protocol.mbox.html | |||
@@ -0,0 +1,28 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <div class="noquote"> | ||
11 | <div dir="ltr">hi..</div> | ||
12 | <br/> | ||
13 | <div dir="ltr">i noticed a new branch when i pulled kde-workspace today (finally!): </div> | ||
14 | <div dir="ltr">activities_optional</div> | ||
15 | <br/> | ||
16 | <div dir="ltr">the lone commit in it was pushed on april 1, so maybe it's an april fools </div> | ||
17 | <div dir="ltr">joke, but if it isn't, it looks like someone is trying to do something that </div> | ||
18 | <div dir="ltr">makes no sense (and has no chance of being merged into master). so if this is </div> | ||
19 | <div dir="ltr">a "for reals" branch, perhaps the motivation behind it can be shared?</div> | ||
20 | <br/> | ||
21 | <div dir="ltr">-- </div> | ||
22 | <div dir="ltr">Aaron J. Seigo</div> | ||
23 | </div> | ||
24 | </div> | ||
25 | </div> | ||
26 | </div> | ||
27 | </body> | ||
28 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-signed-two-attachments.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-signed-two-attachments.mbox.html new file mode 100644 index 00000000..027097f7 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/openpgp-signed-two-attachments.mbox.html | |||
@@ -0,0 +1,41 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
9 | <tr class="signOkKeyOkH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
14 | <td align="right"> | ||
15 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | </table> | ||
19 | </td> | ||
20 | </tr> | ||
21 | <tr class="signOkKeyOkB"> | ||
22 | <td> | ||
23 | <a name="att1"/> | ||
24 | <div id="attachmentDiv1"> | ||
25 | <a name="att1.1"/> | ||
26 | <div id="attachmentDiv1.1"> | ||
27 | <div class="noquote"> | ||
28 | <div dir="ltr">this is the main body text</div> | ||
29 | </div> | ||
30 | </div> | ||
31 | </div> | ||
32 | </td> | ||
33 | </tr> | ||
34 | <tr class="signOkKeyOkH"> | ||
35 | <td dir="ltr">End of signed message</td> | ||
36 | </tr> | ||
37 | </table> | ||
38 | </div> | ||
39 | </div> | ||
40 | </body> | ||
41 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/smime-signed-apple.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/smime-signed-apple.mbox.html new file mode 100644 index 00000000..9554bb39 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/headeronly/smime-signed-apple.mbox.html | |||
@@ -0,0 +1,50 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signErr"> | ||
9 | <tr class="signErrH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td>Invalid signature.</td> | ||
14 | <td align="right"> | ||
15 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | </table> | ||
19 | </td> | ||
20 | </tr> | ||
21 | <tr class="signErrB"> | ||
22 | <td> | ||
23 | <a name="att1"/> | ||
24 | <div id="attachmentDiv1"> | ||
25 | <a name="att1.2"/> | ||
26 | <div id="attachmentDiv1.2"> | ||
27 | <a name="att1.2.1"/> | ||
28 | <div id="attachmentDiv1.2.1"> | ||
29 | <div style="position: relative">Olá Konqui,<div class="">Here is the pdf you asked for!</div><div class="">Cheers,</div><div class="">Quaack</div></div> | ||
30 | </div> | ||
31 | <a name="att1.2.3"/> | ||
32 | <div id="attachmentDiv1.2.3"> | ||
33 | <div style="position: relative"> | ||
34 | <blockquote type="cite" class=""> | ||
35 | <div class="">On 20 Jan 2017, at 10:35, Konqui <<a href="mailto:Konqui@kdab.com">Konqui</a></div> | ||
36 | </blockquote> | ||
37 | </div> | ||
38 | </div> | ||
39 | </div> | ||
40 | </div> | ||
41 | </td> | ||
42 | </tr> | ||
43 | <tr class="signErrH"> | ||
44 | <td dir="ltr">End of signed message</td> | ||
45 | </tr> | ||
46 | </table> | ||
47 | </div> | ||
48 | </div> | ||
49 | </body> | ||
50 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/encapsulated-with-attachment.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/encapsulated-with-attachment.mbox.html new file mode 100644 index 00000000..42f5ecd7 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/encapsulated-with-attachment.mbox.html | |||
@@ -0,0 +1,43 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <div class="noquote"> | ||
11 | <div dir="ltr">This is the first encapsulating message.</div> | ||
12 | </div> | ||
13 | </div> | ||
14 | <a name="att2"/> | ||
15 | <div id="attachmentDiv2"> | ||
16 | <table cellspacing="1" cellpadding="1" class="rfc822"> | ||
17 | <tr class="rfc822H"> | ||
18 | <td dir="ltr"> | ||
19 | <a href="attachment:2.1?place=body">Encapsulated message</a> | ||
20 | </td> | ||
21 | </tr> | ||
22 | <tr class="rfc822B"> | ||
23 | <td> | ||
24 | <a name="att2.1"/> | ||
25 | <div id="attachmentDiv2.1"> | ||
26 | <a name="att2.1.1"/> | ||
27 | <div id="attachmentDiv2.1.1"> | ||
28 | <div class="noquote"> | ||
29 | <div dir="ltr">This is the second encapsulated message.</div> | ||
30 | </div> | ||
31 | </div> | ||
32 | </div> | ||
33 | </td> | ||
34 | </tr> | ||
35 | <tr class="rfc822H"> | ||
36 | <td dir="ltr">End of encapsulated message</td> | ||
37 | </tr> | ||
38 | </table> | ||
39 | </div> | ||
40 | </div> | ||
41 | </div> | ||
42 | </body> | ||
43 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox.html new file mode 100644 index 00000000..73c4d2d7 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox.html | |||
@@ -0,0 +1,61 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
11 | <tr class="encrH"> | ||
12 | <td dir="ltr">Encrypted message</td> | ||
13 | </tr> | ||
14 | <tr class="encrB"> | ||
15 | <td> | ||
16 | <div style="position: relative; word-wrap: break-word"> | ||
17 | <a name="att"/> | ||
18 | <div id="attachmentDiv"> | ||
19 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
20 | <tr class="signOkKeyOkH"> | ||
21 | <td dir="ltr"> | ||
22 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
23 | <tr> | ||
24 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
25 | <td align="right"> | ||
26 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
27 | </td> | ||
28 | </tr> | ||
29 | </table> | ||
30 | </td> | ||
31 | </tr> | ||
32 | <tr class="signOkKeyOkB"> | ||
33 | <td> | ||
34 | <a name="att1"/> | ||
35 | <div id="attachmentDiv1"> | ||
36 | <a name="att1.1"/> | ||
37 | <div id="attachmentDiv1.1"> | ||
38 | <div class="noquote"> | ||
39 | <div dir="ltr">test text</div> | ||
40 | </div> | ||
41 | </div> | ||
42 | </div> | ||
43 | </td> | ||
44 | </tr> | ||
45 | <tr class="signOkKeyOkH"> | ||
46 | <td dir="ltr">End of signed message</td> | ||
47 | </tr> | ||
48 | </table> | ||
49 | </div> | ||
50 | </div> | ||
51 | </td> | ||
52 | </tr> | ||
53 | <tr class="encrH"> | ||
54 | <td dir="ltr">End of encrypted message</td> | ||
55 | </tr> | ||
56 | </table> | ||
57 | </div> | ||
58 | </div> | ||
59 | </div> | ||
60 | </body> | ||
61 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-encrypted-attachment.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-encrypted-attachment.mbox.html new file mode 100644 index 00000000..d5e4550e --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-encrypted-attachment.mbox.html | |||
@@ -0,0 +1,58 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
18 | <tr class="signOkKeyOkH"> | ||
19 | <td dir="ltr"> | ||
20 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
21 | <tr> | ||
22 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
23 | <td align="right"> | ||
24 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
25 | </td> | ||
26 | </tr> | ||
27 | </table> | ||
28 | </td> | ||
29 | </tr> | ||
30 | <tr class="signOkKeyOkB"> | ||
31 | <td> | ||
32 | <a name="att1"/> | ||
33 | <div id="attachmentDiv1"> | ||
34 | <a name="att1.1"/> | ||
35 | <div id="attachmentDiv1.1"> | ||
36 | <div class="noquote"> | ||
37 | <div dir="ltr">test text</div> | ||
38 | </div> | ||
39 | </div> | ||
40 | </div> | ||
41 | </td> | ||
42 | </tr> | ||
43 | <tr class="signOkKeyOkH"> | ||
44 | <td dir="ltr">End of signed message</td> | ||
45 | </tr> | ||
46 | </table> | ||
47 | </div> | ||
48 | </div> | ||
49 | </td> | ||
50 | </tr> | ||
51 | <tr class="encrH"> | ||
52 | <td dir="ltr">End of encrypted message</td> | ||
53 | </tr> | ||
54 | </table> | ||
55 | </div> | ||
56 | </div> | ||
57 | </body> | ||
58 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-encrypted-noData.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-encrypted-noData.mbox.html new file mode 100644 index 00000000..166812fe --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-encrypted-noData.mbox.html | |||
@@ -0,0 +1,10 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"/> | ||
8 | </div> | ||
9 | </body> | ||
10 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-encrypted-non-encrypted-attachment.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-encrypted-non-encrypted-attachment.mbox.html new file mode 100644 index 00000000..73c4d2d7 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-encrypted-non-encrypted-attachment.mbox.html | |||
@@ -0,0 +1,61 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
11 | <tr class="encrH"> | ||
12 | <td dir="ltr">Encrypted message</td> | ||
13 | </tr> | ||
14 | <tr class="encrB"> | ||
15 | <td> | ||
16 | <div style="position: relative; word-wrap: break-word"> | ||
17 | <a name="att"/> | ||
18 | <div id="attachmentDiv"> | ||
19 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
20 | <tr class="signOkKeyOkH"> | ||
21 | <td dir="ltr"> | ||
22 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
23 | <tr> | ||
24 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
25 | <td align="right"> | ||
26 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
27 | </td> | ||
28 | </tr> | ||
29 | </table> | ||
30 | </td> | ||
31 | </tr> | ||
32 | <tr class="signOkKeyOkB"> | ||
33 | <td> | ||
34 | <a name="att1"/> | ||
35 | <div id="attachmentDiv1"> | ||
36 | <a name="att1.1"/> | ||
37 | <div id="attachmentDiv1.1"> | ||
38 | <div class="noquote"> | ||
39 | <div dir="ltr">test text</div> | ||
40 | </div> | ||
41 | </div> | ||
42 | </div> | ||
43 | </td> | ||
44 | </tr> | ||
45 | <tr class="signOkKeyOkH"> | ||
46 | <td dir="ltr">End of signed message</td> | ||
47 | </tr> | ||
48 | </table> | ||
49 | </div> | ||
50 | </div> | ||
51 | </td> | ||
52 | </tr> | ||
53 | <tr class="encrH"> | ||
54 | <td dir="ltr">End of encrypted message</td> | ||
55 | </tr> | ||
56 | </table> | ||
57 | </div> | ||
58 | </div> | ||
59 | </div> | ||
60 | </body> | ||
61 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-encrypted-partially-signed-attachments.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-encrypted-partially-signed-attachments.mbox.html new file mode 100644 index 00000000..ebad7354 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-encrypted-partially-signed-attachments.mbox.html | |||
@@ -0,0 +1,84 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
11 | <tr class="encrH"> | ||
12 | <td dir="ltr">Encrypted message</td> | ||
13 | </tr> | ||
14 | <tr class="encrB"> | ||
15 | <td> | ||
16 | <div style="position: relative; word-wrap: break-word"> | ||
17 | <a name="att"/> | ||
18 | <div id="attachmentDiv"> | ||
19 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
20 | <tr class="signOkKeyOkH"> | ||
21 | <td dir="ltr"> | ||
22 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
23 | <tr> | ||
24 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
25 | <td align="right"> | ||
26 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
27 | </td> | ||
28 | </tr> | ||
29 | </table> | ||
30 | </td> | ||
31 | </tr> | ||
32 | <tr class="signOkKeyOkB"> | ||
33 | <td> | ||
34 | <a name="att1"/> | ||
35 | <div id="attachmentDiv1"> | ||
36 | <a name="att1.1"/> | ||
37 | <div id="attachmentDiv1.1"> | ||
38 | <div class="noquote"> | ||
39 | <div dir="ltr">This is the main body.</div> | ||
40 | </div> | ||
41 | </div> | ||
42 | </div> | ||
43 | </td> | ||
44 | </tr> | ||
45 | <tr class="signOkKeyOkH"> | ||
46 | <td dir="ltr">End of signed message</td> | ||
47 | </tr> | ||
48 | </table> | ||
49 | </div> | ||
50 | </div> | ||
51 | </td> | ||
52 | </tr> | ||
53 | <tr class="encrH"> | ||
54 | <td dir="ltr">End of encrypted message</td> | ||
55 | </tr> | ||
56 | </table> | ||
57 | </div> | ||
58 | <a name="att2"/> | ||
59 | <div id="attachmentDiv2"> | ||
60 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
61 | <tr class="encrH"> | ||
62 | <td dir="ltr">Encrypted message</td> | ||
63 | </tr> | ||
64 | <tr class="encrB"> | ||
65 | <td> | ||
66 | <div style="position: relative; word-wrap: break-word"> | ||
67 | <a name="att"/> | ||
68 | <div id="attachmentDiv"> | ||
69 | <div class="noquote"> | ||
70 | <div dir="ltr">This is an unsigned attachment.</div> | ||
71 | </div> | ||
72 | </div> | ||
73 | </div> | ||
74 | </td> | ||
75 | </tr> | ||
76 | <tr class="encrH"> | ||
77 | <td dir="ltr">End of encrypted message</td> | ||
78 | </tr> | ||
79 | </table> | ||
80 | </div> | ||
81 | </div> | ||
82 | </div> | ||
83 | </body> | ||
84 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-encrypted-two-attachments.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-encrypted-two-attachments.mbox.html new file mode 100644 index 00000000..4cdeaa63 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-encrypted-two-attachments.mbox.html | |||
@@ -0,0 +1,34 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <a name="att1"/> | ||
18 | <div id="attachmentDiv1"> | ||
19 | <div class="noquote"> | ||
20 | <div dir="ltr">this is the main body part</div> | ||
21 | </div> | ||
22 | </div> | ||
23 | </div> | ||
24 | </div> | ||
25 | </td> | ||
26 | </tr> | ||
27 | <tr class="encrH"> | ||
28 | <td dir="ltr">End of encrypted message</td> | ||
29 | </tr> | ||
30 | </table> | ||
31 | </div> | ||
32 | </div> | ||
33 | </body> | ||
34 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-signed-apple.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-signed-apple.mbox.html new file mode 100644 index 00000000..330b02a1 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-signed-apple.mbox.html | |||
@@ -0,0 +1,50 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signWarn"> | ||
9 | <tr class="signWarnH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td>Not enough information to check signature validity.</td> | ||
14 | <td align="right"> | ||
15 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | </table> | ||
19 | </td> | ||
20 | </tr> | ||
21 | <tr class="signWarnB"> | ||
22 | <td> | ||
23 | <a name="att1"/> | ||
24 | <div id="attachmentDiv1"> | ||
25 | <a name="att1.2"/> | ||
26 | <div id="attachmentDiv1.2"> | ||
27 | <a name="att1.2.1"/> | ||
28 | <div id="attachmentDiv1.2.1"> | ||
29 | <div style="position: relative"> | ||
30 | <div class="">pre attachment</div> | ||
31 | </div> | ||
32 | </div> | ||
33 | <a name="att1.2.3"/> | ||
34 | <div id="attachmentDiv1.2.3"> | ||
35 | <div style="position: relative"> | ||
36 | <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">Some <span style=" font-weight:600;">HTML</span> text</p> | ||
37 | </div> | ||
38 | </div> | ||
39 | </div> | ||
40 | </div> | ||
41 | </td> | ||
42 | </tr> | ||
43 | <tr class="signWarnH"> | ||
44 | <td dir="ltr">End of signed message</td> | ||
45 | </tr> | ||
46 | </table> | ||
47 | </div> | ||
48 | </div> | ||
49 | </body> | ||
50 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-signed-encrypted-two-attachments.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-signed-encrypted-two-attachments.mbox.html new file mode 100644 index 00000000..83b7a66c --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-signed-encrypted-two-attachments.mbox.html | |||
@@ -0,0 +1,58 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
18 | <tr class="signOkKeyOkH"> | ||
19 | <td dir="ltr"> | ||
20 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
21 | <tr> | ||
22 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
23 | <td align="right"> | ||
24 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
25 | </td> | ||
26 | </tr> | ||
27 | </table> | ||
28 | </td> | ||
29 | </tr> | ||
30 | <tr class="signOkKeyOkB"> | ||
31 | <td> | ||
32 | <a name="att1"/> | ||
33 | <div id="attachmentDiv1"> | ||
34 | <a name="att1.1"/> | ||
35 | <div id="attachmentDiv1.1"> | ||
36 | <div class="noquote"> | ||
37 | <div dir="ltr">this is the main body</div> | ||
38 | </div> | ||
39 | </div> | ||
40 | </div> | ||
41 | </td> | ||
42 | </tr> | ||
43 | <tr class="signOkKeyOkH"> | ||
44 | <td dir="ltr">End of signed message</td> | ||
45 | </tr> | ||
46 | </table> | ||
47 | </div> | ||
48 | </div> | ||
49 | </td> | ||
50 | </tr> | ||
51 | <tr class="encrH"> | ||
52 | <td dir="ltr">End of encrypted message</td> | ||
53 | </tr> | ||
54 | </table> | ||
55 | </div> | ||
56 | </div> | ||
57 | </body> | ||
58 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-signed-mailinglist+additional-children.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-signed-mailinglist+additional-children.mbox.html new file mode 100644 index 00000000..1f0da385 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-signed-mailinglist+additional-children.mbox.html | |||
@@ -0,0 +1,44 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <a name="att1.1"/> | ||
11 | <div id="attachmentDiv1.1"> | ||
12 | <div class="noquote"> | ||
13 | <div dir="ltr">hi..</div> | ||
14 | <br/> | ||
15 | <div dir="ltr">i noticed a new branch when i pulled kde-workspace today (finally!): </div> | ||
16 | <div dir="ltr">activities_optional</div> | ||
17 | <br/> | ||
18 | <div dir="ltr">the lone commit in it was pushed on april 1, so maybe it's an april fools </div> | ||
19 | <div dir="ltr">joke, but if it isn't, it looks like someone is trying to do something that </div> | ||
20 | <div dir="ltr">makes no sense (and has no chance of being merged into master). so if this is </div> | ||
21 | <div dir="ltr">a "for reals" branch, perhaps the motivation behind it can be shared?</div> | ||
22 | <br/> | ||
23 | <div dir="ltr">-- </div> | ||
24 | <div dir="ltr">Aaron J. Seigo</div> | ||
25 | </div> | ||
26 | </div> | ||
27 | </div> | ||
28 | <a name="att2"/> | ||
29 | <div id="attachmentDiv2"> | ||
30 | <div class="noquote"> | ||
31 | <div dir="ltr">_______________________________________________</div> | ||
32 | <div dir="ltr">Plasma-devel mailing list</div> | ||
33 | <div dir="ltr"> | ||
34 | <a href="mailto:Plasma-devel@kde.org">Plasma-devel@kde.org</a> | ||
35 | </div> | ||
36 | <div dir="ltr"> | ||
37 | <a href="https://mail.kde.org/mailman/listinfo/plasma-devel">https://mail.kde.org/mailman/listinfo/plasma-devel</a> | ||
38 | </div> | ||
39 | </div> | ||
40 | </div> | ||
41 | </div> | ||
42 | </div> | ||
43 | </body> | ||
44 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-signed-no-protocol.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-signed-no-protocol.mbox.html new file mode 100644 index 00000000..bdac52b6 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-signed-no-protocol.mbox.html | |||
@@ -0,0 +1,28 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <div class="noquote"> | ||
11 | <div dir="ltr">hi..</div> | ||
12 | <br/> | ||
13 | <div dir="ltr">i noticed a new branch when i pulled kde-workspace today (finally!): </div> | ||
14 | <div dir="ltr">activities_optional</div> | ||
15 | <br/> | ||
16 | <div dir="ltr">the lone commit in it was pushed on april 1, so maybe it's an april fools </div> | ||
17 | <div dir="ltr">joke, but if it isn't, it looks like someone is trying to do something that </div> | ||
18 | <div dir="ltr">makes no sense (and has no chance of being merged into master). so if this is </div> | ||
19 | <div dir="ltr">a "for reals" branch, perhaps the motivation behind it can be shared?</div> | ||
20 | <br/> | ||
21 | <div dir="ltr">-- </div> | ||
22 | <div dir="ltr">Aaron J. Seigo</div> | ||
23 | </div> | ||
24 | </div> | ||
25 | </div> | ||
26 | </div> | ||
27 | </body> | ||
28 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-signed-two-attachments.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-signed-two-attachments.mbox.html new file mode 100644 index 00000000..027097f7 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/openpgp-signed-two-attachments.mbox.html | |||
@@ -0,0 +1,41 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
9 | <tr class="signOkKeyOkH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
14 | <td align="right"> | ||
15 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | </table> | ||
19 | </td> | ||
20 | </tr> | ||
21 | <tr class="signOkKeyOkB"> | ||
22 | <td> | ||
23 | <a name="att1"/> | ||
24 | <div id="attachmentDiv1"> | ||
25 | <a name="att1.1"/> | ||
26 | <div id="attachmentDiv1.1"> | ||
27 | <div class="noquote"> | ||
28 | <div dir="ltr">this is the main body text</div> | ||
29 | </div> | ||
30 | </div> | ||
31 | </div> | ||
32 | </td> | ||
33 | </tr> | ||
34 | <tr class="signOkKeyOkH"> | ||
35 | <td dir="ltr">End of signed message</td> | ||
36 | </tr> | ||
37 | </table> | ||
38 | </div> | ||
39 | </div> | ||
40 | </body> | ||
41 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/smime-signed-apple.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/smime-signed-apple.mbox.html new file mode 100644 index 00000000..9554bb39 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/hidden/smime-signed-apple.mbox.html | |||
@@ -0,0 +1,50 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signErr"> | ||
9 | <tr class="signErrH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td>Invalid signature.</td> | ||
14 | <td align="right"> | ||
15 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | </table> | ||
19 | </td> | ||
20 | </tr> | ||
21 | <tr class="signErrB"> | ||
22 | <td> | ||
23 | <a name="att1"/> | ||
24 | <div id="attachmentDiv1"> | ||
25 | <a name="att1.2"/> | ||
26 | <div id="attachmentDiv1.2"> | ||
27 | <a name="att1.2.1"/> | ||
28 | <div id="attachmentDiv1.2.1"> | ||
29 | <div style="position: relative">Olá Konqui,<div class="">Here is the pdf you asked for!</div><div class="">Cheers,</div><div class="">Quaack</div></div> | ||
30 | </div> | ||
31 | <a name="att1.2.3"/> | ||
32 | <div id="attachmentDiv1.2.3"> | ||
33 | <div style="position: relative"> | ||
34 | <blockquote type="cite" class=""> | ||
35 | <div class="">On 20 Jan 2017, at 10:35, Konqui <<a href="mailto:Konqui@kdab.com">Konqui</a></div> | ||
36 | </blockquote> | ||
37 | </div> | ||
38 | </div> | ||
39 | </div> | ||
40 | </div> | ||
41 | </td> | ||
42 | </tr> | ||
43 | <tr class="signErrH"> | ||
44 | <td dir="ltr">End of signed message</td> | ||
45 | </tr> | ||
46 | </table> | ||
47 | </div> | ||
48 | </div> | ||
49 | </body> | ||
50 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/html.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/html.mbox new file mode 100644 index 00000000..eebd4283 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/html.mbox | |||
@@ -0,0 +1,31 @@ | |||
1 | From foo@example.com Thu, 26 May 2011 01:16:54 +0100 | ||
2 | From: Thomas McGuire <foo@example.com> | ||
3 | Subject: HTML test | ||
4 | Date: Thu, 26 May 2011 01:16:54 +0100 | ||
5 | Message-ID: <1501334.pROlBb7MZF@herrwackelpudding.localhost> | ||
6 | X-KMail-Transport: GMX | ||
7 | X-KMail-Fcc: 28 | ||
8 | X-KMail-Drafts: 7 | ||
9 | X-KMail-Templates: 9 | ||
10 | User-Agent: KMail/4.6 beta5 (Linux/2.6.34.7-0.7-desktop; KDE/4.6.41; x86_64; git-0269848; 2011-04-19) | ||
11 | MIME-Version: 1.0 | ||
12 | Content-Type: multipart/alternative; boundary="nextPart8606278.tpV19BTJKu" | ||
13 | Content-Transfer-Encoding: 7Bit | ||
14 | |||
15 | |||
16 | --nextPart8606278.tpV19BTJKu | ||
17 | Content-Transfer-Encoding: 7Bit | ||
18 | Content-Type: text/plain; charset="windows-1252" | ||
19 | |||
20 | Some HTML text | ||
21 | --nextPart8606278.tpV19BTJKu | ||
22 | Content-Transfer-Encoding: 7Bit | ||
23 | Content-Type: text/html; charset="windows-1252" | ||
24 | |||
25 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> | ||
26 | <html><head><meta name="qrichtext" content="1" /><style type="text/css"> | ||
27 | p, li { white-space: pre-wrap; } | ||
28 | </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> | ||
29 | <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">Some <span style=" font-weight:600;">HTML</span> text</p></body></html> | ||
30 | --nextPart8606278.tpV19BTJKu-- | ||
31 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/html.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/html.mbox.html new file mode 100644 index 00000000..2fe886f1 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/html.mbox.html | |||
@@ -0,0 +1,17 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att2"/> | ||
9 | <div id="attachmentDiv2"> | ||
10 | <div style="position: relative"> | ||
11 | <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">Some <span style=" font-weight:600;">HTML</span> text</p> | ||
12 | </div> | ||
13 | </div> | ||
14 | </div> | ||
15 | </div> | ||
16 | </body> | ||
17 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/html.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/html.mbox.tree new file mode 100644 index 00000000..0de07281 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/html.mbox.tree | |||
@@ -0,0 +1,2 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::AlternativeMessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/htmlonly.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/htmlonly.mbox new file mode 100644 index 00000000..e45b1c4d --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/htmlonly.mbox | |||
@@ -0,0 +1,21 @@ | |||
1 | From foo@example.com Thu, 26 May 2011 01:16:54 +0100 | ||
2 | From: Thomas McGuire <foo@example.com> | ||
3 | Subject: HTML test | ||
4 | Date: Thu, 26 May 2011 01:16:54 +0100 | ||
5 | Message-ID: <1501334.pROlBb7MZF@herrwackelpudding.localhost> | ||
6 | X-KMail-Transport: GMX | ||
7 | X-KMail-Fcc: 28 | ||
8 | X-KMail-Drafts: 7 | ||
9 | X-KMail-Templates: 9 | ||
10 | User-Agent: KMail/4.6 beta5 (Linux/2.6.34.7-0.7-desktop; KDE/4.6.41; x86_64; git-0269848; 2011-04-19) | ||
11 | MIME-Version: 1.0 | ||
12 | Content-Type: text/html | ||
13 | Content-Transfer-Encoding: 7Bit | ||
14 | |||
15 | <html> | ||
16 | <head> | ||
17 | </head> | ||
18 | <body> | ||
19 | <b>SOME</b> HTML text. | ||
20 | </body> | ||
21 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/htmlonly.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/htmlonly.mbox.html new file mode 100644 index 00000000..1143f2cf --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/htmlonly.mbox.html | |||
@@ -0,0 +1,12 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <div style="position: relative"><b>SOME</b> HTML text.</div> | ||
9 | </div> | ||
10 | </div> | ||
11 | </body> | ||
12 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/htmlonly.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/htmlonly.mbox.tree new file mode 100644 index 00000000..a4c3191b --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/htmlonly.mbox.tree | |||
@@ -0,0 +1,2 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::HtmlMessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/htmlonlyexternal.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/htmlonlyexternal.mbox new file mode 100644 index 00000000..4eb3e2c3 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/htmlonlyexternal.mbox | |||
@@ -0,0 +1,21 @@ | |||
1 | From foo@example.com Thu, 26 May 2011 01:16:54 +0100 | ||
2 | From: Thomas McGuire <foo@example.com> | ||
3 | Subject: HTML test | ||
4 | Date: Thu, 26 May 2011 01:16:54 +0100 | ||
5 | Message-ID: <1501334.pROlBb7MZF@herrwackelpudding.localhost> | ||
6 | X-KMail-Transport: GMX | ||
7 | X-KMail-Fcc: 28 | ||
8 | X-KMail-Drafts: 7 | ||
9 | X-KMail-Templates: 9 | ||
10 | User-Agent: KMail/4.6 beta5 (Linux/2.6.34.7-0.7-desktop; KDE/4.6.41; x86_64; git-0269848; 2011-04-19) | ||
11 | MIME-Version: 1.0 | ||
12 | Content-Type: text/html | ||
13 | Content-Transfer-Encoding: 7Bit | ||
14 | |||
15 | <html> | ||
16 | <head> | ||
17 | </head> | ||
18 | <body> | ||
19 | <b>SOME</b> HTML text. <img src="http://example.org/test.img" > | ||
20 | </body> | ||
21 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/iconic/openpgp-encrypted-partially-signed-attachments.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/iconic/openpgp-encrypted-partially-signed-attachments.mbox.html new file mode 100644 index 00000000..b6f734c2 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/iconic/openpgp-encrypted-partially-signed-attachments.mbox.html | |||
@@ -0,0 +1,92 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
11 | <tr class="encrH"> | ||
12 | <td dir="ltr">Encrypted message</td> | ||
13 | </tr> | ||
14 | <tr class="encrB"> | ||
15 | <td> | ||
16 | <div style="position: relative; word-wrap: break-word"> | ||
17 | <a name="att"/> | ||
18 | <div id="attachmentDiv"> | ||
19 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
20 | <tr class="signOkKeyOkH"> | ||
21 | <td dir="ltr"> | ||
22 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
23 | <tr> | ||
24 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
25 | <td align="right"> | ||
26 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
27 | </td> | ||
28 | </tr> | ||
29 | </table> | ||
30 | </td> | ||
31 | </tr> | ||
32 | <tr class="signOkKeyOkB"> | ||
33 | <td> | ||
34 | <a name="att1"/> | ||
35 | <div id="attachmentDiv1"> | ||
36 | <a name="att1.1"/> | ||
37 | <div id="attachmentDiv1.1"> | ||
38 | <div class="noquote"> | ||
39 | <div dir="ltr">This is the main body.</div> | ||
40 | </div> | ||
41 | </div> | ||
42 | <a name="att1.2"/> | ||
43 | <div id="attachmentDiv1.2"> | ||
44 | <hr/> | ||
45 | <div> | ||
46 | <a href="attachment:1:e0:1.2?place=body"><img align="center" height="48" width="48" src="file:text-plain.svg" border="0" style="max-width: 100%" alt=""/>attachment1.txt</a> | ||
47 | </div> | ||
48 | <div/> | ||
49 | </div> | ||
50 | </div> | ||
51 | </td> | ||
52 | </tr> | ||
53 | <tr class="signOkKeyOkH"> | ||
54 | <td dir="ltr">End of signed message</td> | ||
55 | </tr> | ||
56 | </table> | ||
57 | </div> | ||
58 | </div> | ||
59 | </td> | ||
60 | </tr> | ||
61 | <tr class="encrH"> | ||
62 | <td dir="ltr">End of encrypted message</td> | ||
63 | </tr> | ||
64 | </table> | ||
65 | </div> | ||
66 | <a name="att2"/> | ||
67 | <div id="attachmentDiv2"> | ||
68 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
69 | <tr class="encrH"> | ||
70 | <td dir="ltr">Encrypted message</td> | ||
71 | </tr> | ||
72 | <tr class="encrB"> | ||
73 | <td> | ||
74 | <div style="position: relative; word-wrap: break-word"> | ||
75 | <a name="att"/> | ||
76 | <div id="attachmentDiv"> | ||
77 | <div class="noquote"> | ||
78 | <div dir="ltr">This is an unsigned attachment.</div> | ||
79 | </div> | ||
80 | </div> | ||
81 | </div> | ||
82 | </td> | ||
83 | </tr> | ||
84 | <tr class="encrH"> | ||
85 | <td dir="ltr">End of encrypted message</td> | ||
86 | </tr> | ||
87 | </table> | ||
88 | </div> | ||
89 | </div> | ||
90 | </div> | ||
91 | </body> | ||
92 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/iconic/openpgp-encrypted-two-attachments.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/iconic/openpgp-encrypted-two-attachments.mbox.html new file mode 100644 index 00000000..7f0b7abd --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/iconic/openpgp-encrypted-two-attachments.mbox.html | |||
@@ -0,0 +1,50 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <a name="att1"/> | ||
18 | <div id="attachmentDiv1"> | ||
19 | <div class="noquote"> | ||
20 | <div dir="ltr">this is the main body part</div> | ||
21 | </div> | ||
22 | </div> | ||
23 | <a name="att2"/> | ||
24 | <div id="attachmentDiv2"> | ||
25 | <hr/> | ||
26 | <div> | ||
27 | <a href="attachment:e0:2?place=body"><img align="center" height="48" width="48" src="file:text-plain.svg" border="0" style="max-width: 100%" alt=""/>attachment1.txt</a> | ||
28 | </div> | ||
29 | <div/> | ||
30 | </div> | ||
31 | <a name="att3"/> | ||
32 | <div id="attachmentDiv3"> | ||
33 | <hr/> | ||
34 | <div> | ||
35 | <a href="attachment:e0:3?place=body"><img align="center" height="48" width="48" src="file:text-plain.svg" border="0" style="max-width: 100%" alt=""/>attachment2.txt</a> | ||
36 | </div> | ||
37 | <div/> | ||
38 | </div> | ||
39 | </div> | ||
40 | </div> | ||
41 | </td> | ||
42 | </tr> | ||
43 | <tr class="encrH"> | ||
44 | <td dir="ltr">End of encrypted message</td> | ||
45 | </tr> | ||
46 | </table> | ||
47 | </div> | ||
48 | </div> | ||
49 | </body> | ||
50 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/iconic/openpgp-signed-encrypted-two-attachments.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/iconic/openpgp-signed-encrypted-two-attachments.mbox.html new file mode 100644 index 00000000..8d6b5814 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/iconic/openpgp-signed-encrypted-two-attachments.mbox.html | |||
@@ -0,0 +1,74 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
18 | <tr class="signOkKeyOkH"> | ||
19 | <td dir="ltr"> | ||
20 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
21 | <tr> | ||
22 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
23 | <td align="right"> | ||
24 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
25 | </td> | ||
26 | </tr> | ||
27 | </table> | ||
28 | </td> | ||
29 | </tr> | ||
30 | <tr class="signOkKeyOkB"> | ||
31 | <td> | ||
32 | <a name="att1"/> | ||
33 | <div id="attachmentDiv1"> | ||
34 | <a name="att1.1"/> | ||
35 | <div id="attachmentDiv1.1"> | ||
36 | <div class="noquote"> | ||
37 | <div dir="ltr">this is the main body</div> | ||
38 | </div> | ||
39 | </div> | ||
40 | <a name="att1.2"/> | ||
41 | <div id="attachmentDiv1.2"> | ||
42 | <hr/> | ||
43 | <div> | ||
44 | <a href="attachment:e0:1.2?place=body"><img align="center" height="48" width="48" src="file:text-plain.svg" border="0" style="max-width: 100%" alt=""/>attachment1.txt</a> | ||
45 | </div> | ||
46 | <div/> | ||
47 | </div> | ||
48 | <a name="att1.3"/> | ||
49 | <div id="attachmentDiv1.3"> | ||
50 | <hr/> | ||
51 | <div> | ||
52 | <a href="attachment:e0:1.3?place=body"><img align="center" height="48" width="48" src="file:text-plain.svg" border="0" style="max-width: 100%" alt=""/>attachment2.txt</a> | ||
53 | </div> | ||
54 | <div/> | ||
55 | </div> | ||
56 | </div> | ||
57 | </td> | ||
58 | </tr> | ||
59 | <tr class="signOkKeyOkH"> | ||
60 | <td dir="ltr">End of signed message</td> | ||
61 | </tr> | ||
62 | </table> | ||
63 | </div> | ||
64 | </div> | ||
65 | </td> | ||
66 | </tr> | ||
67 | <tr class="encrH"> | ||
68 | <td dir="ltr">End of encrypted message</td> | ||
69 | </tr> | ||
70 | </table> | ||
71 | </div> | ||
72 | </div> | ||
73 | </body> | ||
74 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/iconic/openpgp-signed-two-attachments.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/iconic/openpgp-signed-two-attachments.mbox.html new file mode 100644 index 00000000..73dbc5f4 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/iconic/openpgp-signed-two-attachments.mbox.html | |||
@@ -0,0 +1,57 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
9 | <tr class="signOkKeyOkH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
14 | <td align="right"> | ||
15 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | </table> | ||
19 | </td> | ||
20 | </tr> | ||
21 | <tr class="signOkKeyOkB"> | ||
22 | <td> | ||
23 | <a name="att1"/> | ||
24 | <div id="attachmentDiv1"> | ||
25 | <a name="att1.1"/> | ||
26 | <div id="attachmentDiv1.1"> | ||
27 | <div class="noquote"> | ||
28 | <div dir="ltr">this is the main body text</div> | ||
29 | </div> | ||
30 | </div> | ||
31 | <a name="att1.2"/> | ||
32 | <div id="attachmentDiv1.2"> | ||
33 | <hr/> | ||
34 | <div> | ||
35 | <a href="attachment:1.2?place=body"><img align="center" height="48" width="48" src="file:text-plain.svg" border="0" style="max-width: 100%" alt=""/>attachment1.txt</a> | ||
36 | </div> | ||
37 | <div/> | ||
38 | </div> | ||
39 | <a name="att1.3"/> | ||
40 | <div id="attachmentDiv1.3"> | ||
41 | <hr/> | ||
42 | <div> | ||
43 | <a href="attachment:1.3?place=body"><img align="center" height="48" width="48" src="file:text-plain.svg" border="0" style="max-width: 100%" alt=""/>attachment2.txt</a> | ||
44 | </div> | ||
45 | <div/> | ||
46 | </div> | ||
47 | </div> | ||
48 | </td> | ||
49 | </tr> | ||
50 | <tr class="signOkKeyOkH"> | ||
51 | <td dir="ltr">End of signed message</td> | ||
52 | </tr> | ||
53 | </table> | ||
54 | </div> | ||
55 | </div> | ||
56 | </body> | ||
57 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/encapsulated-with-attachment.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/encapsulated-with-attachment.mbox.html new file mode 100644 index 00000000..26d3dd60 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/encapsulated-with-attachment.mbox.html | |||
@@ -0,0 +1,58 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <div class="noquote"> | ||
11 | <div dir="ltr">This is the first encapsulating message.</div> | ||
12 | </div> | ||
13 | </div> | ||
14 | <a name="att2"/> | ||
15 | <div id="attachmentDiv2"> | ||
16 | <table cellspacing="1" cellpadding="1" class="rfc822"> | ||
17 | <tr class="rfc822H"> | ||
18 | <td dir="ltr"> | ||
19 | <a href="attachment:2.1?place=body">Encapsulated message</a> | ||
20 | </td> | ||
21 | </tr> | ||
22 | <tr class="rfc822B"> | ||
23 | <td> | ||
24 | <a name="att2.1"/> | ||
25 | <div id="attachmentDiv2.1"> | ||
26 | <a name="att2.1.1"/> | ||
27 | <div id="attachmentDiv2.1.1"> | ||
28 | <div class="noquote"> | ||
29 | <div dir="ltr">This is the second encapsulated message.</div> | ||
30 | </div> | ||
31 | </div> | ||
32 | <a name="att2.1.2"/> | ||
33 | <div id="attachmentDiv2.1.2"> | ||
34 | <table cellspacing="1" class="textAtm"> | ||
35 | <tr class="textAtmH"> | ||
36 | <td dir="ltr">attachment.txt</td> | ||
37 | </tr> | ||
38 | <tr class="textAtmB"> | ||
39 | <td> | ||
40 | <div class="noquote"> | ||
41 | <div dir="ltr">This is an attachment.</div> | ||
42 | </div> | ||
43 | </td> | ||
44 | </tr> | ||
45 | </table> | ||
46 | </div> | ||
47 | </div> | ||
48 | </td> | ||
49 | </tr> | ||
50 | <tr class="rfc822H"> | ||
51 | <td dir="ltr">End of encapsulated message</td> | ||
52 | </tr> | ||
53 | </table> | ||
54 | </div> | ||
55 | </div> | ||
56 | </div> | ||
57 | </body> | ||
58 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox.html new file mode 100644 index 00000000..49e503f1 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox.html | |||
@@ -0,0 +1,90 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
11 | <tr class="encrH"> | ||
12 | <td dir="ltr">Encrypted message</td> | ||
13 | </tr> | ||
14 | <tr class="encrB"> | ||
15 | <td> | ||
16 | <div style="position: relative; word-wrap: break-word"> | ||
17 | <a name="att"/> | ||
18 | <div id="attachmentDiv"> | ||
19 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
20 | <tr class="signOkKeyOkH"> | ||
21 | <td dir="ltr"> | ||
22 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
23 | <tr> | ||
24 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
25 | <td align="right"> | ||
26 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
27 | </td> | ||
28 | </tr> | ||
29 | </table> | ||
30 | </td> | ||
31 | </tr> | ||
32 | <tr class="signOkKeyOkB"> | ||
33 | <td> | ||
34 | <a name="att1"/> | ||
35 | <div id="attachmentDiv1"> | ||
36 | <a name="att1.1"/> | ||
37 | <div id="attachmentDiv1.1"> | ||
38 | <div class="noquote"> | ||
39 | <div dir="ltr">test text</div> | ||
40 | </div> | ||
41 | </div> | ||
42 | <a name="att1.2"/> | ||
43 | <div id="attachmentDiv1.2"> | ||
44 | <table cellspacing="1" class="textAtm"> | ||
45 | <tr class="textAtmH"> | ||
46 | <td dir="ltr">file.txt</td> | ||
47 | </tr> | ||
48 | <tr class="textAtmB"> | ||
49 | <td> | ||
50 | <div class="noquote"> | ||
51 | <div dir="ltr">some plain ascii text...</div> | ||
52 | <br/> | ||
53 | </div> | ||
54 | </td> | ||
55 | </tr> | ||
56 | </table> | ||
57 | </div> | ||
58 | </div> | ||
59 | </td> | ||
60 | </tr> | ||
61 | <tr class="signOkKeyOkH"> | ||
62 | <td dir="ltr">End of signed message</td> | ||
63 | </tr> | ||
64 | </table> | ||
65 | </div> | ||
66 | </div> | ||
67 | </td> | ||
68 | </tr> | ||
69 | <tr class="encrH"> | ||
70 | <td dir="ltr">End of encrypted message</td> | ||
71 | </tr> | ||
72 | </table> | ||
73 | </div> | ||
74 | <a name="att2"/> | ||
75 | <div id="attachmentDiv2"> | ||
76 | <hr/> | ||
77 | <div> | ||
78 | <a href="attachment:2?place=body"> | ||
79 | <img align="center" src="file:image.png" border="0" style="max-width: 100%"/> | ||
80 | </a> | ||
81 | </div> | ||
82 | <div> | ||
83 | <a href="attachment:2?place=body">image.png</a> | ||
84 | </div> | ||
85 | <div/> | ||
86 | </div> | ||
87 | </div> | ||
88 | </div> | ||
89 | </body> | ||
90 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/openpgp-encrypted-attachment.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/openpgp-encrypted-attachment.mbox.html new file mode 100644 index 00000000..67897491 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/openpgp-encrypted-attachment.mbox.html | |||
@@ -0,0 +1,74 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
18 | <tr class="signOkKeyOkH"> | ||
19 | <td dir="ltr"> | ||
20 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
21 | <tr> | ||
22 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
23 | <td align="right"> | ||
24 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
25 | </td> | ||
26 | </tr> | ||
27 | </table> | ||
28 | </td> | ||
29 | </tr> | ||
30 | <tr class="signOkKeyOkB"> | ||
31 | <td> | ||
32 | <a name="att1"/> | ||
33 | <div id="attachmentDiv1"> | ||
34 | <a name="att1.1"/> | ||
35 | <div id="attachmentDiv1.1"> | ||
36 | <div class="noquote"> | ||
37 | <div dir="ltr">test text</div> | ||
38 | </div> | ||
39 | </div> | ||
40 | <a name="att1.2"/> | ||
41 | <div id="attachmentDiv1.2"> | ||
42 | <table cellspacing="1" class="textAtm"> | ||
43 | <tr class="textAtmH"> | ||
44 | <td dir="ltr">file.txt</td> | ||
45 | </tr> | ||
46 | <tr class="textAtmB"> | ||
47 | <td> | ||
48 | <div class="noquote"> | ||
49 | <div dir="ltr">some plain ascii text...</div> | ||
50 | <br/> | ||
51 | </div> | ||
52 | </td> | ||
53 | </tr> | ||
54 | </table> | ||
55 | </div> | ||
56 | </div> | ||
57 | </td> | ||
58 | </tr> | ||
59 | <tr class="signOkKeyOkH"> | ||
60 | <td dir="ltr">End of signed message</td> | ||
61 | </tr> | ||
62 | </table> | ||
63 | </div> | ||
64 | </div> | ||
65 | </td> | ||
66 | </tr> | ||
67 | <tr class="encrH"> | ||
68 | <td dir="ltr">End of encrypted message</td> | ||
69 | </tr> | ||
70 | </table> | ||
71 | </div> | ||
72 | </div> | ||
73 | </body> | ||
74 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/openpgp-encrypted-non-encrypted-attachment.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/openpgp-encrypted-non-encrypted-attachment.mbox.html new file mode 100644 index 00000000..6091ee5a --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/openpgp-encrypted-non-encrypted-attachment.mbox.html | |||
@@ -0,0 +1,74 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
11 | <tr class="encrH"> | ||
12 | <td dir="ltr">Encrypted message</td> | ||
13 | </tr> | ||
14 | <tr class="encrB"> | ||
15 | <td> | ||
16 | <div style="position: relative; word-wrap: break-word"> | ||
17 | <a name="att"/> | ||
18 | <div id="attachmentDiv"> | ||
19 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
20 | <tr class="signOkKeyOkH"> | ||
21 | <td dir="ltr"> | ||
22 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
23 | <tr> | ||
24 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
25 | <td align="right"> | ||
26 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
27 | </td> | ||
28 | </tr> | ||
29 | </table> | ||
30 | </td> | ||
31 | </tr> | ||
32 | <tr class="signOkKeyOkB"> | ||
33 | <td> | ||
34 | <a name="att1"/> | ||
35 | <div id="attachmentDiv1"> | ||
36 | <a name="att1.1"/> | ||
37 | <div id="attachmentDiv1.1"> | ||
38 | <div class="noquote"> | ||
39 | <div dir="ltr">test text</div> | ||
40 | </div> | ||
41 | </div> | ||
42 | </div> | ||
43 | </td> | ||
44 | </tr> | ||
45 | <tr class="signOkKeyOkH"> | ||
46 | <td dir="ltr">End of signed message</td> | ||
47 | </tr> | ||
48 | </table> | ||
49 | </div> | ||
50 | </div> | ||
51 | </td> | ||
52 | </tr> | ||
53 | <tr class="encrH"> | ||
54 | <td dir="ltr">End of encrypted message</td> | ||
55 | </tr> | ||
56 | </table> | ||
57 | </div> | ||
58 | <a name="att2"/> | ||
59 | <div id="attachmentDiv2"> | ||
60 | <hr/> | ||
61 | <div> | ||
62 | <a href="attachment:2?place=body"> | ||
63 | <img align="center" src="file:image.png" border="0" style="max-width: 100%"/> | ||
64 | </a> | ||
65 | </div> | ||
66 | <div> | ||
67 | <a href="attachment:2?place=body">image.png</a> | ||
68 | </div> | ||
69 | <div/> | ||
70 | </div> | ||
71 | </div> | ||
72 | </div> | ||
73 | </body> | ||
74 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/openpgp-signed-apple.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/openpgp-signed-apple.mbox.html new file mode 100644 index 00000000..092d5e1c --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/openpgp-signed-apple.mbox.html | |||
@@ -0,0 +1,63 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signWarn"> | ||
9 | <tr class="signWarnH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td>Not enough information to check signature validity.</td> | ||
14 | <td align="right"> | ||
15 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | </table> | ||
19 | </td> | ||
20 | </tr> | ||
21 | <tr class="signWarnB"> | ||
22 | <td> | ||
23 | <a name="att1"/> | ||
24 | <div id="attachmentDiv1"> | ||
25 | <a name="att1.2"/> | ||
26 | <div id="attachmentDiv1.2"> | ||
27 | <a name="att1.2.1"/> | ||
28 | <div id="attachmentDiv1.2.1"> | ||
29 | <div style="position: relative"> | ||
30 | <div class="">pre attachment</div> | ||
31 | </div> | ||
32 | </div> | ||
33 | <a name="att1.2.2"/> | ||
34 | <div id="attachmentDiv1.2.2"> | ||
35 | <hr/> | ||
36 | <div> | ||
37 | <a href="attachment:1.2.2?place=body"> | ||
38 | <img align="center" src="file:image.png" border="0" style="max-width: 100%"/> | ||
39 | </a> | ||
40 | </div> | ||
41 | <div> | ||
42 | <a href="attachment:1.2.2?place=body">image.png</a> | ||
43 | </div> | ||
44 | <div/> | ||
45 | </div> | ||
46 | <a name="att1.2.3"/> | ||
47 | <div id="attachmentDiv1.2.3"> | ||
48 | <div style="position: relative"> | ||
49 | <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">Some <span style=" font-weight:600;">HTML</span> text</p> | ||
50 | </div> | ||
51 | </div> | ||
52 | </div> | ||
53 | </div> | ||
54 | </td> | ||
55 | </tr> | ||
56 | <tr class="signWarnH"> | ||
57 | <td dir="ltr">End of signed message</td> | ||
58 | </tr> | ||
59 | </table> | ||
60 | </div> | ||
61 | </div> | ||
62 | </body> | ||
63 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/openpgp-signed-mailinglist+additional-children.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/openpgp-signed-mailinglist+additional-children.mbox.html new file mode 100644 index 00000000..cc49cbcc --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/openpgp-signed-mailinglist+additional-children.mbox.html | |||
@@ -0,0 +1,67 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <a name="att1.1"/> | ||
11 | <div id="attachmentDiv1.1"> | ||
12 | <div class="noquote"> | ||
13 | <div dir="ltr">hi..</div> | ||
14 | <br/> | ||
15 | <div dir="ltr">i noticed a new branch when i pulled kde-workspace today (finally!): </div> | ||
16 | <div dir="ltr">activities_optional</div> | ||
17 | <br/> | ||
18 | <div dir="ltr">the lone commit in it was pushed on april 1, so maybe it's an april fools </div> | ||
19 | <div dir="ltr">joke, but if it isn't, it looks like someone is trying to do something that </div> | ||
20 | <div dir="ltr">makes no sense (and has no chance of being merged into master). so if this is </div> | ||
21 | <div dir="ltr">a "for reals" branch, perhaps the motivation behind it can be shared?</div> | ||
22 | <br/> | ||
23 | <div dir="ltr">-- </div> | ||
24 | <div dir="ltr">Aaron J. Seigo</div> | ||
25 | </div> | ||
26 | </div> | ||
27 | <a name="att1.2"/> | ||
28 | <div id="attachmentDiv1.2"> | ||
29 | <hr/> | ||
30 | <div> | ||
31 | <a href="attachment:1.2?place=body"><img align="center" height="48" width="48" src="file:application-pgp-signature.svg" border="0" style="max-width: 100%" alt=""/>signature.asc</a> | ||
32 | </div> | ||
33 | <div>This is a digitally signed message part.</div> | ||
34 | </div> | ||
35 | <a name="att1.3"/> | ||
36 | <div id="attachmentDiv1.3"> | ||
37 | <table cellspacing="1" class="textAtm"> | ||
38 | <tr class="textAtmH"> | ||
39 | <td dir="ltr">broken.attachment</td> | ||
40 | </tr> | ||
41 | <tr class="textAtmB"> | ||
42 | <td> | ||
43 | <div class="noquote"> | ||
44 | <div dir="ltr">Let's break a signed message - This messageblock should not be here :D</div> | ||
45 | </div> | ||
46 | </td> | ||
47 | </tr> | ||
48 | </table> | ||
49 | </div> | ||
50 | </div> | ||
51 | <a name="att2"/> | ||
52 | <div id="attachmentDiv2"> | ||
53 | <div class="noquote"> | ||
54 | <div dir="ltr">_______________________________________________</div> | ||
55 | <div dir="ltr">Plasma-devel mailing list</div> | ||
56 | <div dir="ltr"> | ||
57 | <a href="mailto:Plasma-devel@kde.org">Plasma-devel@kde.org</a> | ||
58 | </div> | ||
59 | <div dir="ltr"> | ||
60 | <a href="https://mail.kde.org/mailman/listinfo/plasma-devel">https://mail.kde.org/mailman/listinfo/plasma-devel</a> | ||
61 | </div> | ||
62 | </div> | ||
63 | </div> | ||
64 | </div> | ||
65 | </div> | ||
66 | </body> | ||
67 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/smime-signed-apple.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/smime-signed-apple.mbox.html new file mode 100644 index 00000000..d3f3eeb3 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/inlined/smime-signed-apple.mbox.html | |||
@@ -0,0 +1,63 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signErr"> | ||
9 | <tr class="signErrH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td>Invalid signature.</td> | ||
14 | <td align="right"> | ||
15 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | </table> | ||
19 | </td> | ||
20 | </tr> | ||
21 | <tr class="signErrB"> | ||
22 | <td> | ||
23 | <a name="att1"/> | ||
24 | <div id="attachmentDiv1"> | ||
25 | <a name="att1.2"/> | ||
26 | <div id="attachmentDiv1.2"> | ||
27 | <a name="att1.2.1"/> | ||
28 | <div id="attachmentDiv1.2.1"> | ||
29 | <div style="position: relative">Olá Konqui,<div class="">Here is the pdf you asked for!</div><div class="">Cheers,</div><div class="">Quaack</div></div> | ||
30 | </div> | ||
31 | <a name="att1.2.2"/> | ||
32 | <div id="attachmentDiv1.2.2"> | ||
33 | <hr/> | ||
34 | <div> | ||
35 | <a href="attachment:1.2.2?place=body"> | ||
36 | <img align="center" src="file:image.png" border="0" style="max-width: 100%"/> | ||
37 | </a> | ||
38 | </div> | ||
39 | <div> | ||
40 | <a href="attachment:1.2.2?place=body">image.png</a> | ||
41 | </div> | ||
42 | <div/> | ||
43 | </div> | ||
44 | <a name="att1.2.3"/> | ||
45 | <div id="attachmentDiv1.2.3"> | ||
46 | <div style="position: relative"> | ||
47 | <blockquote type="cite" class=""> | ||
48 | <div class="">On 20 Jan 2017, at 10:35, Konqui <<a href="mailto:Konqui@kdab.com">Konqui</a></div> | ||
49 | </blockquote> | ||
50 | </div> | ||
51 | </div> | ||
52 | </div> | ||
53 | </div> | ||
54 | </td> | ||
55 | </tr> | ||
56 | <tr class="signErrH"> | ||
57 | <td dir="ltr">End of signed message</td> | ||
58 | </tr> | ||
59 | </table> | ||
60 | </div> | ||
61 | </div> | ||
62 | </body> | ||
63 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted-appendix.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted-appendix.mbox new file mode 100644 index 00000000..c05a7e69 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted-appendix.mbox | |||
@@ -0,0 +1,33 @@ | |||
1 | From test@kolab.org Wed, 25 May 2011 23:49:40 +0100 | ||
2 | From: OpenPGP Test <test@kolab.org> | ||
3 | To: test@kolab.org | ||
4 | Subject: inlinepgpencrypted | ||
5 | Date: Wed, 25 May 2011 23:49:40 +0100 | ||
6 | Message-ID: <1786696.yKXrOjjflF@herrwackelpudding.localhost> | ||
7 | X-KMail-Transport: GMX | ||
8 | X-KMail-Fcc: 28 | ||
9 | X-KMail-Drafts: 7 | ||
10 | X-KMail-Templates: 9 | ||
11 | User-Agent: KMail/4.6 beta5 (Linux/2.6.34.7-0.7-desktop; KDE/4.6.41; x86_64; git-0269848; 2011-04-19) | ||
12 | MIME-Version: 1.0 | ||
13 | Content-Transfer-Encoding: 7Bit | ||
14 | Content-Type: text/plain; charset="us-ascii" | ||
15 | |||
16 | -----BEGIN PGP MESSAGE----- | ||
17 | Version: GnuPG v2.0.15 (GNU/Linux) | ||
18 | |||
19 | hQEMAwzOQ1qnzNo7AQf/a3aNTLpQBfcUr+4AKsZQLj4h6z7e7a5AaCW8AG0wrbxN | ||
20 | kBYB7E5jdZh45DX/99gvoZslthWryUCX2kKZ3LtIllxKVjqNuK5hSt+SAuKkwiMR | ||
21 | Xcbf1KFKENKupgGSO9B2NJRbjoExdJ+fC3mGXnO3dT7xJJAo3oLE8Nivu+Bj1peY | ||
22 | E1wCf+vcTwVHFrA7SV8eMRb9Z9wBXmU8Q8e9ekJ7ZsRX3tMeBs6jvscVvfMf6DYY | ||
23 | N14snZBZuGNKT9a3DPny7IC1S0lHcaam34ogWwMi3FxPGJt/Lg52kARlkF5TDhcP | ||
24 | N6H0EB/iqDRjOOUoEVm8um5XOSR1FpEiAdD0DON3y9JPATnrYq7sgYZz3BVImYY+ | ||
25 | N/jV8fEiN0a34pcOq8NQedMuOsJHNBS5MtbQH/kJLq0MXBpXekGlHo4MKw0trISc | ||
26 | Rw3pW6/BFfhPJLni29g9tw== | ||
27 | =fRFW | ||
28 | -----END PGP MESSAGE----- | ||
29 | |||
30 | _______________________________________________ | ||
31 | test mailing list | ||
32 | test@lists.kde.org | ||
33 | http://kde.org | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted-appendix.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted-appendix.mbox.html new file mode 100644 index 00000000..8af2b1c6 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted-appendix.mbox.html | |||
@@ -0,0 +1,36 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div class="noquote"> | ||
15 | <div dir="ltr">some random text</div> | ||
16 | </div> | ||
17 | </td> | ||
18 | </tr> | ||
19 | <tr class="encrH"> | ||
20 | <td dir="ltr">End of encrypted message</td> | ||
21 | </tr> | ||
22 | </table> | ||
23 | <div class="noquote"> | ||
24 | <div dir="ltr">_______________________________________________</div> | ||
25 | <div dir="ltr">test mailing list</div> | ||
26 | <div dir="ltr"> | ||
27 | <a href="mailto:test@lists.kde.org">test@lists.kde.org</a> | ||
28 | </div> | ||
29 | <div dir="ltr"> | ||
30 | <a href="http://kde.org">http://kde.org</a> | ||
31 | </div> | ||
32 | </div> | ||
33 | </div> | ||
34 | </div> | ||
35 | </body> | ||
36 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted-appendix.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted-appendix.mbox.tree new file mode 100644 index 00000000..018f5c33 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted-appendix.mbox.tree | |||
@@ -0,0 +1,4 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::TextMessagePart | ||
3 | * MimeTreeParser::EncryptedMessagePart | ||
4 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted-error.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted-error.mbox new file mode 100644 index 00000000..529b4d3b --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted-error.mbox | |||
@@ -0,0 +1,55 @@ | |||
1 | From test@kolab.org Wed, 25 May 2011 23:49:40 +0100 | ||
2 | From: OpenPGP Test <test@kolab.org> | ||
3 | To: test@kolab.org | ||
4 | Subject: inlinepgpencrypted - no seckey | ||
5 | Date: Wed, 25 May 2011 23:49:40 +0100 | ||
6 | Message-ID: <1786696.yKXrOjjflF@herrwackelpudding.localhost> | ||
7 | X-KMail-Transport: GMX | ||
8 | X-KMail-Fcc: 28 | ||
9 | X-KMail-Drafts: 7 | ||
10 | X-KMail-Templates: 9 | ||
11 | User-Agent: KMail/4.6 beta5 (Linux/2.6.34.7-0.7-desktop; KDE/4.6.41; x86_64; git-0269848; 2011-04-19) | ||
12 | MIME-Version: 1.0 | ||
13 | Content-Transfer-Encoding: 7Bit | ||
14 | Content-Type: text/plain; charset="us-ascii" | ||
15 | |||
16 | -----BEGIN PGP MESSAGE----- | ||
17 | Version: GnuPG v2 | ||
18 | |||
19 | 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 | ||
53 | 3Qu241eOBdb6 | ||
54 | =J3lb | ||
55 | -----END PGP MESSAGE----- | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted-error.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted-error.mbox.html new file mode 100644 index 00000000..a4427e01 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted-error.mbox.html | |||
@@ -0,0 +1,24 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message (decryption not possible)<br/>Reason: Crypto plug-in "OpenPGP" could not decrypt the data.<br/>Error: Decryption failed</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="font-size:x-large; text-align:center; padding:20pt;">No secret key found to encrypt the message. It is encrypted for following keys:<br/><a href="kmail:showCertificate#gpg ### OpenPGP ### 553D4262DA4BADF2">0x553D4262DA4BADF2</a><br/><a href="kmail:showCertificate#gpg ### OpenPGP ### F6E6A3D126C630E0">0xF6E6A3D126C630E0</a></div> | ||
15 | </td> | ||
16 | </tr> | ||
17 | <tr class="encrH"> | ||
18 | <td dir="ltr">End of encrypted message</td> | ||
19 | </tr> | ||
20 | </table> | ||
21 | </div> | ||
22 | </div> | ||
23 | </body> | ||
24 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted-error.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted-error.mbox.tree new file mode 100644 index 00000000..6680b8bc --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted-error.mbox.tree | |||
@@ -0,0 +1,3 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::TextMessagePart | ||
3 | * MimeTreeParser::EncryptedMessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted.mbox new file mode 100644 index 00000000..b581602c --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted.mbox | |||
@@ -0,0 +1,29 @@ | |||
1 | From test@kolab.org Wed, 25 May 2011 23:49:40 +0100 | ||
2 | From: OpenPGP Test <test@kolab.org> | ||
3 | To: test@kolab.org | ||
4 | Subject: inlinepgpencrypted | ||
5 | Date: Wed, 25 May 2011 23:49:40 +0100 | ||
6 | Message-ID: <1786696.yKXrOjjflF@herrwackelpudding.localhost> | ||
7 | X-KMail-Transport: GMX | ||
8 | X-KMail-Fcc: 28 | ||
9 | X-KMail-Drafts: 7 | ||
10 | X-KMail-Templates: 9 | ||
11 | User-Agent: KMail/4.6 beta5 (Linux/2.6.34.7-0.7-desktop; KDE/4.6.41; x86_64; git-0269848; 2011-04-19) | ||
12 | MIME-Version: 1.0 | ||
13 | Content-Transfer-Encoding: 7Bit | ||
14 | Content-Type: text/plain; charset="us-ascii" | ||
15 | |||
16 | -----BEGIN PGP MESSAGE----- | ||
17 | Version: GnuPG v2.0.15 (GNU/Linux) | ||
18 | |||
19 | hQEMAwzOQ1qnzNo7AQf/a3aNTLpQBfcUr+4AKsZQLj4h6z7e7a5AaCW8AG0wrbxN | ||
20 | kBYB7E5jdZh45DX/99gvoZslthWryUCX2kKZ3LtIllxKVjqNuK5hSt+SAuKkwiMR | ||
21 | Xcbf1KFKENKupgGSO9B2NJRbjoExdJ+fC3mGXnO3dT7xJJAo3oLE8Nivu+Bj1peY | ||
22 | E1wCf+vcTwVHFrA7SV8eMRb9Z9wBXmU8Q8e9ekJ7ZsRX3tMeBs6jvscVvfMf6DYY | ||
23 | N14snZBZuGNKT9a3DPny7IC1S0lHcaam34ogWwMi3FxPGJt/Lg52kARlkF5TDhcP | ||
24 | N6H0EB/iqDRjOOUoEVm8um5XOSR1FpEiAdD0DON3y9JPATnrYq7sgYZz3BVImYY+ | ||
25 | N/jV8fEiN0a34pcOq8NQedMuOsJHNBS5MtbQH/kJLq0MXBpXekGlHo4MKw0trISc | ||
26 | Rw3pW6/BFfhPJLni29g9tw== | ||
27 | =fRFW | ||
28 | -----END PGP MESSAGE----- | ||
29 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted.mbox.html new file mode 100644 index 00000000..1f695bdf --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted.mbox.html | |||
@@ -0,0 +1,26 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div class="noquote"> | ||
15 | <div dir="ltr">some random text</div> | ||
16 | </div> | ||
17 | </td> | ||
18 | </tr> | ||
19 | <tr class="encrH"> | ||
20 | <td dir="ltr">End of encrypted message</td> | ||
21 | </tr> | ||
22 | </table> | ||
23 | </div> | ||
24 | </div> | ||
25 | </body> | ||
26 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted.mbox.inProgress.html b/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted.mbox.inProgress.html new file mode 100644 index 00000000..e5eb55d0 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted.mbox.inProgress.html | |||
@@ -0,0 +1,24 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Please wait while the message is being decrypted...</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="font-size:x-large; text-align:center; padding:20pt;"/> | ||
15 | </td> | ||
16 | </tr> | ||
17 | <tr class="encrH"> | ||
18 | <td dir="ltr">End of encrypted message</td> | ||
19 | </tr> | ||
20 | </table> | ||
21 | </div> | ||
22 | </div> | ||
23 | </body> | ||
24 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted.mbox.tree new file mode 100644 index 00000000..6680b8bc --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/inlinepgpencrypted.mbox.tree | |||
@@ -0,0 +1,3 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::TextMessagePart | ||
3 | * MimeTreeParser::EncryptedMessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/mailheader.css b/framework/src/domain/mimetreeparser/otp/autotests/data/mailheader.css new file mode 100644 index 00000000..10181957 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/mailheader.css | |||
@@ -0,0 +1,512 @@ | |||
1 | div.header { | ||
2 | margin-bottom: 10pt ! important; | ||
3 | } | ||
4 | |||
5 | table.textAtm { | ||
6 | margin-top: 10pt ! important; | ||
7 | margin-bottom: 10pt ! important; | ||
8 | } | ||
9 | |||
10 | tr.textAtmH, | ||
11 | tr.textAtmB, | ||
12 | tr.rfc822B { | ||
13 | font-weight: normal ! important; | ||
14 | } | ||
15 | |||
16 | tr.signInProgressH, | ||
17 | tr.rfc822H, | ||
18 | tr.encrH, | ||
19 | tr.signOkKeyOkH, | ||
20 | tr.signOkKeyBadH, | ||
21 | tr.signWarnH, | ||
22 | tr.signErrH { | ||
23 | font-weight: bold ! important; | ||
24 | } | ||
25 | |||
26 | tr.textAtmH td, | ||
27 | tr.textAtmB td { | ||
28 | padding: 3px ! important; | ||
29 | } | ||
30 | |||
31 | table.rfc822 { | ||
32 | width: 100% ! important; | ||
33 | border: solid 1px black ! important; | ||
34 | margin-top: 10pt ! important; | ||
35 | margin-bottom: 10pt ! important; | ||
36 | } | ||
37 | |||
38 | table.textAtm, | ||
39 | table.encr, | ||
40 | table.signWarn, | ||
41 | table.signErr, | ||
42 | table.signOkKeyBad, | ||
43 | table.signOkKeyOk, | ||
44 | table.signInProgress, | ||
45 | div.fancy.header table { | ||
46 | width: 100% ! important; | ||
47 | border-width: 0px ! important; | ||
48 | line-height: normal; | ||
49 | } | ||
50 | |||
51 | div.htmlWarn { | ||
52 | margin: 0px 5% ! important; | ||
53 | padding: 10px ! important; | ||
54 | text-align: left ! important; | ||
55 | line-height: normal; | ||
56 | } | ||
57 | |||
58 | div.fancy.header > div { | ||
59 | font-weight: bold ! important; | ||
60 | padding: 4px ! important; | ||
61 | line-height: normal; | ||
62 | } | ||
63 | |||
64 | div.fancy.header table { | ||
65 | padding: 2px ! important; | ||
66 | text-align: left ! important; | ||
67 | border-collapse: separate ! important; | ||
68 | } | ||
69 | |||
70 | div.fancy.header table th { | ||
71 | font-family: "Sans Serif" ! important; | ||
72 | font-size: 0px ! important; | ||
73 | |||
74 | padding: 0px ! important; | ||
75 | white-space: nowrap ! important; | ||
76 | border-spacing: 0px ! important; | ||
77 | text-align: left ! important; | ||
78 | vertical-align: top ! important; | ||
79 | background-color: #d6d2d0 ! important; | ||
80 | color: #221f1e ! important; | ||
81 | border: 1px ! important; | ||
82 | } | ||
83 | |||
84 | div.fancy.header table td { | ||
85 | font-family: "Sans Serif" ! important; | ||
86 | font-size: 0px ! important; | ||
87 | |||
88 | padding: 0px ! important; | ||
89 | border-spacing: 0px ! important; | ||
90 | text-align: left ! important; | ||
91 | vertical-align: top ! important; | ||
92 | width: 100% ! important; | ||
93 | background-color: #d6d2d0 ! important; | ||
94 | color: #221f1e ! important; | ||
95 | border: 1px ! important; | ||
96 | } | ||
97 | |||
98 | div.fancy.header table a:hover { | ||
99 | background-color: transparent ! important; | ||
100 | } | ||
101 | |||
102 | span.pimsmileytext { | ||
103 | position: absolute; | ||
104 | top: 0px; | ||
105 | left: 0px; | ||
106 | visibility: hidden; | ||
107 | } | ||
108 | |||
109 | img.pimsmileyimg { | ||
110 | } | ||
111 | |||
112 | div.quotelevelmark { | ||
113 | position: absolute; | ||
114 | margin-left:-10px; | ||
115 | } | ||
116 | |||
117 | @media screen { | ||
118 | |||
119 | body { | ||
120 | font-family: "Sans Serif" ! important; | ||
121 | font-size: 0px ! important; | ||
122 | color: #1f1c1b ! important; | ||
123 | background-color: #ffffff ! important; | ||
124 | } | ||
125 | |||
126 | a { | ||
127 | color: #0057ae ! important; | ||
128 | text-decoration: none ! important; | ||
129 | } | ||
130 | |||
131 | a.white { | ||
132 | color: white ! important; | ||
133 | } | ||
134 | |||
135 | a.black { | ||
136 | color: black ! important; | ||
137 | } | ||
138 | |||
139 | table.textAtm { background-color: #1f1c1b ! important; } | ||
140 | |||
141 | tr.textAtmH { | ||
142 | background-color: #ffffff ! important; | ||
143 | font-family: "Sans Serif" ! important; | ||
144 | font-size: 0px ! important; | ||
145 | } | ||
146 | |||
147 | tr.textAtmB { | ||
148 | background-color: #ffffff ! important; | ||
149 | } | ||
150 | |||
151 | table.signInProgress, | ||
152 | table.rfc822 { | ||
153 | background-color: #ffffff ! important; | ||
154 | } | ||
155 | |||
156 | tr.signInProgressH, | ||
157 | tr.rfc822H { | ||
158 | font-family: "Sans Serif" ! important; | ||
159 | font-size: 0px ! important; | ||
160 | } | ||
161 | |||
162 | table.encr { | ||
163 | background-color: #0069cc ! important; | ||
164 | } | ||
165 | |||
166 | tr.encrH { | ||
167 | background-color: #0080ff ! important; | ||
168 | color: #ffffff ! important; | ||
169 | font-family: "Sans Serif" ! important; | ||
170 | font-size: 0px ! important; | ||
171 | } | ||
172 | |||
173 | tr.encrB { background-color: #e0f0ff ! important; } | ||
174 | |||
175 | table.signOkKeyOk { | ||
176 | background-color: #33cc33 ! important; | ||
177 | } | ||
178 | |||
179 | tr.signOkKeyOkH { | ||
180 | background-color: #40ff40 ! important; | ||
181 | color: #27ae60 ! important; | ||
182 | font-family: "Sans Serif" ! important; | ||
183 | font-size: 0px ! important; | ||
184 | } | ||
185 | |||
186 | tr.signOkKeyOkB { background-color: #e8ffe8 ! important; } | ||
187 | |||
188 | table.signOkKeyBad { | ||
189 | background-color: #cccc33 ! important; | ||
190 | } | ||
191 | |||
192 | tr.signOkKeyBadH { | ||
193 | background-color: #ffff40 ! important; | ||
194 | color: #f67400 ! important; | ||
195 | font-family: "Sans Serif" ! important; | ||
196 | font-size: 0px ! important; | ||
197 | } | ||
198 | |||
199 | tr.signOkKeyBadB { background-color: #ffffe8 ! important; } | ||
200 | |||
201 | table.signWarn { | ||
202 | background-color: #cccc33 ! important; | ||
203 | } | ||
204 | |||
205 | tr.signWarnH { | ||
206 | background-color: #ffff40 ! important; | ||
207 | color: #f67400 ! important; | ||
208 | font-family: "Sans Serif" ! important; | ||
209 | font-size: 0px ! important; | ||
210 | } | ||
211 | |||
212 | tr.signWarnB { background-color: #ffffe8 ! important; } | ||
213 | |||
214 | table.signErr { | ||
215 | background-color: #cc0000 ! important; | ||
216 | } | ||
217 | |||
218 | tr.signErrH { | ||
219 | background-color: #ff0000 ! important; | ||
220 | color: #da4453 ! important; | ||
221 | font-family: "Sans Serif" ! important; | ||
222 | font-size: 0px ! important; | ||
223 | } | ||
224 | |||
225 | tr.signErrB { background-color: #ffe0e0 ! important; } | ||
226 | |||
227 | div.htmlWarn { | ||
228 | border: 2px solid #ff4040 ! important; | ||
229 | line-height: normal; | ||
230 | } | ||
231 | |||
232 | div.header { | ||
233 | font-family: "Sans Serif" ! important; | ||
234 | font-size: 0px ! important; | ||
235 | } | ||
236 | |||
237 | div.fancy.header > div { | ||
238 | background-color: #43ace8 ! important; | ||
239 | color: #ffffff ! important; | ||
240 | border: solid #221f1e 1px ! important; | ||
241 | line-height: normal; | ||
242 | } | ||
243 | |||
244 | div.fancy.header > div a[href] { color: #ffffff ! important; } | ||
245 | |||
246 | div.fancy.header > div a[href]:hover { text-decoration: underline ! important; } | ||
247 | |||
248 | div.fancy.header > div.spamheader { | ||
249 | background-color: #cdcdcd ! important; | ||
250 | border-top: 0px ! important; | ||
251 | padding: 3px ! important; | ||
252 | color: black ! important; | ||
253 | font-weight: bold ! important; | ||
254 | font-size: smaller ! important; | ||
255 | } | ||
256 | |||
257 | div.fancy.header > table.outer { | ||
258 | background-color: #d6d2d0 ! important; | ||
259 | color: #221f1e ! important; | ||
260 | border-bottom: solid #221f1e 1px ! important; | ||
261 | border-left: solid #221f1e 1px ! important; | ||
262 | border-right: solid #221f1e 1px ! important; | ||
263 | } | ||
264 | |||
265 | div.senderpic{ | ||
266 | padding: 0px ! important; | ||
267 | font-size:0.8em ! important; | ||
268 | border:1px solid #b3aba7 ! important; | ||
269 | background-color:#d6d2d0 ! important; | ||
270 | } | ||
271 | |||
272 | div.senderstatus{ | ||
273 | text-align:center ! important; | ||
274 | } | ||
275 | |||
276 | div.quotelevel1 { | ||
277 | color: #008000 ! important; | ||
278 | font-style: italic ! important; | ||
279 | } | ||
280 | |||
281 | div.quotelevel2 { | ||
282 | color: #007000 ! important; | ||
283 | font-style: italic ! important; | ||
284 | } | ||
285 | |||
286 | div.quotelevel3 { | ||
287 | color: #006000 ! important; | ||
288 | font-style: italic ! important; | ||
289 | } | ||
290 | |||
291 | div.deepquotelevel1 { | ||
292 | color: #008000 ! important; | ||
293 | font-style: italic ! important; | ||
294 | } | ||
295 | |||
296 | div.deepquotelevel2 { | ||
297 | color: #007000 ! important; | ||
298 | font-style: italic ! important; | ||
299 | } | ||
300 | |||
301 | div.deepquotelevel3 { | ||
302 | color: #006000 ! important; | ||
303 | font-style: italic ! important; | ||
304 | } | ||
305 | |||
306 | blockquote { | ||
307 | margin: 4pt 0 4pt 0; | ||
308 | padding: 0 0 0 1em; | ||
309 | border-left: 2px solid #008000; | ||
310 | unicode-bidi: -webkit-plaintext | ||
311 | } | ||
312 | |||
313 | blockquote blockquote { | ||
314 | margin: 4pt 0 4pt 0; | ||
315 | padding: 0 0 0 1em; | ||
316 | border-left: 2px solid #007000; | ||
317 | unicode-bidi: -webkit-plaintext | ||
318 | } | ||
319 | |||
320 | blockquote blockquote blockquote { | ||
321 | margin: 4pt 0 4pt 0; | ||
322 | padding: 0 0 0 1em; | ||
323 | border-left: 2px solid #006000; | ||
324 | unicode-bidi: -webkit-plaintext | ||
325 | } | ||
326 | |||
327 | blockquote blockquote blockquote blockquote { | ||
328 | margin: 4pt 0 4pt 0; | ||
329 | padding: 0 0 0 1em; | ||
330 | border-left: 2px solid #008000; | ||
331 | unicode-bidi: -webkit-plaintext | ||
332 | } | ||
333 | |||
334 | blockquote blockquote blockquote blockquote blockquote { | ||
335 | margin: 4pt 0 4pt 0; | ||
336 | padding: 0 0 0 1em; | ||
337 | border-left: 2px solid #007000; | ||
338 | unicode-bidi: -webkit-plaintext | ||
339 | } | ||
340 | |||
341 | blockquote blockquote blockquote blockquote blockquote blockquote { | ||
342 | margin: 4pt 0 4pt 0; | ||
343 | padding: 0 0 0 1em; | ||
344 | border-left: 2px solid #006000; | ||
345 | unicode-bidi: -webkit-plaintext | ||
346 | } | ||
347 | |||
348 | blockquote blockquote blockquote blockquote blockquote blockquote blockquote { | ||
349 | margin: 4pt 0 4pt 0; | ||
350 | padding: 0 0 0 1em; | ||
351 | border-left: 2px solid #008000; | ||
352 | unicode-bidi: -webkit-plaintext | ||
353 | } | ||
354 | |||
355 | blockquote blockquote blockquote blockquote blockquote blockquote blockquote blockquote { | ||
356 | margin: 4pt 0 4pt 0; | ||
357 | padding: 0 0 0 1em; | ||
358 | border-left: 2px solid #007000; | ||
359 | unicode-bidi: -webkit-plaintext | ||
360 | } | ||
361 | |||
362 | blockquote blockquote blockquote blockquote blockquote blockquote blockquote blockquote blockquote { | ||
363 | margin: 4pt 0 4pt 0; | ||
364 | padding: 0 0 0 1em; | ||
365 | border-left: 2px solid #006000; | ||
366 | unicode-bidi: -webkit-plaintext | ||
367 | } | ||
368 | |||
369 | .quotemarks{ | ||
370 | color:transparent; | ||
371 | font-size:0px; | ||
372 | } | ||
373 | |||
374 | } | ||
375 | @media print { | ||
376 | |||
377 | body { | ||
378 | font-family: "Sans Serif" ! important; | ||
379 | font-size: 9pt ! important; | ||
380 | color: #000000 ! important; | ||
381 | background-color: #ffffff ! important | ||
382 | } | ||
383 | |||
384 | tr.textAtmH, | ||
385 | tr.signInProgressH, | ||
386 | tr.rfc822H, | ||
387 | tr.encrH, | ||
388 | tr.signOkKeyOkH, | ||
389 | tr.signOkKeyBadH, | ||
390 | tr.signWarnH, | ||
391 | tr.signErrH, | ||
392 | div.header { | ||
393 | font-family: "Sans Serif" ! important; | ||
394 | font-size: 9pt ! important; | ||
395 | } | ||
396 | |||
397 | div.fancy.header > div { | ||
398 | background-color: #d6d2d0 ! important; | ||
399 | color: #221f1e ! important; | ||
400 | padding: 4px ! important; | ||
401 | border: solid #221f1e 1px ! important; | ||
402 | line-height: normal; | ||
403 | } | ||
404 | |||
405 | div.fancy.header > div a[href] { color: #221f1e ! important; } | ||
406 | |||
407 | div.fancy.header > table.outer{ | ||
408 | background-color: #d6d2d0 ! important; | ||
409 | color: #221f1e ! important; | ||
410 | border-bottom: solid #221f1e 1px ! important; | ||
411 | border-left: solid #221f1e 1px ! important; | ||
412 | border-right: solid #221f1e 1px ! important; | ||
413 | } | ||
414 | |||
415 | div.spamheader { | ||
416 | display:none ! important; | ||
417 | } | ||
418 | |||
419 | div.htmlWarn { | ||
420 | border: 2px solid #ffffff ! important; | ||
421 | line-height: normal; | ||
422 | } | ||
423 | |||
424 | div.senderpic{ | ||
425 | font-size:0.8em ! important; | ||
426 | border:1px solid black ! important; | ||
427 | background-color:#d6d2d0 ! important; | ||
428 | } | ||
429 | |||
430 | div.senderstatus{ | ||
431 | text-align:center ! important; | ||
432 | } | ||
433 | |||
434 | div.noprint { | ||
435 | display:none ! important; | ||
436 | } | ||
437 | |||
438 | blockquote { | ||
439 | margin: 4pt 0 4pt 0; | ||
440 | padding: 0 0 0 1em; | ||
441 | border-left: 2px solid #008000; | ||
442 | unicode-bidi: -webkit-plaintext | ||
443 | } | ||
444 | |||
445 | blockquote blockquote { | ||
446 | margin: 4pt 0 4pt 0; | ||
447 | padding: 0 0 0 1em; | ||
448 | border-left: 2px solid #007000; | ||
449 | unicode-bidi: -webkit-plaintext | ||
450 | } | ||
451 | |||
452 | blockquote blockquote blockquote { | ||
453 | margin: 4pt 0 4pt 0; | ||
454 | padding: 0 0 0 1em; | ||
455 | border-left: 2px solid #006000; | ||
456 | unicode-bidi: -webkit-plaintext | ||
457 | } | ||
458 | |||
459 | blockquote blockquote blockquote blockquote { | ||
460 | margin: 4pt 0 4pt 0; | ||
461 | padding: 0 0 0 1em; | ||
462 | border-left: 2px solid #008000; | ||
463 | unicode-bidi: -webkit-plaintext | ||
464 | } | ||
465 | |||
466 | blockquote blockquote blockquote blockquote blockquote { | ||
467 | margin: 4pt 0 4pt 0; | ||
468 | padding: 0 0 0 1em; | ||
469 | border-left: 2px solid #007000; | ||
470 | unicode-bidi: -webkit-plaintext | ||
471 | } | ||
472 | |||
473 | blockquote blockquote blockquote blockquote blockquote blockquote { | ||
474 | margin: 4pt 0 4pt 0; | ||
475 | padding: 0 0 0 1em; | ||
476 | border-left: 2px solid #006000; | ||
477 | unicode-bidi: -webkit-plaintext | ||
478 | } | ||
479 | |||
480 | blockquote blockquote blockquote blockquote blockquote blockquote blockquote { | ||
481 | margin: 4pt 0 4pt 0; | ||
482 | padding: 0 0 0 1em; | ||
483 | border-left: 2px solid #008000; | ||
484 | unicode-bidi: -webkit-plaintext | ||
485 | } | ||
486 | |||
487 | blockquote blockquote blockquote blockquote blockquote blockquote blockquote blockquote { | ||
488 | margin: 4pt 0 4pt 0; | ||
489 | padding: 0 0 0 1em; | ||
490 | border-left: 2px solid #007000; | ||
491 | unicode-bidi: -webkit-plaintext | ||
492 | } | ||
493 | |||
494 | blockquote blockquote blockquote blockquote blockquote blockquote blockquote blockquote blockquote { | ||
495 | margin: 4pt 0 4pt 0; | ||
496 | padding: 0 0 0 1em; | ||
497 | border-left: 2px solid #006000; | ||
498 | unicode-bidi: -webkit-plaintext | ||
499 | } | ||
500 | |||
501 | .quotemarks{ | ||
502 | color:transparent; | ||
503 | font-size:0px; | ||
504 | } | ||
505 | |||
506 | .quotemarksemptyline{ | ||
507 | color:transparent; | ||
508 | font-size:0px; | ||
509 | line-height: 12pt; | ||
510 | } | ||
511 | |||
512 | } | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/no-content-type.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/no-content-type.mbox new file mode 100644 index 00000000..ad050d8c --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/no-content-type.mbox | |||
@@ -0,0 +1,7 @@ | |||
1 | From: hans@example.com | ||
2 | To: karl@example.com | ||
3 | Subject: Simple Mail Without Content-Type Header | ||
4 | Date: Sat, 15 May 2010 10:52:24 +0200 | ||
5 | MIME-Version: 1.0 | ||
6 | |||
7 | asdfasdf \ No newline at end of file | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/no-content-type.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/no-content-type.mbox.html new file mode 100644 index 00000000..9e3eb752 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/no-content-type.mbox.html | |||
@@ -0,0 +1,14 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <div class="noquote"> | ||
9 | <div dir="ltr">asdfasdf</div> | ||
10 | </div> | ||
11 | </div> | ||
12 | </div> | ||
13 | </body> | ||
14 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/no-content-type.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/no-content-type.mbox.tree new file mode 100644 index 00000000..c003ec97 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/no-content-type.mbox.tree | |||
@@ -0,0 +1,3 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::TextMessagePart | ||
3 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encoded.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encoded.mbox new file mode 100644 index 00000000..168c8dc4 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encoded.mbox | |||
@@ -0,0 +1,33 @@ | |||
1 | Content-Type: text/plain; charset="us-ascii" | ||
2 | Content-Transfer-Encoding: 7bit | ||
3 | |||
4 | -----BEGIN PGP MESSAGE----- | ||
5 | Version: GnuPG v2 | ||
6 | |||
7 | owGdk31MlVUcx5G3jClvI1JH7GiOil0uYJATBW8FK6HkDtBJI93heQ6Xk8/L9Tnn | ||
8 | XExALDfJQaJutl4UzUoCIxDwos0XTLktqJaJkJE5QAU3yMKpkRqdc+GC/dsfz/bs | ||
9 | ec7v+/v+Pr/v2TnbxytgxvUt8T99cCirZEa9zw/5fopuIHX1xsjjr4gXgO2EqUDW | ||
10 | +WdAMAVQRdQEJF0jSKKIMgNAGdsxkbBmA0jB1AxSdQ1JAAIZQxUo/BgjZpCN5Kn6 | ||
11 | SVEVMgPzX69CJCENEqFqYwgo2MYUCKAENjCu4MAOZBgQCNH/9NUoAoVIkw1kTLfl | ||
12 | 6qquKJhMeDYDqwERQRoVf9yOkI2/KTgfGbp4J5R3ViGlvGTKoANTiABk3I4ZrORF | ||
13 | FGsSlhmXmTSJNKyaAKPArhsUAjc1oECOAcOHbXp8samehJOAhsSAAxViSUzKFGpg | ||
14 | CSPCoWm6BiiXFNb/9waeRxqCmuhpM6ADy5P+zGAVBbyAHwYF/CQxATtTHFiDXIP7 | ||
15 | Uu3IEPZMDytieYokUhQOEpENTLCRuEegYYLFERXatMm5+dIoINCGBVIzeJEZMB8L | ||
16 | mzK043xG3OimUQvHwF4IDUT5kqc5FyBmw1yJd1AAFtZkjKh7BN7GAd07nkSK+ayG | ||
17 | 5gEpOEoSUwnUPPQFc13GfOGGTjwfPcFSMQ8aF3OnbRoIDxJUEGGQ43PvyyjUNYm5 | ||
18 | R+L+dQnzGg1SXeCw8wDTiemoG4YIIH/s0OCjY5E/VRfsTLyESO61GVgW++c1qlBd | ||
19 | oQGDUYNre9xPB0NcEnFZJoPppi4o83gU8MxxFCK9Ewvk94bz4Lk2B2z3jvD1mhHg | ||
20 | 5e/nLW60V8CjwZ7LTpKCxjNIzhNRXcER/6RVXUzaGdocqGY3vd+5LO7+qSV3pdFP | ||
21 | +s6tv3Jp8EZg+V9qza9zKhf4b3xn4MfVSYOW+qaihPsHrc3O5hpzXCV77sROqxWw | ||
22 | vbfaOrpClvTszr8+8pVc/ELc0aeOm+856kqfDYNZmUXt33+Y1nLT4nvH0tomz47f | ||
23 | tfzP+dlpQW8vRj3v+qcXyXpef3Hvldy2gfECZ3LMGdMomlsR8fQm42zMcLh3eW1N | ||
24 | Xszwqt5dLXimuVk6vb+/etNN8xgeuhoWeb79myzXg9jUv11xbQ8OR9/wnXP7QGzj | ||
25 | kWN+v+RpX58qa2dbTr2VeMn/aPJrOZ3ZYS0dW7s6dhcu/3lzT1DdhS8zGgIrynIH | ||
26 | tjkf21tmXtZ8pOjj/a7xsahsEGKxLG4h+St9Oj9ace1kn1+vdWl06+nEvhPlOWnh | ||
27 | 5OVrw1nzTv6+pjo3K9Vr3YFZeZmu6K1jA2OW7M96Bs85ChL23ck95Cx5/bfuHeX3 | ||
28 | wktCXYN1/fvWpxxIfyk2/pm0N4bCRyrfS8z13VPNMr6rckbuP1YS2rp0z27X/FEy | ||
29 | FPHm4OHHv7iXsuaPg5dpg6XWN9B/SG/81Bq8tv5WwMjFRVUZId6Rn+sL68uudls3 | ||
30 | z+vMvLwwrdw5t+Pb5ISuppDUVkvmme4nTahhwYX7setmpdxt29ZeO5MFPFK6Pep2 | ||
31 | +nlHdfFa78ZFpSMV/Q1n/wU= | ||
32 | =zzr4 | ||
33 | -----END PGP MESSAGE----- | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encoded.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encoded.mbox.html new file mode 100644 index 00000000..585bb4f0 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encoded.mbox.html | |||
@@ -0,0 +1,35 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signWarn"> | ||
9 | <tr class="signWarnH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td>Not enough information to check signature validity.</td> | ||
14 | <td align="right"> | ||
15 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | </table> | ||
19 | </td> | ||
20 | </tr> | ||
21 | <tr class="signWarnB"> | ||
22 | <td> | ||
23 | <div class="noquote"> | ||
24 | <div dir="ltr">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec a diam lectus. Sed sit amet ipsum mauris. Maecenas congue ligula ac quam viverra nec consectetur ante hendrerit. Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean ut gravida lorem. Ut turpis felis, pulvinar a semper sed, adipiscing id dolor. Pellentesque auctor nisi id magna consequat sagittis. Curabitur dapibus enim sit amet elit pharetra tincidunt feugiat nisl imperdiet. Ut convallis libero in urna ultrices accumsan. Donec sed odio eros. Donec viverra mi quis quam pulvinar at malesuada arcu rhoncus. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. In rutrum accumsan ultricies. Mauris vitae nisi at sem facilisis semper ac in est.</div> | ||
25 | </div> | ||
26 | </td> | ||
27 | </tr> | ||
28 | <tr class="signWarnH"> | ||
29 | <td dir="ltr">End of signed message</td> | ||
30 | </tr> | ||
31 | </table> | ||
32 | </div> | ||
33 | </div> | ||
34 | </body> | ||
35 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encoded.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encoded.mbox.tree new file mode 100644 index 00000000..ea8223fd --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encoded.mbox.tree | |||
@@ -0,0 +1,4 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::TextMessagePart | ||
3 | * MimeTreeParser::EncryptedMessagePart | ||
4 | * MimeTreeParser::SignedMessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted+signed.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted+signed.mbox new file mode 100644 index 00000000..fbe5ce7f --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted+signed.mbox | |||
@@ -0,0 +1,46 @@ | |||
1 | From test@kolab.org Wed, 08 Sep 2010 17:02:52 +0200 | ||
2 | From: OpenPGP Test <test@kolab.org> | ||
3 | To: test@kolab.org | ||
4 | Subject: OpenPGP encrypted | ||
5 | Date: Wed, 08 Sep 2010 17:02:52 +0200 | ||
6 | User-Agent: KMail/4.6 pre (Linux/2.6.34-rc2-2-default; KDE/4.5.60; x86_64; ; ) | ||
7 | MIME-Version: 1.0 | ||
8 | Content-Type: multipart/encrypted; boundary="nextPart1357031.ppLHckZtsp"; protocol="application/pgp-encrypted" | ||
9 | Content-Transfer-Encoding: 7Bit | ||
10 | |||
11 | |||
12 | --nextPart1357031.ppLHckZtsp | ||
13 | Content-Type: application/pgp-encrypted | ||
14 | Content-Disposition: attachment | ||
15 | |||
16 | Version: 1 | ||
17 | --nextPart1357031.ppLHckZtsp | ||
18 | Content-Type: application/octet-stream | ||
19 | Content-Disposition: inline; filename="msg.asc" | ||
20 | |||
21 | -----BEGIN PGP MESSAGE----- | ||
22 | Version: GnuPG v2 | ||
23 | |||
24 | hQEMAwzOQ1qnzNo7AQgAkQI925mOOybpzcGcjUE7jmfMVoUvJW6Br9Zx9UEtko5H | ||
25 | fdmnrrUhFDyhBdwcg2E6AChipNcJjZhdX17lNAO0kI2IoPJAEkX9lyhjoiVEH/M8 | ||
26 | xmJEKFRejYzefx0S8esKyqqtfAmMKfsA5HmKRY8iDmQnI5d/FKhkcqLTJYo7fQyL | ||
27 | rEEycdr5PU5OJbMtE5+8+kbmG8PywjiCCad68FXakXIEFyWX1A99W/0ScWtqrqDB | ||
28 | kuQSdxJs4aAZWopxGKxDobt/qVyG6W6+PUnLx3eg80KytcWNxLJRV7WEJMj4OYCU | ||
29 | JdHrh4J1DTTRbuRmqx9de3fBDFHNNZpJP43UJYJWtoSMAxiZbYU0+6KtAQQAnRxD | ||
30 | XNwzBSmPk9NG3HYf/RleTAS8/fMp3D973Y3VF5JV72ljWqZO/1o/3RIpD0pl5nSE | ||
31 | nI0wPyncmPvAgQl5EAKTdYonKLuMCTbQ4eT7vkOdfA/HUxgaoE8ppH/OYXDDiqz/ | ||
32 | 2GlNCCHcaQcVWwkHbWWgyhd/VvB7Mt9PVqPgTsHSwQ4BZf/JDwWe3MDAg21Raryf | ||
33 | dN4ZmWUzd3osDIRyy8H2hZL9vgZ3r0auIP6DMyYrPf3yTj9ApZeBiIpgBvqMwvR/ | ||
34 | 8si6r1JaXr48KRCxAkn9fIXe2jMwQE2bk5tYDrTXY868V3DA5iKq1dgXUSn0tzG3 | ||
35 | 0x9pjaOFkwxm0wtlpwnhZREJ9/ieIY7hy6p7CDpq4ZGRh8jQta4tWrjxN0wly+Dh | ||
36 | a9TjzHzgTh9BTh7vjcDLitOQFL5NcCQtK717FQ5Z1DRnkHDVLPoyPnW+5sllOVr9 | ||
37 | UcqNXwrPbrtElFjHULL5Y1pem1+AE6nCAtlvCAc7cil6QDsU508sOXW7BhTWATIU | ||
38 | tGHg/nIC0qVs24LR3MyYrwvfXL2JOkN/IK/g+0bbs6DMYVYaEOjcjqtidxWuLsE5 | ||
39 | aFEwlUFzcTcSauW+AOKwH+YFihRnlh9+4taaZxGZeutb12D5u8eEk+3nyVcsdogY | ||
40 | k/nT6ElN8i/Z2vgcxL6ABvB+g/bZmp/eCJphDNYc00lP8NMC4EEJvTZL438ThJ3j | ||
41 | wz0Qo4PlV0/OMXYxP2iZup2/rCe+pkmc9Gyz3Mkal4/9bBtIgP9cWBR7JZLMrK50 | ||
42 | KO4+NtrZYEY4JXRJlAo= | ||
43 | =1lYB | ||
44 | -----END PGP MESSAGE----- | ||
45 | |||
46 | --nextPart1357031.ppLHckZtsp-- | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted+signed.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted+signed.mbox.html new file mode 100644 index 00000000..54c58b85 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted+signed.mbox.html | |||
@@ -0,0 +1,52 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
15 | <tr class="signOkKeyOkH"> | ||
16 | <td dir="ltr"> | ||
17 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
18 | <tr> | ||
19 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
20 | <td align="right"> | ||
21 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
22 | </td> | ||
23 | </tr> | ||
24 | </table> | ||
25 | </td> | ||
26 | </tr> | ||
27 | <tr class="signOkKeyOkB"> | ||
28 | <td> | ||
29 | <div style="position: relative; word-wrap: break-word"> | ||
30 | <a name="att"/> | ||
31 | <div id="attachmentDiv"> | ||
32 | <div class="noquote"> | ||
33 | <div dir="ltr">encrypted message text</div> | ||
34 | </div> | ||
35 | </div> | ||
36 | </div> | ||
37 | </td> | ||
38 | </tr> | ||
39 | <tr class="signOkKeyOkH"> | ||
40 | <td dir="ltr">End of signed message</td> | ||
41 | </tr> | ||
42 | </table> | ||
43 | </td> | ||
44 | </tr> | ||
45 | <tr class="encrH"> | ||
46 | <td dir="ltr">End of encrypted message</td> | ||
47 | </tr> | ||
48 | </table> | ||
49 | </div> | ||
50 | </div> | ||
51 | </body> | ||
52 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted+signed.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted+signed.mbox.tree new file mode 100644 index 00000000..7d5bbeb7 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted+signed.mbox.tree | |||
@@ -0,0 +1,5 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::EncryptedMessagePart | ||
3 | * MimeTreeParser::SignedMessagePart | ||
4 | * MimeTreeParser::TextMessagePart | ||
5 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-applemail.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-applemail.mbox new file mode 100644 index 00000000..f5d083ff --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-applemail.mbox | |||
@@ -0,0 +1,52 @@ | |||
1 | Received: from konqi | ||
2 | From: "Konqui" <konqi@example.org> | ||
3 | To: "Bird" <bird@example.org> | ||
4 | Subject: gpg problem 1/2 | ||
5 | Date: Tue, 22 Mar 2016 17:09:18 +0100 | ||
6 | Message-ID: <123456@example.org> | ||
7 | Accept-Language: de-DE, en-US | ||
8 | Content-Language: en-US | ||
9 | Content-Type: multipart/mixed; | ||
10 | boundary="_003_55514CDCA78D430384C5F0810DF10C7Adsmpgde_" | ||
11 | MIME-Version: 1.0 | ||
12 | |||
13 | |||
14 | --_003_55514CDCA78D430384C5F0810DF10C7Adsmpgde_ | ||
15 | Content-Type: text/plain; charset="us-ascii" | ||
16 | |||
17 | |||
18 | --_003_55514CDCA78D430384C5F0810DF10C7Adsmpgde_ | ||
19 | Content-Type: application/pgp-encrypted; | ||
20 | name="PGPMIME Versions Identification" | ||
21 | Content-Description: PGP/MIME Versions Identification | ||
22 | Content-Disposition: attachment; filename="PGPMIME Versions Identification"; | ||
23 | size=77; creation-date="Tue, 22 Mar 2016 16:09:18 GMT"; | ||
24 | modification-date="Tue, 22 Mar 2016 16:09:18 GMT" | ||
25 | Content-ID: <D82BB3DF89947646AD6C4C24C8C54BAC@example.org> | ||
26 | Content-Transfer-Encoding: base64 | ||
27 | |||
28 | VmVyc2lvbjogMQ0NCg== | ||
29 | |||
30 | --_003_55514CDCA78D430384C5F0810DF10C7Adsmpgde_ | ||
31 | Content-Type: application/octet-stream; name="encrypted.asc" | ||
32 | Content-Description: OpenPGP encrypted message.asc | ||
33 | Content-Disposition: attachment; filename="encrypted.asc"; size=872; | ||
34 | creation-date="Tue, 22 Mar 2016 16:09:18 GMT"; | ||
35 | modification-date="Tue, 22 Mar 2016 16:09:18 GMT" | ||
36 | Content-ID: <58A712E65AB1824AB726904A6449178F@example.org> | ||
37 | Content-Transfer-Encoding: base64 | ||
38 | |||
39 | LS0tLS1CRUdJTiBQR1AgTUVTU0FHRS0tLS0tClZlcnNpb246IEdudVBHIHYxCkNvbW1lbnQ6IFVz | ||
40 | aW5nIEdudVBHIHdpdGggSWNlZG92ZSAtIGh0dHA6Ly93d3cuZW5pZ21haWwubmV0LwoKaEl3REdK | ||
41 | bHRoVFQ3b3EwQkEvOU50TExYYmlJSlZTNnBPeW53RWVTem5yUUs3a1lWbGE4Uk00My8vSkVDQ2tH | ||
42 | SgphekVhU0J6bmFiQnY2ZXBhRm1RdFZITE1YbENiWm5NbVc5bG95cVBCZk1vQW1zNmtLS0JkRy9q | ||
43 | cWh1czg5aVhFCitzZVhuZ0MyMzNWYS9nWk1iMkR4T3FJb2tWTmZqOXRwUjd4UTh3Uy9qSFREaUxO | ||
44 | YzFHT1FDN2t1NDJ6MmJOTEEKSVFGUkQvcWJCRno4OWhVNHdQNGNZb0F5c09uRURvakZyc3JuQ2lk | ||
45 | VEhKT0pybmRNNlBQVXRIL2pRQ3lmci9FRwoydFNwSndZS3ZtVDZseTN5cWFHTEJ0UlBJeGl2K2RN | ||
46 | ZSs3eXcwdDQwcWJqdnZhVEdhdkVyRUJKRUtYNWVXYlROCi9zamFqSHBVSHFzNlNJaU1oZUg5ZHIr | ||
47 | V2Z6Rk9OdFZiUEVnR1JtT0VSaGxnVGwvbkxvODZBWnBqSnJvSUdLSkoKdFRIQ2NvUUdBV0crTjd3 | ||
48 | ckNFMVJ4UjBra01zNG5Sb3pqMFRMdTZaeVhNcytIMDYzTWV3VFBOeE5BaVFUMU5iaQp1ZEtXbWZM | ||
49 | Qmx4bjA2cCtKRHpVS3hqOFBGd09iZGJ4VHZBQ3piQXZCWTFhSE1RPT0KPW1MbDMKLS0tLS1FTkQg | ||
50 | UEdQIE1FU1NBR0UtLS0tLQoK | ||
51 | |||
52 | --_003_55514CDCA78D430384C5F0810DF10C7Adsmpgde_-- | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-applemail.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-applemail.mbox.html new file mode 100644 index 00000000..ca8d7fbb --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-applemail.mbox.html | |||
@@ -0,0 +1,39 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"/> | ||
10 | <a name="att2"/> | ||
11 | <div id="attachmentDiv2"> | ||
12 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
13 | <tr class="encrH"> | ||
14 | <td dir="ltr">Encrypted message</td> | ||
15 | </tr> | ||
16 | <tr class="encrB"> | ||
17 | <td> | ||
18 | <div style="position: relative; word-wrap: break-word"> | ||
19 | <a name="att"/> | ||
20 | <div id="attachmentDiv"> | ||
21 | <a name="att1"/> | ||
22 | <div id="attachmentDiv1"> | ||
23 | <div class="noquote"> | ||
24 | <div dir="ltr">test</div> | ||
25 | </div> | ||
26 | </div> | ||
27 | </div> | ||
28 | </div> | ||
29 | </td> | ||
30 | </tr> | ||
31 | <tr class="encrH"> | ||
32 | <td dir="ltr">End of encrypted message</td> | ||
33 | </tr> | ||
34 | </table> | ||
35 | </div> | ||
36 | </div> | ||
37 | </div> | ||
38 | </body> | ||
39 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-applemail.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-applemail.mbox.tree new file mode 100644 index 00000000..8ef3df2d --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-applemail.mbox.tree | |||
@@ -0,0 +1,7 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::MimeMessagePart | ||
3 | * MimeTreeParser::TextMessagePart | ||
4 | * MimeTreeParser::EncryptedMessagePart | ||
5 | * MimeTreeParser::MimeMessagePart | ||
6 | * MimeTreeParser::TextMessagePart | ||
7 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox new file mode 100644 index 00000000..2d9726ea --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox | |||
@@ -0,0 +1,115 @@ | |||
1 | From test@kolab.org Fri May 01 15:12:47 2015 | ||
2 | From: testkey <test@kolab.org> | ||
3 | To: you@you.com | ||
4 | Subject: enc & non enc attachment | ||
5 | Date: Fri, 01 May 2015 17:12:47 +0200 | ||
6 | Message-ID: <13897561.XENKdJMSlR@tabin.local> | ||
7 | X-KMail-Identity: 1197256126 | ||
8 | User-Agent: KMail/4.13.0.1 (Linux/3.19.1-towo.1-siduction-amd64; KDE/4.14.2; x86_64; git-cd33034; 2015-04-11) | ||
9 | MIME-Version: 1.0 | ||
10 | Content-Type: multipart/mixed; boundary="nextPart1939768.sIoLGH0PD8" | ||
11 | Content-Transfer-Encoding: 7Bit | ||
12 | |||
13 | This is a multi-part message in MIME format. | ||
14 | |||
15 | --nextPart1939768.sIoLGH0PD8 | ||
16 | Content-Type: multipart/encrypted; boundary="nextPart2814166.CHKktCGlQ3"; protocol="application/pgp-encrypted" | ||
17 | |||
18 | |||
19 | --nextPart2814166.CHKktCGlQ3 | ||
20 | Content-Type: application/pgp-encrypted | ||
21 | Content-Disposition: attachment | ||
22 | Content-Transfer-Encoding: 7Bit | ||
23 | |||
24 | Version: 1 | ||
25 | --nextPart2814166.CHKktCGlQ3 | ||
26 | Content-Type: application/octet-stream | ||
27 | Content-Disposition: inline; filename="msg.asc" | ||
28 | Content-Transfer-Encoding: 7Bit | ||
29 | |||
30 | -----BEGIN PGP MESSAGE----- | ||
31 | Version: GnuPG v2 | ||
32 | |||
33 | hIwDGJlthTT7oq0BA/9cXFQ6mN9Vxnc2B9M10odS3/6z1tsIY9oJdsiOjpfxqapX | ||
34 | P7nOzR/jNWdFQanXoG1SjAcY2FeZEN0c3SkxEM6R5QVF1vMh/Xsni1clI+peZyVT | ||
35 | Z4OSU74YCfYLg+cgDnPCF3kyNPVe6Z1pnfWOCZNCG3rpApw6UVLN63ScWC6eQIUB | ||
36 | DAMMzkNap8zaOwEIANKHn1svvj+hBOIZYf8R+q2Bw7cd4xEChiJ7uQLnD98j0Fh1 | ||
37 | 85v7/8JbZx6rEDDenPp1mCciDodb0aCmi0XLuzJz2ANGTVflfq+ZA+v1pwLksWCs | ||
38 | 0YcHLEjOJzjr3KKmvu6wqnun5J2yV69K3OW3qTTGhNvcYZulqQ617pPa48+sFCgh | ||
39 | nM8TMAD0ElVEwmMtrS3AWoJz52Af+R3YzpAnX8NzV317/JG+b6e2ksl3tR7TWp1q | ||
40 | 2FOqC1sXAxuv+DIz4GgRfaK1+xYr2ckkg+H/3HJqa5LmJ7rGCyv+Epfp9u+OvdBG | ||
41 | PBvuCtO3tm0crmnttMw57Gy35BKutRf/8MpBj/nS6QFX0t7XOLeL4Me7/a2H20wz | ||
42 | HZsuRGDXMCh0lL0FYCBAwdbbYvvy0gz/5iaNvoADtaIu+VtbFNrTUN0SwuL+AIFS | ||
43 | +WIiaSbFt4Ng3t9YmqL6pqB7fjxI10S+PK0s7ABqe4pgbzUWWt1yzBcxfk8l/47Q | ||
44 | JrlvcE7HuDOhNOHfZIgUP2Dbeu+pVvHIJbmLsNWpl4s+nHhoxc9HrVhYG/MTZtQ3 | ||
45 | kkUWviegO6mwEZjQvgBxjWib7090sCxkO847b8A93mfQNHnuy2ZEEJ+9xyk7nIWs | ||
46 | 4RsiNR8pYc/SMvdocyAvQMH/qSvmn/IFJ+jHhtT8UJlXJ0bHvXTHjHMqBp6fP69z | ||
47 | Jh1ERadWQdMaTkzQ+asl+kl/x3p6RZP8MEVbZIl/3pcV+xiFCYcFu2TETKMtbW+b | ||
48 | NYOlrltFxFDvyu3WeNNp0g9k0nFpD/T1OXHRBRcbUDWE4QF6NWTm6NO9wy2UYHCi | ||
49 | 7QTSecBWgMaw7cUdwvnW6chIVoov1pm69BI9D0PoV76zCI7KzpiDsTFxdilKwbQf | ||
50 | K/PDnv9Adx3ERh0/F8llBHrj2UGsRs4aHSEBDBJIHDCp8+lqtsRcINQBKEU3qIjt | ||
51 | wf5vizdaVIgQnsD2z8QmBQ7QCCipI0ur6GKl+YWDDOSDLDUs9dK4A6xo/4Q0bsnI | ||
52 | rH63ti5HslGq6uArfFkewH2MWff/8Li3uGEqzpK5NhP5UpbArelK+QaQQP5SdsmW | ||
53 | XFwUqDS4QTCKNJXw/5SQMl8UE10l2Xaav3TkiOYTcBcvPNDovYgnMyRff/tTeFa8 | ||
54 | 83STkvpGtkULkCntp22fydv5rg6DZ7eJrYfC2oZXdM87hHhUALUO6Y/VtVmNdNYw | ||
55 | F3Uim4PDuLIKt+mFqRtFqnWm+5X/AslC31qLkjH+Fbb83TY+mC9gbIn7CZGJRCjn | ||
56 | zzzMX2h15V/VHzNUgx9V/h28T0/z25FxoozZiJxpmhOtqoxMHp+y6nXXfMoIAD1D | ||
57 | 963Pc7u1HS0ny54A7bqc6KKd4W9IF7HkXn3SoBwCyn0IOPoKQTDD8mW3lbBI6+h9 | ||
58 | vP+MAQpfD8s+3VZ9r7OKYCVmUv47ViTRlf428Co6WT7rTHjGM09tqz826fTOXA== | ||
59 | =6Eu9 | ||
60 | -----END PGP MESSAGE----- | ||
61 | |||
62 | --nextPart2814166.CHKktCGlQ3-- | ||
63 | |||
64 | --nextPart1939768.sIoLGH0PD8 | ||
65 | Content-Disposition: attachment; filename="image.png" | ||
66 | Content-Transfer-Encoding: base64 | ||
67 | Content-Type: image/png; name="image.png" | ||
68 | |||
69 | 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 | ||
112 | o/0d59+Lh3Y1HHcAAAAASUVORK5CYII= | ||
113 | |||
114 | --nextPart1939768.sIoLGH0PD8-- | ||
115 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox.html new file mode 100644 index 00000000..092a3440 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox.html | |||
@@ -0,0 +1,77 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
11 | <tr class="encrH"> | ||
12 | <td dir="ltr">Encrypted message</td> | ||
13 | </tr> | ||
14 | <tr class="encrB"> | ||
15 | <td> | ||
16 | <div style="position: relative; word-wrap: break-word"> | ||
17 | <a name="att"/> | ||
18 | <div id="attachmentDiv"> | ||
19 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
20 | <tr class="signOkKeyOkH"> | ||
21 | <td dir="ltr"> | ||
22 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
23 | <tr> | ||
24 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
25 | <td align="right"> | ||
26 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
27 | </td> | ||
28 | </tr> | ||
29 | </table> | ||
30 | </td> | ||
31 | </tr> | ||
32 | <tr class="signOkKeyOkB"> | ||
33 | <td> | ||
34 | <a name="att1"/> | ||
35 | <div id="attachmentDiv1"> | ||
36 | <a name="att1.1"/> | ||
37 | <div id="attachmentDiv1.1"> | ||
38 | <div class="noquote"> | ||
39 | <div dir="ltr">test text</div> | ||
40 | </div> | ||
41 | </div> | ||
42 | <a name="att1.2"/> | ||
43 | <div id="attachmentDiv1.2"> | ||
44 | <hr/> | ||
45 | <div> | ||
46 | <a href="attachment:1:e0:1.2?place=body"><img align="center" height="48" width="48" src="file:text-plain.svg" border="0" style="max-width: 100%" alt=""/>file.txt</a> | ||
47 | </div> | ||
48 | <div/> | ||
49 | </div> | ||
50 | </div> | ||
51 | </td> | ||
52 | </tr> | ||
53 | <tr class="signOkKeyOkH"> | ||
54 | <td dir="ltr">End of signed message</td> | ||
55 | </tr> | ||
56 | </table> | ||
57 | </div> | ||
58 | </div> | ||
59 | </td> | ||
60 | </tr> | ||
61 | <tr class="encrH"> | ||
62 | <td dir="ltr">End of encrypted message</td> | ||
63 | </tr> | ||
64 | </table> | ||
65 | </div> | ||
66 | <a name="att2"/> | ||
67 | <div id="attachmentDiv2"> | ||
68 | <hr/> | ||
69 | <div> | ||
70 | <a href="attachment:2?place=body"><img align="center" height="48" width="48" src="file:image-png.svg" border="0" style="max-width: 100%" alt=""/>image.png</a> | ||
71 | </div> | ||
72 | <div/> | ||
73 | </div> | ||
74 | </div> | ||
75 | </div> | ||
76 | </body> | ||
77 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox.tree new file mode 100644 index 00000000..473f0b10 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-attachment-and-non-encrypted-attachment.mbox.tree | |||
@@ -0,0 +1,11 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::MimeMessagePart | ||
3 | * MimeTreeParser::EncryptedMessagePart | ||
4 | * MimeTreeParser::SignedMessagePart | ||
5 | * MimeTreeParser::MimeMessagePart | ||
6 | * MimeTreeParser::TextMessagePart | ||
7 | * MimeTreeParser::MessagePart | ||
8 | * MimeTreeParser::AttachmentMessagePart | ||
9 | * MimeTreeParser::MessagePart | ||
10 | * MimeTreeParser::AttachmentMessagePart | ||
11 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-attachment.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-attachment.mbox new file mode 100644 index 00000000..4204fb0b --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-attachment.mbox | |||
@@ -0,0 +1,57 @@ | |||
1 | From test@kolab.org Fri May 01 15:13:18 2015 | ||
2 | From: testkey <test@kolab.org> | ||
3 | To: you@you.com | ||
4 | Subject: enc attachment | ||
5 | Date: Fri, 01 May 2015 17:13:18 +0200 | ||
6 | Message-ID: <2401407.XhOc2XYoOt@tabin.local> | ||
7 | X-KMail-Identity: 1197256126 | ||
8 | User-Agent: KMail/4.13.0.1 (Linux/3.19.1-towo.1-siduction-amd64; KDE/4.14.2; x86_64; git-cd33034; 2015-04-11) | ||
9 | MIME-Version: 1.0 | ||
10 | Content-Type: multipart/encrypted; boundary="nextPart4793536.cjk9hKXLQ5"; protocol="application/pgp-encrypted" | ||
11 | |||
12 | |||
13 | --nextPart4793536.cjk9hKXLQ5 | ||
14 | Content-Type: application/pgp-encrypted | ||
15 | Content-Disposition: attachment | ||
16 | Content-Transfer-Encoding: 7Bit | ||
17 | |||
18 | Version: 1 | ||
19 | --nextPart4793536.cjk9hKXLQ5 | ||
20 | Content-Type: application/octet-stream | ||
21 | Content-Disposition: inline; filename="msg.asc" | ||
22 | Content-Transfer-Encoding: 7Bit | ||
23 | |||
24 | -----BEGIN PGP MESSAGE----- | ||
25 | Version: GnuPG v2 | ||
26 | |||
27 | hIwDGJlthTT7oq0BBACLMnR5Mln6JGCccvqZCgM3qUkFWZ7a33b7Nl2g5lSOLX6q | ||
28 | dlGOr/0jAuqdkRwCDTom3hsrH2vf1kARTSST+5cewngS2CgBTAwwc8JymEagTkKf | ||
29 | VK/tTnM6G7puMVkwuafpuRggyJAUYvjktgUKOUaXtuxX71g0NagAFQGqlvGuq4UB | ||
30 | DAMMzkNap8zaOwEH+wWSs5xdV1x37T11EnUvkhoOMu+uId2U7NEx2JdQ/FGJZdti | ||
31 | mtqfM9GKTtQlGVcn3ISH7Wmrw3x0bsOLuW7oxkU4xIS3tVvibxaaWdmponN5TUai | ||
32 | Dr4LCTEmG7+jLNopF6V4zPmpQ9YxMwQOm8ITml+auNOg9EtHxavwr3Xd1hOYA92N | ||
33 | 1bkOiHzmb9hQtUy1GfRRk91tRqtRPoaamczLxWV9yROFDRNuSSbZ8oBU/K4YgSTL | ||
34 | D+/FhCt6MxV0DQzp+UCSL7ZsMx+ldPnZK44Udd17+U3xQDDUffo6cSg6FAF425Rh | ||
35 | v3ZQP0j7LtSIwDh2Rxc+Is4DuSmfZksL5nLPH5nS6QGJnsVEqVcZgQPktl1Zaeil | ||
36 | x/6WaWruuJm92G2fd9x2/giTLZnk918BVi/n00xR/n4bnSQmmFhXVqAVjGlG6Tr9 | ||
37 | dxej8dSiFdxO8ZjFe5tguQw76xlCu/9MxmSXTP7Mfvm4jqdcjUOINwHOzR/h2T62 | ||
38 | ZlrmqoxMHm4RN0PQ334tSzQXD4gcoUHL+xq62ATt7/jx0p0pIXPmPVUFopCk8k1E | ||
39 | m2ErPLnyfGLd4LNZRL03oP0jCjX6Q/LFWLTjCIdU6+aM6nT26CZy98yZV0SRGyhu | ||
40 | qYxN0aVW+RatmDRWWtouOJllQouQ7ZaqmjHLgyOj32/oT8cYUWWdFswSsnMhJjxb | ||
41 | r6iajUeAZgiN+zqwgf6j1Z8/mMvb+yirP+Rn9ME1fq3XSYHlnIOxKNBa+St8DdaP | ||
42 | /ZvrkwNTpVp1GmaZLBXdqdeLmflJ4U/X7wphZGR3sgjOwj0oYotX1Zb8OrtlP5WC | ||
43 | VXhhrt40e7Ilt2B0x7Xe9DWKByDCqrQUhwxwTS3miiKH9G1VEcHko70O98RjKJQ3 | ||
44 | I4VW6e/Gqv2zAMiiOu1MBTeGfPQItca4bUrVzhKjm27twtZD4wLSQDTQECxrCWHC | ||
45 | BFAdzvsIry0FIXoO6Vh16Hojq+YZ8tpmknGfpg0pnuRvAdDWU+0uuECXDE0UZFWC | ||
46 | 2g3Bs2Dn2BYYyrI6X92swHz8qP3JvdxN0dpsYMkMdHN4yWXJogNSfXzy2udf0A4P | ||
47 | NNZMOonhlwH+DBRfcWS0A/j0/fdDCDzR5Ca5dbX7lL4EscbBeoCP1JJyVoOp6DUc | ||
48 | ICuHJGGrnpNdG9DMa97tqpyGRHTAwI3lJXPKTDEHN9v9XobIyndFgi/tcPLZ7QWz | ||
49 | 9mN94NKLmeYWjrMiRbNQk8BYXR9K17SHb4BkIMdBxRsJjgMEC8qniUH64Nnf8/x4 | ||
50 | yaRCuUo0bkHDE3AqCzZE1R0he66dDkfOIz+mLwcpG8jZWjFm7sXAflBe3jvIc0lm | ||
51 | NyWQ1WnMkP83fWm/+YqrLLf+tTQtievRPeS1Dd/7v9yqUWEmQ0pUOj3MNf9Ej2KI | ||
52 | vu5ap7fHIevcBn42BPwQgSnp4YmXEY0ir5Ccwogusnt7QliNSRmkN6Jap4AF | ||
53 | =AVJ4 | ||
54 | -----END PGP MESSAGE----- | ||
55 | |||
56 | --nextPart4793536.cjk9hKXLQ5-- | ||
57 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-attachment.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-attachment.mbox.html new file mode 100644 index 00000000..2b266b02 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-attachment.mbox.html | |||
@@ -0,0 +1,66 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
18 | <tr class="signOkKeyOkH"> | ||
19 | <td dir="ltr"> | ||
20 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
21 | <tr> | ||
22 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
23 | <td align="right"> | ||
24 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
25 | </td> | ||
26 | </tr> | ||
27 | </table> | ||
28 | </td> | ||
29 | </tr> | ||
30 | <tr class="signOkKeyOkB"> | ||
31 | <td> | ||
32 | <a name="att1"/> | ||
33 | <div id="attachmentDiv1"> | ||
34 | <a name="att1.1"/> | ||
35 | <div id="attachmentDiv1.1"> | ||
36 | <div class="noquote"> | ||
37 | <div dir="ltr">test text</div> | ||
38 | </div> | ||
39 | </div> | ||
40 | <a name="att1.2"/> | ||
41 | <div id="attachmentDiv1.2"> | ||
42 | <hr/> | ||
43 | <div> | ||
44 | <a href="attachment:e0:1.2?place=body"><img align="center" height="48" width="48" src="file:text-plain.svg" border="0" style="max-width: 100%" alt=""/>file.txt</a> | ||
45 | </div> | ||
46 | <div/> | ||
47 | </div> | ||
48 | </div> | ||
49 | </td> | ||
50 | </tr> | ||
51 | <tr class="signOkKeyOkH"> | ||
52 | <td dir="ltr">End of signed message</td> | ||
53 | </tr> | ||
54 | </table> | ||
55 | </div> | ||
56 | </div> | ||
57 | </td> | ||
58 | </tr> | ||
59 | <tr class="encrH"> | ||
60 | <td dir="ltr">End of encrypted message</td> | ||
61 | </tr> | ||
62 | </table> | ||
63 | </div> | ||
64 | </div> | ||
65 | </body> | ||
66 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-attachment.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-attachment.mbox.tree new file mode 100644 index 00000000..f433fd45 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-attachment.mbox.tree | |||
@@ -0,0 +1,8 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::EncryptedMessagePart | ||
3 | * MimeTreeParser::SignedMessagePart | ||
4 | * MimeTreeParser::MimeMessagePart | ||
5 | * MimeTreeParser::TextMessagePart | ||
6 | * MimeTreeParser::MessagePart | ||
7 | * MimeTreeParser::AttachmentMessagePart | ||
8 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-enigmail1.6.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-enigmail1.6.mbox new file mode 100644 index 00000000..9afd17e3 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-enigmail1.6.mbox | |||
@@ -0,0 +1,48 @@ | |||
1 | From you@you.com Sat, 29 Mar 2014 15:04:21 +0100 | ||
2 | FCC: imap://hefee%40netzguerilla.net@mail.netzguerilla.net/Sent | ||
3 | X-Identity-Key: id1 | ||
4 | X-Account-Key: account4 | ||
5 | Message-ID: <5336D2E5.6010602@you.com> | ||
6 | Date: Sat, 29 Mar 2014 15:04:21 +0100 | ||
7 | From: you <you@you.com> | ||
8 | X-Mozilla-Draft-Info: internal/draft; vcard=0; receipt=0; DSN=0; uuencode=0 | ||
9 | User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Icedove/24.4.0 | ||
10 | MIME-Version: 1.0 | ||
11 | To: test@kolab.com | ||
12 | Subject: test | ||
13 | X-Enigmail-Version: 1.6 | ||
14 | X-Enigmail-Draft-Status: 515 | ||
15 | X-Enigmail-Draft-Status: 739 | ||
16 | Content-Type: multipart/encrypted; | ||
17 | protocol="application/pgp-encrypted"; | ||
18 | boundary="23VWJ4jAoB40SD17lh6TOBXK3fQSEGNu5" | ||
19 | |||
20 | This is an OpenPGP/MIME encrypted message (RFC 4880 and 3156) | ||
21 | --23VWJ4jAoB40SD17lh6TOBXK3fQSEGNu5 | ||
22 | Content-Type: application/pgp-encrypted | ||
23 | Content-Description: PGP/MIME version identification | ||
24 | |||
25 | Version: 1 | ||
26 | |||
27 | --23VWJ4jAoB40SD17lh6TOBXK3fQSEGNu5 | ||
28 | Content-Type: application/octet-stream; name="encrypted.asc" | ||
29 | Content-Description: OpenPGP encrypted message | ||
30 | Content-Disposition: inline; filename="encrypted.asc" | ||
31 | |||
32 | -----BEGIN PGP MESSAGE----- | ||
33 | Version: GnuPG v1 | ||
34 | Comment: Using GnuPG with Icedove - http://www.enigmail.net/ | ||
35 | |||
36 | hIwDGJlthTT7oq0BA/9NtLLXbiIJVS6pOynwEeSznrQK7kYVla8RM43//JECCkGJ | ||
37 | azEaSBznabBv6epaFmQtVHLMXlCbZnMmW9loyqPBfMoAms6kKKBdG/jqhus89iXE | ||
38 | +seXngC233Va/gZMb2DxOqIokVNfj9tpR7xQ8wS/jHTDiLNc1GOQC7ku42z2bNLA | ||
39 | IQFRD/qbBFz89hU4wP4cYoAysOnEDojFrsrnCidTHJOJrndM6PPUtH/jQCyfr/EG | ||
40 | 2tSpJwYKvmT6ly3yqaGLBtRPIxiv+dMe+7yw0t40qbjvvaTGavErEBJEKX5eWbTN | ||
41 | /sjajHpUHqs6SIiMheH9dr+WfzFONtVbPEgGRmOERhlgTl/nLo86AZpjJroIGKJJ | ||
42 | tTHCcoQGAWG+N7wrCE1RxR0kkMs4nRozj0TLu6ZyXMs+H063MewTPNxNAiQT1Nbi | ||
43 | udKWmfLBlxn06p+JDzUKxj8PFwObdbxTvACzbAvBY1aHMQ== | ||
44 | =mLl3 | ||
45 | -----END PGP MESSAGE----- | ||
46 | |||
47 | --23VWJ4jAoB40SD17lh6TOBXK3fQSEGNu5-- | ||
48 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-enigmail1.6.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-enigmail1.6.mbox.html new file mode 100644 index 00000000..09d904bb --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-enigmail1.6.mbox.html | |||
@@ -0,0 +1,34 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <a name="att1"/> | ||
18 | <div id="attachmentDiv1"> | ||
19 | <div class="noquote"> | ||
20 | <div dir="ltr">test</div> | ||
21 | </div> | ||
22 | </div> | ||
23 | </div> | ||
24 | </div> | ||
25 | </td> | ||
26 | </tr> | ||
27 | <tr class="encrH"> | ||
28 | <td dir="ltr">End of encrypted message</td> | ||
29 | </tr> | ||
30 | </table> | ||
31 | </div> | ||
32 | </div> | ||
33 | </body> | ||
34 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-enigmail1.6.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-enigmail1.6.mbox.tree new file mode 100644 index 00000000..009ba99a --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-enigmail1.6.mbox.tree | |||
@@ -0,0 +1,5 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::EncryptedMessagePart | ||
3 | * MimeTreeParser::MimeMessagePart | ||
4 | * MimeTreeParser::TextMessagePart | ||
5 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-noData.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-noData.mbox new file mode 100644 index 00000000..c4f14226 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-noData.mbox | |||
@@ -0,0 +1,17 @@ | |||
1 | From test@kolab.org Wed, 08 Sep 2010 17:02:52 +0200 | ||
2 | From: OpenPGP Test <test@kolab.org> | ||
3 | To: test@kolab.org | ||
4 | Subject: OpenPGP encrypted | ||
5 | Date: Wed, 08 Sep 2010 17:02:52 +0200 | ||
6 | User-Agent: KMail/4.6 pre (Linux/2.6.34-rc2-2-default; KDE/4.5.60; x86_64; ; ) | ||
7 | MIME-Version: 1.0 | ||
8 | Content-Type: multipart/encrypted; boundary="nextPart1357031.ppLHckZtsp"; protocol="application/pgp-encrypted" | ||
9 | Content-Transfer-Encoding: 7Bit | ||
10 | |||
11 | --nextPart1357031.ppLHckZtsp | ||
12 | Content-Type: application/pgp-encrypted | ||
13 | Content-Disposition: attachment | ||
14 | |||
15 | Version: 1 | ||
16 | |||
17 | --nextPart1357031.ppLHckZtsp-- | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-noData.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-noData.mbox.html new file mode 100644 index 00000000..52196784 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-noData.mbox.html | |||
@@ -0,0 +1,19 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <hr/> | ||
11 | <div> | ||
12 | <a href="attachment:1?place=body"><img align="center" height="48" width="48" src="file:application-pgp-encrypted.svg" border="0" style="max-width: 100%" alt=""/>Unnamed</a> | ||
13 | </div> | ||
14 | <div/> | ||
15 | </div> | ||
16 | </div> | ||
17 | </div> | ||
18 | </body> | ||
19 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-noData.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-noData.mbox.tree new file mode 100644 index 00000000..79a20c8d --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-noData.mbox.tree | |||
@@ -0,0 +1,4 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::MimeMessagePart | ||
3 | * MimeTreeParser::AttachmentMessagePart | ||
4 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-non-encrypted-attachment.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-non-encrypted-attachment.mbox new file mode 100644 index 00000000..2957bf3c --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-non-encrypted-attachment.mbox | |||
@@ -0,0 +1,114 @@ | |||
1 | From test@kolab.org Fri May 01 15:13:51 2015 | ||
2 | From: testkey <test@kolab.org> | ||
3 | To: you@you.com | ||
4 | Subject: non enc attachment | ||
5 | Date: Fri, 01 May 2015 17:13:51 +0200 | ||
6 | Message-ID: <20157069.RcaNBhWVXx@tabin.local> | ||
7 | X-KMail-Identity: 1197256126 | ||
8 | User-Agent: KMail/4.13.0.1 (Linux/3.19.1-towo.1-siduction-amd64; KDE/4.14.2; x86_64; git-cd33034; 2015-04-11) | ||
9 | MIME-Version: 1.0 | ||
10 | Content-Type: multipart/mixed; boundary="nextPart1612969.Xqz3IcFXZ3" | ||
11 | Content-Transfer-Encoding: 7Bit | ||
12 | |||
13 | This is a multi-part message in MIME format. | ||
14 | |||
15 | --nextPart1612969.Xqz3IcFXZ3 | ||
16 | Content-Type: multipart/encrypted; boundary="nextPart2213427.hvfAsaxZ1O"; protocol="application/pgp-encrypted" | ||
17 | |||
18 | |||
19 | --nextPart2213427.hvfAsaxZ1O | ||
20 | Content-Type: application/pgp-encrypted | ||
21 | Content-Disposition: attachment | ||
22 | Content-Transfer-Encoding: 7Bit | ||
23 | |||
24 | Version: 1 | ||
25 | --nextPart2213427.hvfAsaxZ1O | ||
26 | Content-Type: application/octet-stream | ||
27 | Content-Disposition: inline; filename="msg.asc" | ||
28 | Content-Transfer-Encoding: 7Bit | ||
29 | |||
30 | -----BEGIN PGP MESSAGE----- | ||
31 | Version: GnuPG v2 | ||
32 | |||
33 | hIwDGJlthTT7oq0BBACdvp3PFrRx6vxZhxt06LqyaO7+SWBbVUr7GOa3QaYCCBm+ | ||
34 | /KTUZEfhPuGVcsVpJKZbPsUKVhYfvYpDAsZu3TehmKflobWAV/cCIK2BkQB744pd | ||
35 | oaCtTj7pmCO05Zt5Uo/tXbrgceuW+/huwn2DO2fk4MUBsluH3fMbvccZJnR3yoUB | ||
36 | DAMMzkNap8zaOwEIAOTKI8Bh3NhfuJdWDsjv+UT6E4kf/zg3D95mJ+3gK8kHFXdd | ||
37 | YyEKaMsYx64kSwm1KcjsJ4gWykJlB34YDDfcIrnbgO2QRss9GhgOcUtLr0KNcY+0 | ||
38 | OJ4sbNmI8I3XssMb4rHtDrcXc0ODd0v/C/Lw2VfUdN+bBY4EetG096OPiZ4R41kF | ||
39 | Rj95nhO8tpoJx9VltegCdZI2AxtykOYvUaLFyYqCoKMmQwqGjdaUv1CeMnxUIPsn | ||
40 | A/x6TQ0AjpZ5IfMqO7QmOv3ACFo5/Ur93NauOK6szg/zdih9OxUL0Qid3nZQQwqA | ||
41 | J9ZChTcUgdjQo8EjpWLy0oXR9uLSHcLwRo3OdRzS6QEz7Dus6hmpEal3zTZFj2NR | ||
42 | mK38tpp+eWhzSAFAx8tyImz8SU2N2o7xQHlEdlWYGeIQg0embMnmMv6WJVWhYahb | ||
43 | x5OTfHCGwHFsLhZDmtaNhAVMlYdqxKXoR45H9cmGNPpU5kN5Ckjr6I+I51cfgAOE | ||
44 | 1vF54jYHXd1btfGrwAyKWBfFVQFPWjuIUdsEl8zDjNTmcCCbA77tEGohSqDi+WWL | ||
45 | LyYw5g/uwwZ+5OzeRdjAJ+9xtJ+WXhnDUffG8GgGgZWBQD+S2Ix4lZ2NcAeyLPt/ | ||
46 | cXeDHkPUXj7cjm0hl7SvBKzR6X4EEWO/hh19mxngd4+e19q6Qm4K2QMfTwQQyNED | ||
47 | whBkRXhcXcRxWlb/ICwFDIgxKLJko5HVTknBJDllNdm6l2C4Y9/IY2imqXni8xZX | ||
48 | zQfAkDOBlfouUrHbPuBCRdCLmp7BgbanCaJDvgYGBvXEgjMKpV3bezTfm4Ugwiyk | ||
49 | dJfMu/4XftZy7XqoFuDheNXuQ5JobpvVDaiTQ0EWHpHeX3TZ0xa8i1FO6ANLakUp | ||
50 | aVFWzYl91bxbNHIcPh278neyi+LNWWT6TvkCwcbUYUfuIySOwfSUJAHDIJOx50Ha | ||
51 | If0fNQDtF4o9mDFwXDwVf8e2zx5NjheqgYX/qIWjFE2cCCkUM4UkNrkYBOiwnh9F | ||
52 | RJz4M6wKPhZT34MBlTKgwDbypDp+XYnM2HunzIDXCAigYsD/AuLNeFwsIPiXWJ47 | ||
53 | oXamEJxyqS9G0t/iy7+1mbNiFct7pvHt6QUKZ9aXSXj3MkQuWjjVNvMz6KocTSyL | ||
54 | AeWQNYuvA5NkyZOA5+VU1ma3wn7IAXYkgw+OMvcz9VNevXNg956ZnGbb47Fqppp+ | ||
55 | MjK2ptM1UzIEnHxXtq3KFrXG1AzzhyFnKIjsiDpFTlMGTT9pRGnK8zyYXYPEgpwW | ||
56 | 874A5auLFOvhwPSNMhMai+XSoE3P+zZDqhXMYU8c49O+SeOtISg3Iy5tXuIPlIps | ||
57 | 7k0KA60hPulMYBQLtZ/yDO/gXhkeWaw= | ||
58 | =EJZ6 | ||
59 | -----END PGP MESSAGE----- | ||
60 | |||
61 | --nextPart2213427.hvfAsaxZ1O-- | ||
62 | |||
63 | --nextPart1612969.Xqz3IcFXZ3 | ||
64 | Content-Disposition: attachment; filename="image.png" | ||
65 | Content-Transfer-Encoding: base64 | ||
66 | Content-Type: image/png; name="image.png" | ||
67 | |||
68 | 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 | ||
111 | o/0d59+Lh3Y1HHcAAAAASUVORK5CYII= | ||
112 | |||
113 | --nextPart1612969.Xqz3IcFXZ3-- | ||
114 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-non-encrypted-attachment.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-non-encrypted-attachment.mbox.html new file mode 100644 index 00000000..e20a9568 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-non-encrypted-attachment.mbox.html | |||
@@ -0,0 +1,69 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
11 | <tr class="encrH"> | ||
12 | <td dir="ltr">Encrypted message</td> | ||
13 | </tr> | ||
14 | <tr class="encrB"> | ||
15 | <td> | ||
16 | <div style="position: relative; word-wrap: break-word"> | ||
17 | <a name="att"/> | ||
18 | <div id="attachmentDiv"> | ||
19 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
20 | <tr class="signOkKeyOkH"> | ||
21 | <td dir="ltr"> | ||
22 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
23 | <tr> | ||
24 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
25 | <td align="right"> | ||
26 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
27 | </td> | ||
28 | </tr> | ||
29 | </table> | ||
30 | </td> | ||
31 | </tr> | ||
32 | <tr class="signOkKeyOkB"> | ||
33 | <td> | ||
34 | <a name="att1"/> | ||
35 | <div id="attachmentDiv1"> | ||
36 | <a name="att1.1"/> | ||
37 | <div id="attachmentDiv1.1"> | ||
38 | <div class="noquote"> | ||
39 | <div dir="ltr">test text</div> | ||
40 | </div> | ||
41 | </div> | ||
42 | </div> | ||
43 | </td> | ||
44 | </tr> | ||
45 | <tr class="signOkKeyOkH"> | ||
46 | <td dir="ltr">End of signed message</td> | ||
47 | </tr> | ||
48 | </table> | ||
49 | </div> | ||
50 | </div> | ||
51 | </td> | ||
52 | </tr> | ||
53 | <tr class="encrH"> | ||
54 | <td dir="ltr">End of encrypted message</td> | ||
55 | </tr> | ||
56 | </table> | ||
57 | </div> | ||
58 | <a name="att2"/> | ||
59 | <div id="attachmentDiv2"> | ||
60 | <hr/> | ||
61 | <div> | ||
62 | <a href="attachment:2?place=body"><img align="center" height="48" width="48" src="file:image-png.svg" border="0" style="max-width: 100%" alt=""/>image.png</a> | ||
63 | </div> | ||
64 | <div/> | ||
65 | </div> | ||
66 | </div> | ||
67 | </div> | ||
68 | </body> | ||
69 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-non-encrypted-attachment.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-non-encrypted-attachment.mbox.tree new file mode 100644 index 00000000..c2a6ad01 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-non-encrypted-attachment.mbox.tree | |||
@@ -0,0 +1,9 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::MimeMessagePart | ||
3 | * MimeTreeParser::EncryptedMessagePart | ||
4 | * MimeTreeParser::SignedMessagePart | ||
5 | * MimeTreeParser::MimeMessagePart | ||
6 | * MimeTreeParser::TextMessagePart | ||
7 | * MimeTreeParser::MessagePart | ||
8 | * MimeTreeParser::AttachmentMessagePart | ||
9 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-partially-signed-attachments.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-partially-signed-attachments.mbox new file mode 100644 index 00000000..222b5936 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-partially-signed-attachments.mbox | |||
@@ -0,0 +1,91 @@ | |||
1 | From: firstname.lastname@example.com | ||
2 | To: test@kolab.org | ||
3 | Subject: OpenPGP encrypted one signed and one unsigned attachment | ||
4 | Date: Sun, 30 Aug 2015 12:08:40 +0200 | ||
5 | Message-ID: <1737262.ESByPkoaL9@vkpc5> | ||
6 | X-KMail-Identity: 402312391 | ||
7 | X-KMail-Dictionary: en_US | ||
8 | User-Agent: KMail/5.0.42 pre (Linux/3.16.6-2-desktop; KDE/5.14.0; x86_64; ; ) | ||
9 | MIME-Version: 1.0 | ||
10 | Content-Type: multipart/mixed; boundary="nextPart2760349.k2GQmrcl5a" | ||
11 | Content-Transfer-Encoding: 7Bit | ||
12 | |||
13 | This is a multi-part message in MIME format. | ||
14 | |||
15 | --nextPart2760349.k2GQmrcl5a | ||
16 | Content-Type: multipart/encrypted; boundary="nextPart2260160.XvshVD34ka"; protocol="application/pgp-encrypted" | ||
17 | |||
18 | --nextPart2260160.XvshVD34ka | ||
19 | Content-Type: application/pgp-encrypted | ||
20 | Content-Disposition: attachment | ||
21 | Content-Transfer-Encoding: 7Bit | ||
22 | |||
23 | Version: 1 | ||
24 | --nextPart2260160.XvshVD34ka | ||
25 | Content-Type: application/octet-stream | ||
26 | Content-Disposition: inline; filename="msg.asc" | ||
27 | Content-Transfer-Encoding: 7Bit | ||
28 | |||
29 | -----BEGIN PGP MESSAGE----- | ||
30 | Version: GnuPG v2 | ||
31 | |||
32 | hQEMAwzOQ1qnzNo7AQgAooa+Peu1t5aiX4WvssEnRlapkr62/49/Dbz5assvshdr | ||
33 | o9zOC+89Qr5P/ea+tC1MO7ek/DfyL9C4EzOMp/r08GeInLqWMc9qLZO//YaT2JUp | ||
34 | 0IZFbpUQ4C2zjXMRuy/PMrltHuCfsvhvHX1YAHp/xjRsKpQoE3mSDzz5sc8/Hj9n | ||
35 | 2eoKoCEW1rgt2qHtV4DD6lvUPo42LMZclJ9GqfoD7WLoEH9ebRLhXr3D00j6xBfy | ||
36 | //nooAhzQSW8b7GZth4Qc7DKAZMhuEly/kp07nhuPd1fMJDEAB/zh9EYlgnn3STb | ||
37 | MCdtFs6kMC24uA2eDCH330Bn9OzzWnsVU9ae4XiKnNLpAeactSFRKKvGytBQaloq | ||
38 | Gvn1+D0Xmw6OsSmRJ84DzKqG4E6bzE+XhMEMnLlqDvZDsOtU/sCGvMK0MM3y5B7M | ||
39 | ONqWLN3ng3zrGPec5gqfvnWgKpANUrbJkzS8LNjv4hwoKh0tFpghWQiefG0Z9Hw1 | ||
40 | UaYbFwvaFgXcm72oBkynDCleWjQ2vnDE4P38PldqZbAW/Pw1q6Yq8m9MhS1VpbI5 | ||
41 | WBjuRQhgQvMG0LY0gR/3Qor5tX9ASllWnPfWYVuOiSOAe5Hsp7BmELXkWftHii7k | ||
42 | YW0Qim7jleDaY1MGfFr0vrO/PiYxGTb+4IUyUgEBYEpxa9ozUoeftF6JbHPuEZI0 | ||
43 | ENX8aIVJ9FnpssrR5HlpXieF12ec9ZFeV7mAwcucJ3RXuDcQHQTHgEbfnzTsaEpL | ||
44 | Hxs+6euOCJXhKOYVrsAlB4IxK0OQm4XHiZ7WBp5Jp7rlSHltdxFpSnHIfqngyCA4 | ||
45 | L+c/gsUEVbNI++iOOhOKVT47XIf+s/xa1Y4XghGbHIA3/pQphYo4U5dTeLoX0OWI | ||
46 | 64tPxliQTKuJ+NAv9Km2bDgvlvn83jsc94THi5u+fIdDEGp7pgoQNXR69Lkz1bsA | ||
47 | Hh9xqKzVloHu4SsT3OGX+bfTO3jUh8ieU/4tflZMrJ9RkEfE08PzTnopT08FppFx | ||
48 | QWpHv/fwyJf6Cw1IevM5pVLAShg0sbCPF/xsYTjSyWNib1wFtxkmv5MToCFwkxi5 | ||
49 | b1yT23BNlV5RV6wcjmrum7p2fMwPjbt8X6z+pgUtkD7zImBWeYddMjgSjOFuFEjF | ||
50 | gpfVoV3OIvMPZMe2jqWsjnjujHJr2z5IZn3A7WI0b4SIDP0sGwsTBiogKqcBNWpn | ||
51 | O4MKUq9JwC0K/MY7yS1MCLoHfwU18z19Es/flaAgwtXk8IWIcjkkumAwNl+y8Q+I | ||
52 | +8AFGdiXTKld9QVwCKnMS3QivHPuFNL8rfcWKsr1nOhOEhaO+zD94eOOiCbwiXGr | ||
53 | E6WsewNCVQUN4bxAXl2vRi+9WRctLy7bsuIL5dgUz0CMYkQ+dDmrBflD0nyC | ||
54 | =TGNA | ||
55 | -----END PGP MESSAGE----- | ||
56 | |||
57 | --nextPart2260160.XvshVD34ka-- | ||
58 | |||
59 | --nextPart2760349.k2GQmrcl5a | ||
60 | Content-Type: multipart/encrypted; boundary="nextPart22530242.iRl14SoP0Q"; protocol="application/pgp-encrypted" | ||
61 | |||
62 | --nextPart22530242.iRl14SoP0Q | ||
63 | Content-Type: application/pgp-encrypted | ||
64 | Content-Disposition: attachment | ||
65 | Content-Transfer-Encoding: 7Bit | ||
66 | |||
67 | Version: 1 | ||
68 | --nextPart22530242.iRl14SoP0Q | ||
69 | Content-Type: application/octet-stream | ||
70 | Content-Disposition: inline; filename="msg.asc" | ||
71 | Content-Transfer-Encoding: 7Bit | ||
72 | |||
73 | -----BEGIN PGP MESSAGE----- | ||
74 | Version: GnuPG v2 | ||
75 | |||
76 | hQEMAwzOQ1qnzNo7AQgAtA94bBRwgpo64zcyh+4dzt0Pr2pmNjiS4ZX+a/xzYCmD | ||
77 | oS1a26s/LVZH+aJYC13l1kEu+6YjKn+ruQvMfhihOxglHBLjmUO17TPFC05AReSn | ||
78 | amMqPbgS6mOwhlBJHrBa/SVwkxmbMaNBUJ/KxRXFtTW/V4pPWImRvI9mnmpo8fHy | ||
79 | ZLvVAI3hGe7vPG5Vbdi5/Iu/JzqwlglVsP82gYpLlx7HhWGF4gmTGc6YBwFtzEvS | ||
80 | eqFtKRDqN60bo4HnNLOEnMaWlYPTpt3QibLWWIbtpA1Gb0Q/1NvDnn3Lyj8H+0WV | ||
81 | 8H6Ks9/cvAuoAMOad6y4gDJb+K/AS7Ha+08/3lMYG9LAAgGe8Qocxg1W3ha1o0Ph | ||
82 | YSfV2ooebsLiHjwspjYpsX5ijnRj6uNGp5Dt28EIo1ANF+oDiSKEwAMGPBtcnqaO | ||
83 | FWXy39dP3VXE73nsO+dyTidaATFBlYg+IpPTDSFTgsk7XDV973EpdXvOkBEp/vBv | ||
84 | EZknuZFOkS0v5QHk9Y/hhlSLACTIEWQpBiFGOwUVSZFXLEY5zQNTbQdRbz3ZYcE9 | ||
85 | mIFzD9Ujw6tIJIOFazhwr9SxxyeaAygWeg4ifmmdhAsmFYum | ||
86 | =WsAv | ||
87 | -----END PGP MESSAGE----- | ||
88 | |||
89 | --nextPart22530242.iRl14SoP0Q-- | ||
90 | |||
91 | --nextPart2760349.k2GQmrcl5a-- | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-partially-signed-attachments.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-partially-signed-attachments.mbox.html new file mode 100644 index 00000000..c0b9d79e --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-partially-signed-attachments.mbox.html | |||
@@ -0,0 +1,99 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
11 | <tr class="encrH"> | ||
12 | <td dir="ltr">Encrypted message</td> | ||
13 | </tr> | ||
14 | <tr class="encrB"> | ||
15 | <td> | ||
16 | <div style="position: relative; word-wrap: break-word"> | ||
17 | <a name="att"/> | ||
18 | <div id="attachmentDiv"> | ||
19 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
20 | <tr class="signOkKeyOkH"> | ||
21 | <td dir="ltr"> | ||
22 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
23 | <tr> | ||
24 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
25 | <td align="right"> | ||
26 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
27 | </td> | ||
28 | </tr> | ||
29 | </table> | ||
30 | </td> | ||
31 | </tr> | ||
32 | <tr class="signOkKeyOkB"> | ||
33 | <td> | ||
34 | <a name="att1"/> | ||
35 | <div id="attachmentDiv1"> | ||
36 | <a name="att1.1"/> | ||
37 | <div id="attachmentDiv1.1"> | ||
38 | <div class="noquote"> | ||
39 | <div dir="ltr">This is the main body.</div> | ||
40 | </div> | ||
41 | </div> | ||
42 | <a name="att1.2"/> | ||
43 | <div id="attachmentDiv1.2"> | ||
44 | <table cellspacing="1" class="textAtm"> | ||
45 | <tr class="textAtmH"> | ||
46 | <td dir="ltr">attachment1.txt</td> | ||
47 | </tr> | ||
48 | <tr class="textAtmB"> | ||
49 | <td> | ||
50 | <div class="noquote"> | ||
51 | <div dir="ltr">This is a signed attachment.</div> | ||
52 | </div> | ||
53 | </td> | ||
54 | </tr> | ||
55 | </table> | ||
56 | </div> | ||
57 | </div> | ||
58 | </td> | ||
59 | </tr> | ||
60 | <tr class="signOkKeyOkH"> | ||
61 | <td dir="ltr">End of signed message</td> | ||
62 | </tr> | ||
63 | </table> | ||
64 | </div> | ||
65 | </div> | ||
66 | </td> | ||
67 | </tr> | ||
68 | <tr class="encrH"> | ||
69 | <td dir="ltr">End of encrypted message</td> | ||
70 | </tr> | ||
71 | </table> | ||
72 | </div> | ||
73 | <a name="att2"/> | ||
74 | <div id="attachmentDiv2"> | ||
75 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
76 | <tr class="encrH"> | ||
77 | <td dir="ltr">Encrypted message</td> | ||
78 | </tr> | ||
79 | <tr class="encrB"> | ||
80 | <td> | ||
81 | <div style="position: relative; word-wrap: break-word"> | ||
82 | <a name="att"/> | ||
83 | <div id="attachmentDiv"> | ||
84 | <div class="noquote"> | ||
85 | <div dir="ltr">This is an unsigned attachment.</div> | ||
86 | </div> | ||
87 | </div> | ||
88 | </div> | ||
89 | </td> | ||
90 | </tr> | ||
91 | <tr class="encrH"> | ||
92 | <td dir="ltr">End of encrypted message</td> | ||
93 | </tr> | ||
94 | </table> | ||
95 | </div> | ||
96 | </div> | ||
97 | </div> | ||
98 | </body> | ||
99 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-partially-signed-attachments.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-partially-signed-attachments.mbox.tree new file mode 100644 index 00000000..5cb83749 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-partially-signed-attachments.mbox.tree | |||
@@ -0,0 +1,12 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::MimeMessagePart | ||
3 | * MimeTreeParser::EncryptedMessagePart | ||
4 | * MimeTreeParser::SignedMessagePart | ||
5 | * MimeTreeParser::MimeMessagePart | ||
6 | * MimeTreeParser::TextMessagePart | ||
7 | * MimeTreeParser::MessagePart | ||
8 | * MimeTreeParser::AttachmentMessagePart | ||
9 | * MimeTreeParser::MessagePart | ||
10 | * MimeTreeParser::EncryptedMessagePart | ||
11 | * MimeTreeParser::TextMessagePart | ||
12 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-two-attachments.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-two-attachments.mbox new file mode 100644 index 00000000..c53e0916 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-two-attachments.mbox | |||
@@ -0,0 +1,42 @@ | |||
1 | From: firstname.lastname@example.com | ||
2 | To: test@kolab.org | ||
3 | Subject: OpenPGP encrypted with 2 text attachments | ||
4 | Date: Sun, 30 Aug 2015 12:05:17 +0200 | ||
5 | Message-ID: <1505824.VT0nqpAGu0@vkpc5> | ||
6 | X-KMail-Identity: 402312391 | ||
7 | X-KMail-Dictionary: en_US | ||
8 | User-Agent: KMail/5.0.42 pre (Linux/3.16.6-2-desktop; KDE/5.14.0; x86_64; ; ) | ||
9 | MIME-Version: 1.0 | ||
10 | Content-Type: multipart/encrypted; boundary="nextPart3335835.KxmPgziKxd"; protocol="application/pgp-encrypted" | ||
11 | |||
12 | --nextPart3335835.KxmPgziKxd | ||
13 | Content-Type: application/pgp-encrypted | ||
14 | Content-Disposition: attachment | ||
15 | Content-Transfer-Encoding: 7Bit | ||
16 | |||
17 | Version: 1 | ||
18 | --nextPart3335835.KxmPgziKxd | ||
19 | Content-Type: application/octet-stream | ||
20 | Content-Disposition: inline; filename="msg.asc" | ||
21 | Content-Transfer-Encoding: 7Bit | ||
22 | |||
23 | -----BEGIN PGP MESSAGE----- | ||
24 | Version: GnuPG v2 | ||
25 | |||
26 | hQEMAwzOQ1qnzNo7AQgA6tTJs017mI+xuhjcSTr3F5X/rJghq0oaXbjk1K0W33p+ | ||
27 | jsEyPTbuUIvI2a+5xHJ3BV+gnnO0Xosz57tGTF/eVAySnGiMse5cu2RQR9b/9EkC | ||
28 | uzt3tIChyub3GUODG3yzXqkhSiwIImvedWgnJYTJ7eeBkWdizVT0b0byiG2d7Hjq | ||
29 | hzYzyPJRwuoE36hryDsFycAhPfSsQAirxDJXk4HTsfBCmz7tzJhtt4wKc7z5m8fq | ||
30 | y+jddnDADq5+tykJS6zemJOzgU3AOQyVJbmsx2vTV1CJdpKPHvTTgghpAaSuVbg0 | ||
31 | tR9BX1nPnA/bgX/V7C+3PwuCvB0ZKmv5d8kaGaTwO9LAhQGaWTfhG1cyy+MJhXdR | ||
32 | rH63PMkZh/lrvj7qJYofI5iVoe1CiMaX44BiwKVclGf7bEFdzc2NSRvvTSzisN3T | ||
33 | nSzydEttuEY5jGagQQNT1l1l4I8HAtUgwGtkKZVTAUL6iKHYAqzB77sRs33UJy4k | ||
34 | ZSIWFnSY8l+HLG+MYKsYCGsvJHkxEHnMiS1EZcmpUFhxOGQpiF2rJ4qnL2jbFWbA | ||
35 | 9N1O5N1N/DJ/YKjwgy/jVVj6AOCrBZrxvKKt2mtG/wVX0F/KSKiEd8mgrLIx1udw | ||
36 | tibiDAJmDxUk8K0lAdOHBrzBChvysiT/QxCJFcSY6FE99Rral+BWjeyAIQQWvc2B | ||
37 | cEceZCtzjCOrwvoJwl2uEX+51nmMp+z1EoeyyhmUZZ4y65yOg4P6KGXGcLmIjSbH | ||
38 | IhsSls1jRkSrypf/wcEd6o7KZdeYbfA= | ||
39 | =Sud3 | ||
40 | -----END PGP MESSAGE----- | ||
41 | |||
42 | --nextPart3335835.KxmPgziKxd-- | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-two-attachments.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-two-attachments.mbox.html new file mode 100644 index 00000000..cca4c455 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-two-attachments.mbox.html | |||
@@ -0,0 +1,64 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <a name="att1"/> | ||
18 | <div id="attachmentDiv1"> | ||
19 | <div class="noquote"> | ||
20 | <div dir="ltr">this is the main body part</div> | ||
21 | </div> | ||
22 | </div> | ||
23 | <a name="att2"/> | ||
24 | <div id="attachmentDiv2"> | ||
25 | <table cellspacing="1" class="textAtm"> | ||
26 | <tr class="textAtmH"> | ||
27 | <td dir="ltr">attachment1.txt</td> | ||
28 | </tr> | ||
29 | <tr class="textAtmB"> | ||
30 | <td> | ||
31 | <div class="noquote"> | ||
32 | <div dir="ltr">this is the first attachment</div> | ||
33 | </div> | ||
34 | </td> | ||
35 | </tr> | ||
36 | </table> | ||
37 | </div> | ||
38 | <a name="att3"/> | ||
39 | <div id="attachmentDiv3"> | ||
40 | <table cellspacing="1" class="textAtm"> | ||
41 | <tr class="textAtmH"> | ||
42 | <td dir="ltr">attachment2.txt</td> | ||
43 | </tr> | ||
44 | <tr class="textAtmB"> | ||
45 | <td> | ||
46 | <div class="noquote"> | ||
47 | <div dir="ltr">this is the second attachment</div> | ||
48 | </div> | ||
49 | </td> | ||
50 | </tr> | ||
51 | </table> | ||
52 | </div> | ||
53 | </div> | ||
54 | </div> | ||
55 | </td> | ||
56 | </tr> | ||
57 | <tr class="encrH"> | ||
58 | <td dir="ltr">End of encrypted message</td> | ||
59 | </tr> | ||
60 | </table> | ||
61 | </div> | ||
62 | </div> | ||
63 | </body> | ||
64 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-two-attachments.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-two-attachments.mbox.tree new file mode 100644 index 00000000..71a67b58 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted-two-attachments.mbox.tree | |||
@@ -0,0 +1,9 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::EncryptedMessagePart | ||
3 | * MimeTreeParser::MimeMessagePart | ||
4 | * MimeTreeParser::TextMessagePart | ||
5 | * MimeTreeParser::MessagePart | ||
6 | * MimeTreeParser::AttachmentMessagePart | ||
7 | * MimeTreeParser::MessagePart | ||
8 | * MimeTreeParser::AttachmentMessagePart | ||
9 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted.mbox new file mode 100644 index 00000000..5102fa78 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted.mbox | |||
@@ -0,0 +1,36 @@ | |||
1 | From test@kolab.org Wed, 08 Sep 2010 17:02:52 +0200 | ||
2 | From: OpenPGP Test <test@kolab.org> | ||
3 | To: test@kolab.org | ||
4 | Subject: OpenPGP encrypted | ||
5 | Date: Wed, 08 Sep 2010 17:02:52 +0200 | ||
6 | User-Agent: KMail/4.6 pre (Linux/2.6.34-rc2-2-default; KDE/4.5.60; x86_64; ; ) | ||
7 | MIME-Version: 1.0 | ||
8 | Content-Type: multipart/encrypted; boundary="nextPart1357031.ppLHckZtsp"; protocol="application/pgp-encrypted" | ||
9 | Content-Transfer-Encoding: 7Bit | ||
10 | |||
11 | |||
12 | --nextPart1357031.ppLHckZtsp | ||
13 | Content-Type: application/pgp-encrypted | ||
14 | Content-Disposition: attachment | ||
15 | |||
16 | Version: 1 | ||
17 | --nextPart1357031.ppLHckZtsp | ||
18 | Content-Type: application/octet-stream | ||
19 | Content-Disposition: inline; filename="msg.asc" | ||
20 | |||
21 | -----BEGIN PGP MESSAGE----- | ||
22 | Version: GnuPG v2.0.15 (GNU/Linux) | ||
23 | |||
24 | hQEMAwzOQ1qnzNo7AQgAtWfDWWI2JUGuptpackiIxpWViEEpGAeruETubiIPwxNb | ||
25 | DNmXrMDhbm/zIbPntIGWJDgUMfABZCUgmlJLWhsceDTt+tXnWGha2VYrN2/WsF6/ | ||
26 | Pqs/TavTvMIJQHDaIH5yDDCaMoq/mGSbcu7go2H8Sw7aBEYlM8jGlqc1HziXnZ1q | ||
27 | 3vDiA+4qWfvbNoSRo1kb9Pcq997yg6WqZXH2hJ7cp+hIQ4uTP1/+qgYHMvfPlzQk | ||
28 | XcDguGbIer88ELhuR5622unGBAB4dqp+5w6n9c6rrCH81qhV4W0nqSEvj1tBj78S | ||
29 | ZTi6VBAo5eS0e3iOJqMpwUZz6hQUpJw2wnNRGvLgI9KZAag0HkgPdMeANowg7vpE | ||
30 | L4nU7B0ybhswA2Y7QT/wwCDZu9N1JGeBmy0dgy4sA38Ki27rn2/lIaP0j14JycwM | ||
31 | RTJ1uwI+ZuQiwXlyYtdFZJWe8nraWARch0oKqhaR7aSsxGWo63eiGEQhkQCBFBb3 | ||
32 | Vg0nNCZRBauEqIESEW5EV2zrJqdfNYcz+f9IP125dnQEKgLZ6FxTt3+v | ||
33 | =mhNl | ||
34 | -----END PGP MESSAGE----- | ||
35 | |||
36 | --nextPart1357031.ppLHckZtsp-- | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted.mbox.html new file mode 100644 index 00000000..ba0976cd --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted.mbox.html | |||
@@ -0,0 +1,31 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <div class="noquote"> | ||
18 | <div dir="ltr">encrypted message text</div> | ||
19 | </div> | ||
20 | </div> | ||
21 | </div> | ||
22 | </td> | ||
23 | </tr> | ||
24 | <tr class="encrH"> | ||
25 | <td dir="ltr">End of encrypted message</td> | ||
26 | </tr> | ||
27 | </table> | ||
28 | </div> | ||
29 | </div> | ||
30 | </body> | ||
31 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted.mbox.inProgress.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted.mbox.inProgress.html new file mode 100644 index 00000000..e5eb55d0 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted.mbox.inProgress.html | |||
@@ -0,0 +1,24 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Please wait while the message is being decrypted...</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="font-size:x-large; text-align:center; padding:20pt;"/> | ||
15 | </td> | ||
16 | </tr> | ||
17 | <tr class="encrH"> | ||
18 | <td dir="ltr">End of encrypted message</td> | ||
19 | </tr> | ||
20 | </table> | ||
21 | </div> | ||
22 | </div> | ||
23 | </body> | ||
24 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted.mbox.tree new file mode 100644 index 00000000..82f705c2 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-encrypted.mbox.tree | |||
@@ -0,0 +1,4 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::EncryptedMessagePart | ||
3 | * MimeTreeParser::TextMessagePart | ||
4 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-charset-encrypted.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-charset-encrypted.mbox new file mode 100644 index 00000000..8bd06910 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-charset-encrypted.mbox | |||
@@ -0,0 +1,40 @@ | |||
1 | From test@example.com Thu, 17 Oct 2013 02:13:03 +0200 | ||
2 | Return-Path: <test@example.com> | ||
3 | Delivered-To: you@you.com | ||
4 | Received: from localhost (localhost [127.0.0.1]) | ||
5 | by test@example.com (Postfix) with ESMTP id B30D8120030 | ||
6 | for <you@you.com>; Thu, 17 Oct 2013 02:13:05 +0200 (CEST) | ||
7 | From: test <test@example.com> | ||
8 | To: you@you.com | ||
9 | Subject: charset | ||
10 | Date: Thu, 17 Oct 2013 02:13:03 +0200 | ||
11 | Message-ID: <4081645.yGjUJ4o4Se@example.local> | ||
12 | User-Agent: KMail/4.12 pre (Linux/3.11-4.towo-siduction-amd64; KDE/4.11.2; x86_64; git-f7f14e3; 2013-10-15) | ||
13 | MIME-Version: 1.0 | ||
14 | Content-Transfer-Encoding: 7Bit | ||
15 | Content-Type: text/plain; charset="ISO-8859-15" | ||
16 | |||
17 | -----BEGIN PGP MESSAGE----- | ||
18 | Version: GnuPG v2.0.22 (GNU/Linux) | ||
19 | |||
20 | hIwDGJlthTT7oq0BBACbaRZudMigMTetPZNRgkfEXv4QQowR1jborw0dcgKKqMQ1 | ||
21 | 6o67NkpxvmXKGJTfTVCLBX3nk6FKYo6NwlPCyU7X9X0DDk8hvaBdR9wGfrdm5YWX | ||
22 | GKOzcqJY1EypiMsspXeZvjzEW7O8I956c3vBb/2pM3xqYEK1kh8+d9bVH+cjf4UB | ||
23 | DAMMzkNap8zaOwEH/1rPShyYL8meJN+/GGgS8+Nf1BW5pSHdAPCg0dnX4QCLEx7u | ||
24 | GkBU6N4JGYayaCBofibOLacQPhYZdnR5Xb/Pvrx03GrzyzyDp0WyeI9nGNfkani7 | ||
25 | sCRWbzlMPsEvGEvJVnMLNRSk4xhPIWumL4APkw+Mgi6mf+Br8z0RhfnGwyMA53Mr | ||
26 | pG9VQKlq3v7/aaN40pMjAsxiytcHS515jXrb3Ko4pWbTlAr/eytOEfkLRJgSOpQT | ||
27 | BY7lWs+UQJqiG8Yn65vS9LMDNJgX9EOGx77Z4u9wvv4ZieOxzgbHGg5kYCoae7ba | ||
28 | hxZeNjYKscH+E6epbOxM/wlTdr4UTiiW9dMsH0zSwMUB891gToeXq+LDGEPTKVSX | ||
29 | tsJm4HS/kISJBwrCI4EUqWZML6xQ427NkZGmF2z/sD3kmL66GjspIKnb4zHmXacp | ||
30 | 84n2KrI9s7p6AnKnQjsxvB/4/lpXPCIY5GH7KjySEJiMsHECzeN1dJSL6keykBsx | ||
31 | DtmYDA+dhZ6UWbwzx/78+mjNREhyp/UiSAmLzlJh89OH/xelAPvKcIosYwz4cY9N | ||
32 | wjralTmL+Y0aHKeZJOeqPLaXADcPFiZrCNPCH65Ey5GEtDpjLpEbjVbykPV9+YkK | ||
33 | 7JKW6bwMraOl5zmAoR77PWMo3IoYb9q4GuqDr1V2ZGlb7eMH1gj1nfgfVintKC1X | ||
34 | 3jFfy7aK6LIQDVKEwbi0SxVXTKStuliVUy5oX4woDOxmTEotJf1QlKZpn5oF20UP | ||
35 | tumYrp0SPoP8Bo4EVRVaLupduI5cYce1q/kFj9Iho/wk56MoG9PxMMfsH7oKg3AA | ||
36 | CqQ6/kM4oJNdN5xIf1EH5HeaNFkDy1jlLznnhwVAZKPo/9ffpg== | ||
37 | =bPqu | ||
38 | -----END PGP MESSAGE----- | ||
39 | |||
40 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-charset-encrypted.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-charset-encrypted.mbox.html new file mode 100644 index 00000000..344dc237 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-charset-encrypted.mbox.html | |||
@@ -0,0 +1,47 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
15 | <tr class="signOkKeyOkH"> | ||
16 | <td dir="ltr"> | ||
17 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
18 | <tr> | ||
19 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
20 | <td align="right"> | ||
21 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
22 | </td> | ||
23 | </tr> | ||
24 | </table> | ||
25 | </td> | ||
26 | </tr> | ||
27 | <tr class="signOkKeyOkB"> | ||
28 | <td> | ||
29 | <div class="noquote"> | ||
30 | <div dir="ltr">asdasd asd asd asdf sadf sdaf sadf öäü</div> | ||
31 | </div> | ||
32 | </td> | ||
33 | </tr> | ||
34 | <tr class="signOkKeyOkH"> | ||
35 | <td dir="ltr">End of signed message</td> | ||
36 | </tr> | ||
37 | </table> | ||
38 | </td> | ||
39 | </tr> | ||
40 | <tr class="encrH"> | ||
41 | <td dir="ltr">End of encrypted message</td> | ||
42 | </tr> | ||
43 | </table> | ||
44 | </div> | ||
45 | </div> | ||
46 | </body> | ||
47 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-charset-encrypted.mbox.inProgress.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-charset-encrypted.mbox.inProgress.html new file mode 100644 index 00000000..e5eb55d0 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-charset-encrypted.mbox.inProgress.html | |||
@@ -0,0 +1,24 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Please wait while the message is being decrypted...</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="font-size:x-large; text-align:center; padding:20pt;"/> | ||
15 | </td> | ||
16 | </tr> | ||
17 | <tr class="encrH"> | ||
18 | <td dir="ltr">End of encrypted message</td> | ||
19 | </tr> | ||
20 | </table> | ||
21 | </div> | ||
22 | </div> | ||
23 | </body> | ||
24 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-charset-encrypted.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-charset-encrypted.mbox.tree new file mode 100644 index 00000000..ea8223fd --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-charset-encrypted.mbox.tree | |||
@@ -0,0 +1,4 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::TextMessagePart | ||
3 | * MimeTreeParser::EncryptedMessagePart | ||
4 | * MimeTreeParser::SignedMessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-signed-broken.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-signed-broken.mbox new file mode 100644 index 00000000..fc0d2df9 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-signed-broken.mbox | |||
@@ -0,0 +1,26 @@ | |||
1 | From: test <test@kolab.org> | ||
2 | To: you@you.de | ||
3 | Subject: test | ||
4 | Date: Tue, 25 Aug 2015 16:47:10 +0200 | ||
5 | Message-ID: <1662097.O9NVKTC5pT@11b508545ba2> | ||
6 | X-KMail-Identity: 1428848833 | ||
7 | User-Agent: KMail/4.13.0.3 (Linux/4.1.0-rc5-siduction-amd64; KDE/4.14.3; x86_64; git-7c86098; 2015-08-23) | ||
8 | MIME-Version: 1.0 | ||
9 | Content-Transfer-Encoding: quoted-printable | ||
10 | Content-Type: text/plain; charset="iso-8859-1" | ||
11 | |||
12 | -----BEGIN PGP SIGNED MESSAGE----- | ||
13 | Hash: SHA256 | ||
14 | |||
15 | ohno break it =F6=E4=FC | ||
16 | -----BEGIN PGP SIGNATURE----- | ||
17 | Version: GnuPG v2 | ||
18 | |||
19 | iQEcBAEBCAAGBQJV3H/vAAoJEI2YYMWPJG3mEZQH/2mbCDa60risTUsomEecasc7 | ||
20 | kIc8Ch+OjZwlEQWKEiFbpLCMVjMwf0oGFcpc/dqnIyIqeVvF6Em+v7iqKuyAaihu | ||
21 | 7ZxxC816tDDI7UIpmyWu39McqGB/2hoA/q+QAMgBiaIuMwYJK9Aw08hXzoCds6O7 | ||
22 | Uor2Y6kMSwEiRnTSYvQHdoaZY3F9SFTLPgjvwfSu7scvp7xvH7bAVIqGGfkLjXpP | ||
23 | OFkDhEqUI7ORwD5cvvzEu57XmbGB7Nj5LRCGcTq6IlaGeN6Pw5+hOdd6MQ4iISwy | ||
24 | 870msP9NvktURnfXYC3fYnJaK/eUln7LYCBl/k04Z/3Um6dMYyQGh63oGv/2qxQ=3D | ||
25 | =3D4ctb | ||
26 | -----END PGP SIGNATURE----- | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-signed.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-signed.mbox new file mode 100644 index 00000000..6099a51f --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-signed.mbox | |||
@@ -0,0 +1,26 @@ | |||
1 | From: test <test@kolab.org> | ||
2 | To: you@you.de | ||
3 | Subject: test | ||
4 | Date: Tue, 25 Aug 2015 16:47:10 +0200 | ||
5 | Message-ID: <1662097.O9NVKTC5pT@11b508545ba2> | ||
6 | X-KMail-Identity: 1428848833 | ||
7 | User-Agent: KMail/4.13.0.3 (Linux/4.1.0-rc5-siduction-amd64; KDE/4.14.3; x86_64; git-7c86098; 2015-08-23) | ||
8 | MIME-Version: 1.0 | ||
9 | Content-Transfer-Encoding: quoted-printable | ||
10 | Content-Type: text/plain; charset="iso-8859-1" | ||
11 | |||
12 | -----BEGIN PGP SIGNED MESSAGE----- | ||
13 | Hash: SHA256 | ||
14 | |||
15 | ohno =F6=E4=FC | ||
16 | -----BEGIN PGP SIGNATURE----- | ||
17 | Version: GnuPG v2 | ||
18 | |||
19 | iQEcBAEBCAAGBQJV3H/vAAoJEI2YYMWPJG3mEZQH/2mbCDa60risTUsomEecasc7 | ||
20 | kIc8Ch+OjZwlEQWKEiFbpLCMVjMwf0oGFcpc/dqnIyIqeVvF6Em+v7iqKuyAaihu | ||
21 | 7ZxxC816tDDI7UIpmyWu39McqGB/2hoA/q+QAMgBiaIuMwYJK9Aw08hXzoCds6O7 | ||
22 | Uor2Y6kMSwEiRnTSYvQHdoaZY3F9SFTLPgjvwfSu7scvp7xvH7bAVIqGGfkLjXpP | ||
23 | OFkDhEqUI7ORwD5cvvzEu57XmbGB7Nj5LRCGcTq6IlaGeN6Pw5+hOdd6MQ4iISwy | ||
24 | 870msP9NvktURnfXYC3fYnJaK/eUln7LYCBl/k04Z/3Um6dMYyQGh63oGv/2qxQ=3D | ||
25 | =3D4ctb | ||
26 | -----END PGP SIGNATURE----- | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-signed.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-signed.mbox.html new file mode 100644 index 00000000..d32d0235 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-signed.mbox.html | |||
@@ -0,0 +1,35 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
9 | <tr class="signOkKeyOkH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
14 | <td align="right"> | ||
15 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | </table> | ||
19 | </td> | ||
20 | </tr> | ||
21 | <tr class="signOkKeyOkB"> | ||
22 | <td> | ||
23 | <div class="noquote"> | ||
24 | <div dir="ltr">ohno öäü</div> | ||
25 | </div> | ||
26 | </td> | ||
27 | </tr> | ||
28 | <tr class="signOkKeyOkH"> | ||
29 | <td dir="ltr">End of signed message</td> | ||
30 | </tr> | ||
31 | </table> | ||
32 | </div> | ||
33 | </div> | ||
34 | </body> | ||
35 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-signed.mbox.inProgress.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-signed.mbox.inProgress.html new file mode 100644 index 00000000..45a999d3 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-signed.mbox.inProgress.html | |||
@@ -0,0 +1,22 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signInProgress"> | ||
9 | <tr class="signInProgressH"> | ||
10 | <td dir="ltr">Please wait while the signature is being verified...</td> | ||
11 | </tr> | ||
12 | <tr class="signInProgressB"> | ||
13 | <td/> | ||
14 | </tr> | ||
15 | <tr class="signInProgressH"> | ||
16 | <td dir="ltr">End of signed message</td> | ||
17 | </tr> | ||
18 | </table> | ||
19 | </div> | ||
20 | </div> | ||
21 | </body> | ||
22 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-signed.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-signed.mbox.tree new file mode 100644 index 00000000..23e99880 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-signed.mbox.tree | |||
@@ -0,0 +1,3 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::TextMessagePart | ||
3 | * MimeTreeParser::SignedMessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-wrong-charset-encrypted.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-wrong-charset-encrypted.mbox new file mode 100644 index 00000000..5ecfc612 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-wrong-charset-encrypted.mbox | |||
@@ -0,0 +1,34 @@ | |||
1 | From t.glaser@tarent.de Mon Aug 18 10:59:01 2014 | ||
2 | Return-Path: <t.glaser@tarent.de> | ||
3 | Received: from tgwrk.ig42.org (tgwrk.ig42.org. | ||
4 | [2a01:238:4200:4342:321e:80ff:fe12:4223]) by mx.google.com with ESMTPSA id | ||
5 | pe6sm40660135wjb.38.2014.08.18.01.59.01 for <t.glaser@tarent.de> | ||
6 | (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 18 | ||
7 | Aug 2014 01:59:01 -0700 (PDT) | ||
8 | Date: Mon, 18 Aug 2014 10:59:00 +0200 (CEST) | ||
9 | From: Thorsten Glaser <t.glaser@tarent.de> | ||
10 | X-X-Sender: tglase@tglase.lan.tarent.de | ||
11 | To: Thorsten Glaser <t.glaser@tarent.de> | ||
12 | Subject: Test for Mozilla bug#1054187 | ||
13 | Message-ID: <alpine.DEB.2.11.1408181058220.30583@tglase.lan.tarent.de> | ||
14 | User-Agent: Alpine 2.11 (DEB 23 2013-08-11) | ||
15 | MIME-Version: 1.0 | ||
16 | Content-Type: TEXT/PLAIN; charset=US-ASCII | ||
17 | |||
18 | -----BEGIN PGP MESSAGE----- | ||
19 | Version: GnuPG v2 | ||
20 | |||
21 | hIwDTFSKP3rBSXcBBAClcHW9/6kw8i+XkMes47vcmGBCjIC0UysqkVYyNqT2Y6tb | ||
22 | s7pdfZFQPVWbdYoxP0WLzGgNFEWttlojWJmaTNiDVLOP22hFuJL3LUxesC1cWE+6 | ||
23 | foCkENDI2YnkAw4o5HTrmHoBlG7N/Nzzu3+1kfUVANSoAhgWd5WJDsXyvPMoD9LA | ||
24 | 7gHZZmq4bK5OwTHvAvdUOstCGd6Wqj5zkVXT59WOfYxYLcrGZ8I62lBS1/90TlJe | ||
25 | iEolBoaufZT7K2YW7k/+DPYgRIzvWISTccPWpcS7OOyifvK4zOFJeGsVq/DowP52 | ||
26 | Zt1xQj1En5CVUT/MkpvS1rB4BfSuhJETZdtUGveUe0HhcAzbnbIJULdK0p1XAo4O | ||
27 | q84vmOVD0BtKJVy/+rIW7h4aOr8C66HNDKLiUzWtdEaG97GQwhpQZ05JNsulG9tV | ||
28 | wyP6UWmDMY/5YuRoVHOYx8NXORHX4E5P151Tr5Fted9TpXI/gOTHHyPK5AiiDG6U | ||
29 | ja4fgkO6hYnjHxqqooxfGj+pg5atynnbMTALfWoXxmqyKrIB+SKqnsw+sCL3ro2x | ||
30 | j54EGZZ9wM6AYDQ48lJV5beWgQ55r28HxlhPNl/driNkMZHUazAdsubWo5NqJPXl | ||
31 | HrHQ4lv53ZUohbpVvdkmsldWhA5me7yRhQHytTQMMfadmSiYZVsy53siQ/5gEhUv | ||
32 | DQ4ggpUjf8twqR+5TLue5/r/fRXkGfKr5U1w4qcMcFcGwEIbwE+qtIDY0Cw/+xU= | ||
33 | =Ecl0 | ||
34 | -----END PGP MESSAGE----- | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-wrong-charset-encrypted.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-wrong-charset-encrypted.mbox.html new file mode 100644 index 00000000..3ed4e0fb --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-wrong-charset-encrypted.mbox.html | |||
@@ -0,0 +1,47 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
15 | <tr class="signOkKeyOkH"> | ||
16 | <td dir="ltr"> | ||
17 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
18 | <tr> | ||
19 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
20 | <td align="right"> | ||
21 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
22 | </td> | ||
23 | </tr> | ||
24 | </table> | ||
25 | </td> | ||
26 | </tr> | ||
27 | <tr class="signOkKeyOkB"> | ||
28 | <td> | ||
29 | <div class="noquote"> | ||
30 | <div dir="ltr">This is a utf-8 message you see - öäüß@ł€¶ŧ←↓→øþ</div> | ||
31 | </div> | ||
32 | </td> | ||
33 | </tr> | ||
34 | <tr class="signOkKeyOkH"> | ||
35 | <td dir="ltr">End of signed message</td> | ||
36 | </tr> | ||
37 | </table> | ||
38 | </td> | ||
39 | </tr> | ||
40 | <tr class="encrH"> | ||
41 | <td dir="ltr">End of encrypted message</td> | ||
42 | </tr> | ||
43 | </table> | ||
44 | </div> | ||
45 | </div> | ||
46 | </body> | ||
47 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-wrong-charset-encrypted.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-wrong-charset-encrypted.mbox.tree new file mode 100644 index 00000000..ea8223fd --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-inline-wrong-charset-encrypted.mbox.tree | |||
@@ -0,0 +1,4 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::TextMessagePart | ||
3 | * MimeTreeParser::EncryptedMessagePart | ||
4 | * MimeTreeParser::SignedMessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-apple.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-apple.mbox new file mode 100644 index 00000000..ba85df86 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-apple.mbox | |||
@@ -0,0 +1,129 @@ | |||
1 | Return-Path: <sender@example.org> | ||
2 | Sender: sender@example.org | ||
3 | From: Quonk <sender@example.org> | ||
4 | X-Pgp-Agent: GPGMail | ||
5 | Content-Type: multipart/signed; boundary="Apple-Mail=_12345678-1234-1234-1234-12345678"; protocol="application/pgp-signature"; micalg=pgp-sha512 | ||
6 | Subject: PDF | ||
7 | Date: Mon, 16 Jan 2017 15:14:51 +0100 | ||
8 | Message-Id: <199E2891-3080-42B6-ABCD-1230B78EBABC@example.org> | ||
9 | To: Konqi <konqui@example.org> | ||
10 | Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) | ||
11 | |||
12 | |||
13 | --Apple-Mail=_12345678-1234-1234-1234-12345678 | ||
14 | Content-Type: multipart/alternative; | ||
15 | boundary="Apple-Mail=_23456789-1234-1234-1234-12345678" | ||
16 | |||
17 | |||
18 | --Apple-Mail=_23456789-1234-1234-1234-12345678 | ||
19 | Content-Transfer-Encoding: quoted-printable | ||
20 | Content-Type: text/plain; | ||
21 | charset=utf-8 | ||
22 | |||
23 | |||
24 | |||
25 | =E2=80=A6 | ||
26 | Quonk | ||
27 | Klar=C3=A4lvdalens Datakonsult AB, a KDAB Group company | ||
28 | Sweden (HQ) +46-563-540090, Germany +49-30-521325470 | ||
29 | KDAB - The Qt, C++ and OpenGL Experts | www.kdab.com | ||
30 | |||
31 | |||
32 | --Apple-Mail=_23456789-1234-1234-1234-12345678 | ||
33 | Content-Type: multipart/mixed; | ||
34 | boundary="Apple-Mail=_34567890-1234-1234-1234-12345678" | ||
35 | |||
36 | |||
37 | --Apple-Mail=_34567890-1234-1234-1234-12345678 | ||
38 | Content-Transfer-Encoding: 7bit | ||
39 | Content-Type: text/html; | ||
40 | charset=us-ascii | ||
41 | |||
42 | <html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div class="">pre attachment</div></body></html> | ||
43 | --Apple-Mail=_34567890-1234-1234-1234-12345678 | ||
44 | Content-Disposition: attachment; filename="image.png" | ||
45 | Content-Transfer-Encoding: base64 | ||
46 | Content-Type: image/png; name="image.png" | ||
47 | |||
48 | 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 | ||
91 | o/0d59+Lh3Y1HHcAAAAASUVORK5CYII= | ||
92 | --Apple-Mail=_34567890-1234-1234-1234-12345678 | ||
93 | Content-Transfer-Encoding: quoted-printable | ||
94 | Content-Type: text/html; | ||
95 | charset=utf-8 | ||
96 | |||
97 | <html><head><meta name="qrichtext" content="1" /><style type="text/css"> | ||
98 | p, li { white-space: pre-wrap; } | ||
99 | </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> | ||
100 | <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">Some <span style=" font-weight:600;">HTML</span> text</p> | ||
101 | </body></html> | ||
102 | |||
103 | --Apple-Mail=_34567890-1234-1234-1234-12345678-- | ||
104 | |||
105 | --Apple-Mail=_23456789-1234-1234-1234-12345678-- | ||
106 | |||
107 | --Apple-Mail=_12345678-1234-1234-1234-12345678 | ||
108 | Content-Transfer-Encoding: 7bit | ||
109 | Content-Disposition: attachment; | ||
110 | filename=signature.asc | ||
111 | Content-Type: application/pgp-signature; | ||
112 | name=signature.asc | ||
113 | Content-Description: Message signed with OpenPGP using GPGMail | ||
114 | |||
115 | -----BEGIN PGP SIGNATURE----- | ||
116 | |||
117 | iQEzBAEBCAAdFiEEG6Mjkys/qoJhMseejZhgxY8kbeYFAlh/rcwACgkQjZhgxY8k | ||
118 | beYaoQf+Miuj4cnVumYXMopVMHJs6AK6D+uKO4jXHl/XUK3TOg17kFUZDEN/9JFd | ||
119 | SCN9oD5emzpBl4GSmYBbjvLvXTHTLHviVD6In35+wgMlQL+xfAv91Dx56QslCQMo | ||
120 | UhDYGgFPiEAfCY2UozQD/R3KWOHFB9bNdtOM0hdT84D35W2PZhzTlz2q3hpq3bYw | ||
121 | lNhFVebqURh9OEAZglB3Q9oDE13PJDtRLflKquC5ZU8N4Bj23TCOgxv4FzSyyAn/ | ||
122 | XalEKdwYrkZ8p4rRtd0YvAVevDUC4pQNGTgfsXgldoPEGUBXsdlczLPEj2sjLvNu | ||
123 | HX1GMDrZL/+7DZsURYV5DjhsqWzExQ== | ||
124 | =q0F6 | ||
125 | -----END PGP SIGNATURE----- | ||
126 | |||
127 | --Apple-Mail=_12345678-1234-1234-1234-12345678-- | ||
128 | |||
129 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-apple.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-apple.mbox.html new file mode 100644 index 00000000..234eaae4 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-apple.mbox.html | |||
@@ -0,0 +1,58 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signWarn"> | ||
9 | <tr class="signWarnH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td>Not enough information to check signature validity.</td> | ||
14 | <td align="right"> | ||
15 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | </table> | ||
19 | </td> | ||
20 | </tr> | ||
21 | <tr class="signWarnB"> | ||
22 | <td> | ||
23 | <a name="att1"/> | ||
24 | <div id="attachmentDiv1"> | ||
25 | <a name="att1.2"/> | ||
26 | <div id="attachmentDiv1.2"> | ||
27 | <a name="att1.2.1"/> | ||
28 | <div id="attachmentDiv1.2.1"> | ||
29 | <div style="position: relative"> | ||
30 | <div class="">pre attachment</div> | ||
31 | </div> | ||
32 | </div> | ||
33 | <a name="att1.2.2"/> | ||
34 | <div id="attachmentDiv1.2.2"> | ||
35 | <hr/> | ||
36 | <div> | ||
37 | <a href="attachment:1.2.2?place=body"><img align="center" height="48" width="48" src="file:image-png.svg" border="0" style="max-width: 100%" alt=""/>image.png</a> | ||
38 | </div> | ||
39 | <div/> | ||
40 | </div> | ||
41 | <a name="att1.2.3"/> | ||
42 | <div id="attachmentDiv1.2.3"> | ||
43 | <div style="position: relative"> | ||
44 | <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">Some <span style=" font-weight:600;">HTML</span> text</p> | ||
45 | </div> | ||
46 | </div> | ||
47 | </div> | ||
48 | </div> | ||
49 | </td> | ||
50 | </tr> | ||
51 | <tr class="signWarnH"> | ||
52 | <td dir="ltr">End of signed message</td> | ||
53 | </tr> | ||
54 | </table> | ||
55 | </div> | ||
56 | </div> | ||
57 | </body> | ||
58 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-apple.mbox.inProgress.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-apple.mbox.inProgress.html new file mode 100644 index 00000000..b5236fe4 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-apple.mbox.inProgress.html | |||
@@ -0,0 +1,49 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signInProgress"> | ||
9 | <tr class="signInProgressH"> | ||
10 | <td dir="ltr">Please wait while the signature is being verified...</td> | ||
11 | </tr> | ||
12 | <tr class="signInProgressB"> | ||
13 | <td> | ||
14 | <a name="att1"/> | ||
15 | <div id="attachmentDiv1"> | ||
16 | <a name="att1.2"/> | ||
17 | <div id="attachmentDiv1.2"> | ||
18 | <a name="att1.2.1"/> | ||
19 | <div id="attachmentDiv1.2.1"> | ||
20 | <div style="position: relative"> | ||
21 | <div class="">pre attachment</div> | ||
22 | </div> | ||
23 | </div> | ||
24 | <a name="att1.2.2"/> | ||
25 | <div id="attachmentDiv1.2.2"> | ||
26 | <hr/> | ||
27 | <div> | ||
28 | <a href="attachment:1.2.2?place=body"><img align="center" height="48" width="48" src="file:image-png.svg" border="0" style="max-width: 100%" alt=""/>image.png</a> | ||
29 | </div> | ||
30 | <div/> | ||
31 | </div> | ||
32 | <a name="att1.2.3"/> | ||
33 | <div id="attachmentDiv1.2.3"> | ||
34 | <div style="position: relative"> | ||
35 | <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;">Some <span style=" font-weight:600;">HTML</span> text</p> | ||
36 | </div> | ||
37 | </div> | ||
38 | </div> | ||
39 | </div> | ||
40 | </td> | ||
41 | </tr> | ||
42 | <tr class="signInProgressH"> | ||
43 | <td dir="ltr">End of signed message</td> | ||
44 | </tr> | ||
45 | </table> | ||
46 | </div> | ||
47 | </div> | ||
48 | </body> | ||
49 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-apple.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-apple.mbox.tree new file mode 100644 index 00000000..3ade4efe --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-apple.mbox.tree | |||
@@ -0,0 +1,3 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::SignedMessagePart | ||
3 | * MimeTreeParser::AlternativeMessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-base64-mailman-footer.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-base64-mailman-footer.mbox new file mode 100644 index 00000000..70bf4ef8 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-base64-mailman-footer.mbox | |||
@@ -0,0 +1,117 @@ | |||
1 | Return-Path: <kde-pim-bounces@kde.org> | ||
2 | X-Sieve: CMU Sieve 2.3 | ||
3 | X-Virus-Scanned: amavisd-new at site | ||
4 | Authentication-Results: linux.site (amavisd-new); dkim=pass (1024-bit key) | ||
5 | header.d=kde.org | ||
6 | Received: from postbox.kde.org (localhost.localdomain [127.0.0.1]) | ||
7 | by postbox.kde.org (Postfix) with ESMTP id 867B8BF274; | ||
8 | Sat, 22 Aug 2015 09:32:21 +0000 (UTC) | ||
9 | DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=kde.org; s=default; | ||
10 | t=1440235945; bh=WhGhdxvdvRs04JdzjAkPcBVPmx7putlUE3ka9dvMIoc=; | ||
11 | h=From:To:Date:Subject:Reply-To:List-Id:List-Unsubscribe:List-Post: | ||
12 | List-Help:List-Subscribe:From; | ||
13 | b=mvxeMMGebkZKq7hekRypkPvt6S8lidA/8vQ3AC5Kft8HDmj8lDUpvOo0VXwCF0OG+ | ||
14 | iAOPKxYtxclf8PgYvgK8NIzr56CwcdlNm3/PpoSe20P3I1DGFpDDMFtW5tOD05SSHz | ||
15 | 5L6PCQyb+KFW1GrXgcm+eHshzJh3U8nHcyd8Vw2E= | ||
16 | X-Original-To: kde-pim@kde.org | ||
17 | Delivered-To: kde-pim@localhost.kde.org | ||
18 | X-Virus-Scanned: amavisd-new at site | ||
19 | From: Volker Krause <vkrause@kde.org> | ||
20 | To: KDEPIM <kde-pim@kde.org> | ||
21 | Date: Sat, 22 Aug 2015 11:31:38 +0200 | ||
22 | Message-ID: <11737387.KAAPH2KlE3@vkpc5> | ||
23 | Organization: KDE | ||
24 | User-Agent: KMail/4.14.3 (Linux/3.16.6-2-desktop; KDE/4.14.7; x86_64; | ||
25 | git-c97b13e; 2014-12-30) | ||
26 | MIME-Version: 1.0 | ||
27 | Subject: [Kde-pim] Phabricator Project Setup | ||
28 | X-BeenThere: kde-pim@kde.org | ||
29 | X-Mailman-Version: 2.1.16 | ||
30 | Precedence: list | ||
31 | Reply-To: KDE PIM <kde-pim@kde.org> | ||
32 | List-Id: KDE PIM <kde-pim.kde.org> | ||
33 | List-Unsubscribe: <https://mail.kde.org/mailman/options/kde-pim>, | ||
34 | <mailto:kde-pim-request@kde.org?subject=unsubscribe> | ||
35 | List-Post: <mailto:kde-pim@kde.org> | ||
36 | List-Help: <mailto:kde-pim-request@kde.org?subject=help> | ||
37 | List-Subscribe: <https://mail.kde.org/mailman/listinfo/kde-pim>, | ||
38 | <mailto:kde-pim-request@kde.org?subject=subscribe> | ||
39 | Content-Type: multipart/mixed; boundary="===============1910646461178264940==" | ||
40 | Errors-To: kde-pim-bounces@kde.org | ||
41 | Sender: "kde-pim" <kde-pim-bounces@kde.org> | ||
42 | |||
43 | |||
44 | --===============1910646461178264940== | ||
45 | Content-Type: multipart/signed; boundary="nextPart2440608.7aDuJBW7cK"; micalg="pgp-sha1"; protocol="application/pgp-signature" | ||
46 | |||
47 | --nextPart2440608.7aDuJBW7cK | ||
48 | Content-Transfer-Encoding: quoted-printable | ||
49 | Content-Type: text/plain; charset="us-ascii" | ||
50 | |||
51 | Hi, | ||
52 | |||
53 | I've talked to Ben, the current Phabricator test setup would actually b= | ||
54 | e=20 | ||
55 | usable for "production" use for task/project management for us, without= | ||
56 | =20 | ||
57 | causing the sysadmins unreasonable trouble when migrating to the full=20= | ||
58 | |||
59 | production deployment of Phabricator eventually. | ||
60 | |||
61 | Phabricator project layout it orthogonal to repo layout, so we can stru= | ||
62 | cture=20 | ||
63 | this however we want. Among other teams I see at least the following la= | ||
64 | youts: | ||
65 | - single project for everything | ||
66 | - a project per release | ||
67 | - a project per component/module (ie. close to the repo layout) | ||
68 | |||
69 | How do we want to structure this? | ||
70 | |||
71 | I would start with a single project to not fragment this too much, as w= | ||
72 | e have=20 | ||
73 | a relatively small team actually looking into this, so everyone is look= | ||
74 | ing at=20 | ||
75 | most sub-projects anyway. And should we eventually hit scaling limits, = | ||
76 | we can=20 | ||
77 | always expand this I think. | ||
78 | |||
79 | We of course should also talk about what we actually want to put in the= | ||
80 | re. My=20 | ||
81 | current motivation is having a place to collect the tasks for getting m= | ||
82 | ore of=20 | ||
83 | the former pimlibs into KF5, and anything else I run into on the way th= | ||
84 | ere=20 | ||
85 | that we eventually should clean up/improve. | ||
86 | |||
87 | regards, | ||
88 | Volker | ||
89 | |||
90 | --nextPart2440608.7aDuJBW7cK | ||
91 | Content-Type: application/pgp-signature; name="signature.asc" | ||
92 | Content-Description: This is a digitally signed message part. | ||
93 | Content-Transfer-Encoding: 7Bit | ||
94 | |||
95 | -----BEGIN PGP SIGNATURE----- | ||
96 | Version: GnuPG v2 | ||
97 | |||
98 | iD8DBQBV2EF9f5bM1k0S0kcRAk9cAJ4vHEh9JkT3Jy3EfxII7nP9HPmxrQCgjeLF | ||
99 | eYXCyN9NRAyC6CHeNnWZN10= | ||
100 | =Y8W4 | ||
101 | -----END PGP SIGNATURE----- | ||
102 | |||
103 | --nextPart2440608.7aDuJBW7cK-- | ||
104 | |||
105 | |||
106 | --===============1910646461178264940== | ||
107 | Content-Type: text/plain; charset="utf-8" | ||
108 | MIME-Version: 1.0 | ||
109 | Content-Transfer-Encoding: base64 | ||
110 | Content-Disposition: inline | ||
111 | |||
112 | X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KS0RFIFBJTSBt | ||
113 | YWlsaW5nIGxpc3Qga2RlLXBpbUBrZGUub3JnCmh0dHBzOi8vbWFpbC5rZGUub3JnL21haWxtYW4v | ||
114 | bGlzdGluZm8va2RlLXBpbQpLREUgUElNIGhvbWUgcGFnZSBhdCBodHRwOi8vcGltLmtkZS5vcmcv | ||
115 | |||
116 | --===============1910646461178264940==-- | ||
117 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-base64-mailman-footer.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-base64-mailman-footer.mbox.html new file mode 100644 index 00000000..50eddaa6 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-base64-mailman-footer.mbox.html | |||
@@ -0,0 +1,78 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <table cellspacing="1" cellpadding="1" class="signWarn"> | ||
11 | <tr class="signWarnH"> | ||
12 | <td dir="ltr"> | ||
13 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
14 | <tr> | ||
15 | <td>Not enough information to check signature validity.</td> | ||
16 | <td align="right"> | ||
17 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
18 | </td> | ||
19 | </tr> | ||
20 | </table> | ||
21 | </td> | ||
22 | </tr> | ||
23 | <tr class="signWarnB"> | ||
24 | <td> | ||
25 | <a name="att1.1"/> | ||
26 | <div id="attachmentDiv1.1"> | ||
27 | <div class="noquote"> | ||
28 | <div dir="ltr">Hi,</div> | ||
29 | <br/> | ||
30 | <div dir="ltr">I've talked to Ben, the current Phabricator test setup would actually be </div> | ||
31 | <div dir="ltr">usable for "production" use for task/project management for us, without </div> | ||
32 | <div dir="ltr">causing the sysadmins unreasonable trouble when migrating to the full </div> | ||
33 | <div dir="ltr">production deployment of Phabricator eventually.</div> | ||
34 | <br/> | ||
35 | <div dir="ltr">Phabricator project layout it orthogonal to repo layout, so we can structure </div> | ||
36 | <div dir="ltr">this however we want. Among other teams I see at least the following layouts:</div> | ||
37 | <div dir="ltr">- single project for everything</div> | ||
38 | <div dir="ltr">- a project per release</div> | ||
39 | <div dir="ltr">- a project per component/module (ie. close to the repo layout)</div> | ||
40 | <br/> | ||
41 | <div dir="ltr">How do we want to structure this?</div> | ||
42 | <br/> | ||
43 | <div dir="ltr">I would start with a single project to not fragment this too much, as we have </div> | ||
44 | <div dir="ltr">a relatively small team actually looking into this, so everyone is looking at </div> | ||
45 | <div dir="ltr">most sub-projects anyway. And should we eventually hit scaling limits, we can </div> | ||
46 | <div dir="ltr">always expand this I think.</div> | ||
47 | <br/> | ||
48 | <div dir="ltr">We of course should also talk about what we actually want to put in there. My </div> | ||
49 | <div dir="ltr">current motivation is having a place to collect the tasks for getting more of </div> | ||
50 | <div dir="ltr">the former pimlibs into KF5, and anything else I run into on the way there </div> | ||
51 | <div dir="ltr">that we eventually should clean up/improve.</div> | ||
52 | <br/> | ||
53 | <div dir="ltr">regards,</div> | ||
54 | <div dir="ltr">Volker</div> | ||
55 | </div> | ||
56 | </div> | ||
57 | </td> | ||
58 | </tr> | ||
59 | <tr class="signWarnH"> | ||
60 | <td dir="ltr">End of signed message</td> | ||
61 | </tr> | ||
62 | </table> | ||
63 | </div> | ||
64 | <a name="att2"/> | ||
65 | <div id="attachmentDiv2"> | ||
66 | <div class="noquote"> | ||
67 | <div dir="ltr">_______________________________________________</div> | ||
68 | <div dir="ltr">KDE PIM mailing list <a href="mailto:kde-pim@kde.org">kde-pim@kde.org</a></div> | ||
69 | <div dir="ltr"> | ||
70 | <a href="https://mail.kde.org/mailman/listinfo/kde-pim">https://mail.kde.org/mailman/listinfo/kde-pim</a> | ||
71 | </div> | ||
72 | <div dir="ltr">KDE PIM home page at <a href="http://pim.kde.org/">http://pim.kde.org/</a></div> | ||
73 | </div> | ||
74 | </div> | ||
75 | </div> | ||
76 | </div> | ||
77 | </body> | ||
78 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-base64-mailman-footer.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-base64-mailman-footer.mbox.tree new file mode 100644 index 00000000..2753978c --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-base64-mailman-footer.mbox.tree | |||
@@ -0,0 +1,7 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::MimeMessagePart | ||
3 | * MimeTreeParser::SignedMessagePart | ||
4 | * MimeTreeParser::TextMessagePart | ||
5 | * MimeTreeParser::MessagePart | ||
6 | * MimeTreeParser::AttachmentMessagePart | ||
7 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-encrypted-two-attachments.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-encrypted-two-attachments.mbox new file mode 100644 index 00000000..7939af83 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-encrypted-two-attachments.mbox | |||
@@ -0,0 +1,52 @@ | |||
1 | From: firstname.lastname@example.com | ||
2 | To: test@kolab.org | ||
3 | Subject: OpenPGP signed+encrypted with 2 text attachments | ||
4 | Date: Sun, 30 Aug 2015 12:01:20 +0200 | ||
5 | Message-ID: <4368981.7YjI8cQ7Br@vkpc5> | ||
6 | X-KMail-Identity: 402312391 | ||
7 | X-KMail-Dictionary: en_US | ||
8 | User-Agent: KMail/5.0.42 pre (Linux/3.16.6-2-desktop; KDE/5.14.0; x86_64; ; ) | ||
9 | MIME-Version: 1.0 | ||
10 | Content-Type: multipart/encrypted; boundary="nextPart3246504.5GAivIUY6Q"; protocol="application/pgp-encrypted" | ||
11 | |||
12 | --nextPart3246504.5GAivIUY6Q | ||
13 | Content-Type: application/pgp-encrypted | ||
14 | Content-Disposition: attachment | ||
15 | Content-Transfer-Encoding: 7Bit | ||
16 | |||
17 | Version: 1 | ||
18 | --nextPart3246504.5GAivIUY6Q | ||
19 | Content-Type: application/octet-stream | ||
20 | Content-Disposition: inline; filename="msg.asc" | ||
21 | Content-Transfer-Encoding: 7Bit | ||
22 | |||
23 | -----BEGIN PGP MESSAGE----- | ||
24 | Version: GnuPG v2 | ||
25 | |||
26 | hQEMAwzOQ1qnzNo7AQf9Ge9nFjtqLOKSQNhobS+0iCB2GUdLP7LCIWu6gBo9pWa+ | ||
27 | 9wCNLxwmhqWOYv37RAk6v5VXjCYUX3/7UF7e7epSqo7YjS7VsUOow0gszQjJqocK | ||
28 | Gd1T1oyNknza6oaRGgVeWPOZVAPb+Gj+3yS8VZa33Aq2ay7F7eI8dvRUN7Z3TuAh | ||
29 | BOVV+itwHHzanfNG8RoCvokcE1vkANfvI3u7R4Q93U8Q+Qmjh1L5ypPe37N5BtAF | ||
30 | UCPCiD9XySHjm5PyXx8ImrJDeUgFs1YhYox4B6NKsCcmm7R8NdYZYGNo1kzR4yKV | ||
31 | FzMu1NUU/bwtvrpRXLe4dBL1pEkO2PpuMYDUR9+WVNLpAafTDbeIHPi/Z8v48seQ | ||
32 | JxscRehfOB3DG1xrvQTMFJc3UJEBqNMkM9gOxLKOQcCcZp79FMsfWB7EjjlPR1Oh | ||
33 | gyA5NR+4HxNw75Q5FpZ7qziWvIrb1Kzwfbsb9Dimx+MmiNMX9kUEPqkPo4pspwZ9 | ||
34 | pLCfjYUnikcnYyQ0b2ojsjQmLotYlz8mK0GH9L40zfFb1+oYfuu4Y9FPzHdPzNjx | ||
35 | aFRY8cJQy1CNkCITsz53kni5rk3zVsapq0+NeBDEBYoUqX815fo0W+HVF7/j/uhT | ||
36 | lPkJhRnJZPwOr5XgzPk3Yk9GlSRLJiqKF4/G8ya/nKyiNIebKM7DTcldWCmZM95B | ||
37 | BIftaRN4hvVBhl0ElFnZg0xLP1AePFuuplRQTDuW8gpaNKrxwXiF3d4XJdVmjh/p | ||
38 | YmnieIhbogUHFXugc3g9rE8c3oHA8b514ajSHUm9DXc0cXqw/DrsxXZtKXb+IDpF | ||
39 | uv9AiM7bSU7I0h/AlaAL5uU0mL58XhkXXFQtaTbMS+u4Rv/Ie1IsnlWR4QSc4m7x | ||
40 | 91rfC1fIf/U43wwwnR+UjIRyr2vWcgTTpwnsZFDD8eSoJ8WqinazJRlMud6Sv+L6 | ||
41 | gI2wiCYyEYHrFEHy0WuS2nUSMNl5AWm31zB+erfKSLZr4EIFBIy4dJWZKwYhi46Q | ||
42 | pDbw1Svf7xVdHix+5UkkYy3AY70ipf5bxA7FTJ1geJa86VKShDkqVpU6EtT+YQIJ | ||
43 | 7geWCyskT0DTaPp6qc8QpjajmRYssDcjiTke5WiqLQAjm8BIuny0fNm6kNC8KMS7 | ||
44 | eGmaBI2nB92bgrqlAW+LhvW95YB0dfO8beg3jKk8s6OJ4gicGFEFp6hXFfEsEZiv | ||
45 | gi7Q2QCVFvCV11884H8rtZYmMRFGmuVUvm6xh/z1xicmfSy0YUowgkA3jpi7o913 | ||
46 | fqmYOHAwzCxv8Zp7xBf9hLT8DxMXdxqYUnJ+FaEMRcFkJ1MAFBpQ9uDbbqAz5bd5 | ||
47 | F3d6o0JSleOOTDlNH7wpN15HYtaCx9v3mXLN9FY4Y1g4mE8wdU0JZn7sFEmgmAkV | ||
48 | /vj9khHS6eB01GPiCA6sy/u2tSdCQQ== | ||
49 | =1GHi | ||
50 | -----END PGP MESSAGE----- | ||
51 | |||
52 | --nextPart3246504.5GAivIUY6Q-- | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-encrypted-two-attachments.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-encrypted-two-attachments.mbox.html new file mode 100644 index 00000000..53856e74 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-encrypted-two-attachments.mbox.html | |||
@@ -0,0 +1,88 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
18 | <tr class="signOkKeyOkH"> | ||
19 | <td dir="ltr"> | ||
20 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
21 | <tr> | ||
22 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
23 | <td align="right"> | ||
24 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
25 | </td> | ||
26 | </tr> | ||
27 | </table> | ||
28 | </td> | ||
29 | </tr> | ||
30 | <tr class="signOkKeyOkB"> | ||
31 | <td> | ||
32 | <a name="att1"/> | ||
33 | <div id="attachmentDiv1"> | ||
34 | <a name="att1.1"/> | ||
35 | <div id="attachmentDiv1.1"> | ||
36 | <div class="noquote"> | ||
37 | <div dir="ltr">this is the main body</div> | ||
38 | </div> | ||
39 | </div> | ||
40 | <a name="att1.2"/> | ||
41 | <div id="attachmentDiv1.2"> | ||
42 | <table cellspacing="1" class="textAtm"> | ||
43 | <tr class="textAtmH"> | ||
44 | <td dir="ltr">attachment1.txt</td> | ||
45 | </tr> | ||
46 | <tr class="textAtmB"> | ||
47 | <td> | ||
48 | <div class="noquote"> | ||
49 | <div dir="ltr">this is one attachment</div> | ||
50 | </div> | ||
51 | </td> | ||
52 | </tr> | ||
53 | </table> | ||
54 | </div> | ||
55 | <a name="att1.3"/> | ||
56 | <div id="attachmentDiv1.3"> | ||
57 | <table cellspacing="1" class="textAtm"> | ||
58 | <tr class="textAtmH"> | ||
59 | <td dir="ltr">attachment2.txt</td> | ||
60 | </tr> | ||
61 | <tr class="textAtmB"> | ||
62 | <td> | ||
63 | <div class="noquote"> | ||
64 | <div dir="ltr">this is the second attachment</div> | ||
65 | </div> | ||
66 | </td> | ||
67 | </tr> | ||
68 | </table> | ||
69 | </div> | ||
70 | </div> | ||
71 | </td> | ||
72 | </tr> | ||
73 | <tr class="signOkKeyOkH"> | ||
74 | <td dir="ltr">End of signed message</td> | ||
75 | </tr> | ||
76 | </table> | ||
77 | </div> | ||
78 | </div> | ||
79 | </td> | ||
80 | </tr> | ||
81 | <tr class="encrH"> | ||
82 | <td dir="ltr">End of encrypted message</td> | ||
83 | </tr> | ||
84 | </table> | ||
85 | </div> | ||
86 | </div> | ||
87 | </body> | ||
88 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-encrypted-two-attachments.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-encrypted-two-attachments.mbox.tree new file mode 100644 index 00000000..6705a4d7 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-encrypted-two-attachments.mbox.tree | |||
@@ -0,0 +1,10 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::EncryptedMessagePart | ||
3 | * MimeTreeParser::SignedMessagePart | ||
4 | * MimeTreeParser::MimeMessagePart | ||
5 | * MimeTreeParser::TextMessagePart | ||
6 | * MimeTreeParser::MessagePart | ||
7 | * MimeTreeParser::AttachmentMessagePart | ||
8 | * MimeTreeParser::MessagePart | ||
9 | * MimeTreeParser::AttachmentMessagePart | ||
10 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-encrypted.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-encrypted.mbox new file mode 100644 index 00000000..6d723d52 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-encrypted.mbox | |||
@@ -0,0 +1,47 @@ | |||
1 | From: OpenPGP Test <test@kolab.org> | ||
2 | To: test@kolab.org | ||
3 | Subject: OpenPGP signed and encrypted | ||
4 | Date: Tue, 07 Sep 2010 18:08:44 +0200 | ||
5 | User-Agent: KMail/4.6 pre (Linux/2.6.34-rc2-2-default; KDE/4.5.60; x86_64; ; ) | ||
6 | MIME-Version: 1.0 | ||
7 | Content-Type: multipart/encrypted; boundary="nextPart25203163.0xtB501Z4V"; protocol="application/pgp-encrypted" | ||
8 | Content-Transfer-Encoding: 7Bit | ||
9 | |||
10 | |||
11 | --nextPart25203163.0xtB501Z4V | ||
12 | Content-Type: application/pgp-encrypted | ||
13 | Content-Disposition: attachment | ||
14 | |||
15 | Version: 1 | ||
16 | --nextPart25203163.0xtB501Z4V | ||
17 | Content-Type: application/octet-stream | ||
18 | Content-Disposition: inline; filename="msg.asc" | ||
19 | |||
20 | -----BEGIN PGP MESSAGE----- | ||
21 | Version: GnuPG v2.0.15 (GNU/Linux) | ||
22 | |||
23 | hQEMAwzOQ1qnzNo7AQf7BFYWaGiCTGtXY59bSh3LCXNnWZejblYALxIUNXOFEXbm | ||
24 | y/YA95FmQsy3U5HRCAJV/DY1PEaJz1RTm9bcdIpDC3Ab2YzSwmOwV5fcoUOB2df4 | ||
25 | KjX19Q+2F3JxpPQ0N1gHf4dKfIu19LH+CKeFzUN13aJs5J4A5wlj+NjJikxzmxDS | ||
26 | kDtNYndynPmo9DJQcsUFw3gpvx5HaHvx1cT4mAB2M5cd2l+vN1jYbaWb0x5Zq41z | ||
27 | mRNI89aPieC3rcM2289m68fGloNbYvi8mZJu5RrI4Tbi/D7Rjm1y63lHgVV6AN88 | ||
28 | XAzRiedOeF99LoTBulrJdtT8AAgCs8nCetcWpIffdtLpAZiZkzHmYOU7nqGxqpRk | ||
29 | OVeUTrCn9DW2SMmHjaP4IiKnMvzEycu5F4a72+V1LeMIhMSjTRTq+ZE2PTaqH59z | ||
30 | QsMn7Nb6GlOICbTptRKNNtyJKO7xXlpT7YtvNKnCyEOkH2XrYH7GvpYCiuQ0/o+7 | ||
31 | SxV436ZejiYIg6DQDXJCoa2DXimGp0C10Jh0HwX0BixpoNtwEjkGRYcX6P/JzkH0 | ||
32 | oBood4Ly+Tiu6iVDisrK3AVGYpIzCrKkE9qULTw4R/jFKR2tcCqGb7Fxtk2LV7Md | ||
33 | 3S+DyOKrvKQ5GNwbp9OE97pwk+Lr1JS3UAvj5f6BR+1PVNcC0i0wWkgwDjPh1eGD | ||
34 | enMQmorE6+N0uHtH2F4fOxo/TbbA3+zhI25kVW3bO03xyUl/cmQZeb52nvfOvtOo | ||
35 | gSb2j6bPkzljDMPEzrtJjbFtGHJbPfUQYJgZv9OE2EQIqpg6goIw279alBq6GLIX | ||
36 | pkO+dRmztzjcDyhcLxMuQ4cTizel/0J/bU7U6lvwHSyZVbT4Ev+opG5K70Hbqbwr | ||
37 | NZcgdWXbSeesxGM/oQaMeSurOevxVl+/zrTVAek61aRRd1baAYqgi2pf2V7y4oK3 | ||
38 | qkdxzmoFpRdNlfrQW65NZWnHOi9rC9XxANIwnVn3kRcDf+t2K4PrFluI157lXM/o | ||
39 | wX91j88fazysbJlQ6TjsApO9ETiPOFEBqouxCTtCZzlUgyVG8jpIjdHWFnagHeXH | ||
40 | +lXNdYjxnTWTjTxMOZC9ySMpXkjWdFI1ecxVwu6Ik6RX51rvBJAAXWP75yUjPKJ4 | ||
41 | rRi5oQl/VLl0QznO7lvgMPtUwgDVNWO/r7Kn9B387h9fAJZ/kWFAEDW2yhAzABqO | ||
42 | rCNKDzBPgfAwCnikCpMoCbOL7SU8BdbzQHD8/Lkv4m0pzliHQ/KkGF710koBzTmF | ||
43 | N7+wk9pwIuvcrEBQj567 | ||
44 | =GV0c | ||
45 | -----END PGP MESSAGE----- | ||
46 | |||
47 | --nextPart25203163.0xtB501Z4V-- | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-encrypted.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-encrypted.mbox.html new file mode 100644 index 00000000..86a964b8 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-encrypted.mbox.html | |||
@@ -0,0 +1,55 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
18 | <tr class="signOkKeyOkH"> | ||
19 | <td dir="ltr"> | ||
20 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
21 | <tr> | ||
22 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
23 | <td align="right"> | ||
24 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
25 | </td> | ||
26 | </tr> | ||
27 | </table> | ||
28 | </td> | ||
29 | </tr> | ||
30 | <tr class="signOkKeyOkB"> | ||
31 | <td> | ||
32 | <a name="att1"/> | ||
33 | <div id="attachmentDiv1"> | ||
34 | <div class="noquote"> | ||
35 | <div dir="ltr">encrypted message text</div> | ||
36 | </div> | ||
37 | </div> | ||
38 | </td> | ||
39 | </tr> | ||
40 | <tr class="signOkKeyOkH"> | ||
41 | <td dir="ltr">End of signed message</td> | ||
42 | </tr> | ||
43 | </table> | ||
44 | </div> | ||
45 | </div> | ||
46 | </td> | ||
47 | </tr> | ||
48 | <tr class="encrH"> | ||
49 | <td dir="ltr">End of encrypted message</td> | ||
50 | </tr> | ||
51 | </table> | ||
52 | </div> | ||
53 | </div> | ||
54 | </body> | ||
55 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-encrypted.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-encrypted.mbox.tree new file mode 100644 index 00000000..7d5bbeb7 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-encrypted.mbox.tree | |||
@@ -0,0 +1,5 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::EncryptedMessagePart | ||
3 | * MimeTreeParser::SignedMessagePart | ||
4 | * MimeTreeParser::TextMessagePart | ||
5 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist+additional-children.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist+additional-children.mbox new file mode 100644 index 00000000..dbca8d45 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist+additional-children.mbox | |||
@@ -0,0 +1,126 @@ | |||
1 | Return-Path: <plasma-devel-bounces@kde.org> | ||
2 | Delivered-To: einar@heavensinferno.net | ||
3 | Received: from localhost (localhost.localdomain [127.0.0.1]) | ||
4 | by akihabara.dennogumi.org (Postfix) with ESMTP id 15AB75CD846 | ||
5 | for <einar@heavensinferno.net>; Mon, 8 Apr 2013 12:15:03 +0200 (CEST) | ||
6 | Authentication-Results: akihabara.dennogumi.org; dkim=pass | ||
7 | (1024-bit key; insecure key) header.i=@kde.org header.b=vQ0NnJ9g; | ||
8 | dkim-adsp=pass | ||
9 | X-Virus-Scanned: Debian amavisd-new at akihabara.dennogumi.org | ||
10 | X-Spam-Flag: NO | ||
11 | X-Spam-Score: -3.818 | ||
12 | X-Spam-Level: | ||
13 | X-Spam-Status: No, score=-3.818 required=5 tests=[BAYES_50=0.8, | ||
14 | RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-2.328, T_DKIM_INVALID=0.01] | ||
15 | autolearn=unavailable | ||
16 | Received: from akihabara.dennogumi.org ([127.0.0.1]) | ||
17 | by localhost (akihabara.dennogumi.org [127.0.0.1]) (amavisd-new, port 10024) | ||
18 | with ESMTP id RMAq-XNJ040f for <einar@heavensinferno.net>; | ||
19 | Mon, 8 Apr 2013 12:14:44 +0200 (CEST) | ||
20 | Received: from postbox.kde.org (postbox.kde.org [46.4.96.248]) | ||
21 | by akihabara.dennogumi.org (Postfix) with ESMTP id 321675CD845 | ||
22 | for <einar@heavensinferno.net>; Mon, 8 Apr 2013 12:14:44 +0200 (CEST) | ||
23 | Authentication-Results: akihabara.dennogumi.org; dkim=pass | ||
24 | (1024-bit key; insecure key) header.i=@kde.org header.b=vQ0NnJ9g; | ||
25 | dkim-adsp=pass | ||
26 | Received: from postbox.kde.org (localhost [IPv6:::1]) | ||
27 | by postbox.kde.org (Postfix) with ESMTP id 9F5E1B37F95; | ||
28 | Mon, 8 Apr 2013 10:13:32 +0000 (UTC) | ||
29 | DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=kde.org; s=default; | ||
30 | t=1365416012; bh=ZJtmtbDLoGFwSyJUINdTk4UpuX+xzxcjGp7LSPrKNUs=; | ||
31 | h=From:To:Subject:Date:Message-ID:MIME-Version:Reply-To:List-Id: | ||
32 | List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: | ||
33 | Content-Type:Sender; b=vQ0NnJ9gjeyPLhPbQx6o9UxmILkS9KrhaKG6luAS/GR | ||
34 | 6iR3HKXR3HE0BCkTMD5xmKL5ztFMGcU5e79fz0ch0sd2pnZ0y1WVw7KjCxsv/YtO9HM | ||
35 | OplAHmhwRI5zH8KKQbyvdPULvssI/ISdViAXmHw04hNPsBjsIGkTPgvNbPFuk= | ||
36 | X-Original-To: plasma-devel@kde.org | ||
37 | Delivered-To: plasma-devel@localhost.kde.org | ||
38 | Received: from mail.bddf.ca (unknown [64.141.113.219]) | ||
39 | by postbox.kde.org (Postfix) with ESMTP id 782C6B37BE6 | ||
40 | for <plasma-devel@kde.org>; Mon, 8 Apr 2013 09:51:17 +0000 (UTC) | ||
41 | Received: from freedom.localnet (242.13.24.31.ftth.as8758.net [31.24.13.242]) | ||
42 | (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) | ||
43 | (No client certificate requested) | ||
44 | by mail.bddf.ca (Postfix) with ESMTPSA id 0CB712DC040 | ||
45 | for <plasma-devel@kde.org>; Mon, 8 Apr 2013 03:51:16 -0600 (MDT) | ||
46 | From: "Aaron J. Seigo" <aseigo@kde.org> | ||
47 | To: plasma-devel@kde.org | ||
48 | Subject: activities_optional branch in kde-workspace | ||
49 | Date: Mon, 08 Apr 2013 11:51:11 +0200 | ||
50 | Message-ID: <4143483.eqrJjo7JEn@freedom> | ||
51 | User-Agent: KMail/4.11 pre (Linux/3.6.3-1-desktop; KDE/4.10.60; i686; | ||
52 | git-da50be0; 2013-03-12) | ||
53 | MIME-Version: 1.0 | ||
54 | X-Scanned-By: MIMEDefang 2.71 on 46.4.96.248 | ||
55 | X-BeenThere: plasma-devel@kde.org | ||
56 | X-Mailman-Version: 2.1.14 | ||
57 | Precedence: list | ||
58 | Reply-To: plasma-devel@kde.org | ||
59 | List-Id: <plasma-devel.kde.org> | ||
60 | List-Unsubscribe: <https://mail.kde.org/mailman/options/plasma-devel>, | ||
61 | <mailto:plasma-devel-request@kde.org?subject=unsubscribe> | ||
62 | List-Archive: <http://mail.kde.org/pipermail/plasma-devel> | ||
63 | List-Post: <mailto:plasma-devel@kde.org> | ||
64 | List-Help: <mailto:plasma-devel-request@kde.org?subject=help> | ||
65 | List-Subscribe: <https://mail.kde.org/mailman/listinfo/plasma-devel>, | ||
66 | <mailto:plasma-devel-request@kde.org?subject=subscribe> | ||
67 | Content-Type: multipart/mixed; boundary="===============6664737512143839854==" | ||
68 | Errors-To: plasma-devel-bounces@kde.org | ||
69 | Sender: plasma-devel-bounces@kde.org | ||
70 | |||
71 | |||
72 | --===============6664737512143839854== | ||
73 | Content-Type: multipart/signed; boundary="nextPart1996263.NlFDv9GTkA"; micalg="pgp-sha1"; protocol="application/pgp-signature" | ||
74 | |||
75 | |||
76 | --nextPart1996263.NlFDv9GTkA | ||
77 | Content-Transfer-Encoding: 7Bit | ||
78 | Content-Type: text/plain; charset="us-ascii" | ||
79 | |||
80 | hi.. | ||
81 | |||
82 | i noticed a new branch when i pulled kde-workspace today (finally!): | ||
83 | activities_optional | ||
84 | |||
85 | the lone commit in it was pushed on april 1, so maybe it's an april fools | ||
86 | joke, but if it isn't, it looks like someone is trying to do something that | ||
87 | makes no sense (and has no chance of being merged into master). so if this is | ||
88 | a "for reals" branch, perhaps the motivation behind it can be shared? | ||
89 | |||
90 | -- | ||
91 | Aaron J. Seigo | ||
92 | --nextPart1996263.NlFDv9GTkA | ||
93 | Content-Type: application/pgp-signature; name="signature.asc" | ||
94 | Content-Description: This is a digitally signed message part. | ||
95 | Content-Transfer-Encoding: 7Bit | ||
96 | |||
97 | -----BEGIN PGP SIGNATURE----- | ||
98 | Version: GnuPG v2.0.19 (GNU/Linux) | ||
99 | |||
100 | iEUEABECAAYFAlFikxAACgkQ1rcusafx20MHbwCfeXOgTDwtR81XJwAdcQB40Lt7 | ||
101 | t2IAmJpIZxdU+SSruySeEfbQs3VXq/8= | ||
102 | =BQPF | ||
103 | -----END PGP SIGNATURE----- | ||
104 | --nextPart1996263.NlFDv9GTkA | ||
105 | Content-Type: text/plain; name="broken.attachment" | ||
106 | Content-Transfer-Encoding: 7Bit | ||
107 | |||
108 | Let's break a signed message - This messageblock should not be here :D | ||
109 | |||
110 | --nextPart1996263.NlFDv9GTkA-- | ||
111 | |||
112 | |||
113 | --===============6664737512143839854== | ||
114 | Content-Type: text/plain; charset="us-ascii" | ||
115 | MIME-Version: 1.0 | ||
116 | Content-Transfer-Encoding: 7bit | ||
117 | Content-Disposition: inline | ||
118 | |||
119 | _______________________________________________ | ||
120 | Plasma-devel mailing list | ||
121 | Plasma-devel@kde.org | ||
122 | https://mail.kde.org/mailman/listinfo/plasma-devel | ||
123 | |||
124 | --===============6664737512143839854==-- | ||
125 | |||
126 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist+additional-children.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist+additional-children.mbox.html new file mode 100644 index 00000000..a95252e4 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist+additional-children.mbox.html | |||
@@ -0,0 +1,60 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <a name="att1.1"/> | ||
11 | <div id="attachmentDiv1.1"> | ||
12 | <div class="noquote"> | ||
13 | <div dir="ltr">hi..</div> | ||
14 | <br/> | ||
15 | <div dir="ltr">i noticed a new branch when i pulled kde-workspace today (finally!): </div> | ||
16 | <div dir="ltr">activities_optional</div> | ||
17 | <br/> | ||
18 | <div dir="ltr">the lone commit in it was pushed on april 1, so maybe it's an april fools </div> | ||
19 | <div dir="ltr">joke, but if it isn't, it looks like someone is trying to do something that </div> | ||
20 | <div dir="ltr">makes no sense (and has no chance of being merged into master). so if this is </div> | ||
21 | <div dir="ltr">a "for reals" branch, perhaps the motivation behind it can be shared?</div> | ||
22 | <br/> | ||
23 | <div dir="ltr">-- </div> | ||
24 | <div dir="ltr">Aaron J. Seigo</div> | ||
25 | </div> | ||
26 | </div> | ||
27 | <a name="att1.2"/> | ||
28 | <div id="attachmentDiv1.2"> | ||
29 | <hr/> | ||
30 | <div> | ||
31 | <a href="attachment:1.2?place=body"><img align="center" height="48" width="48" src="file:application-pgp-signature.svg" border="0" style="max-width: 100%" alt=""/>signature.asc</a> | ||
32 | </div> | ||
33 | <div>This is a digitally signed message part.</div> | ||
34 | </div> | ||
35 | <a name="att1.3"/> | ||
36 | <div id="attachmentDiv1.3"> | ||
37 | <hr/> | ||
38 | <div> | ||
39 | <a href="attachment:1.3?place=body"><img align="center" height="48" width="48" src="file:text-plain.svg" border="0" style="max-width: 100%" alt=""/>broken.attachment</a> | ||
40 | </div> | ||
41 | <div/> | ||
42 | </div> | ||
43 | </div> | ||
44 | <a name="att2"/> | ||
45 | <div id="attachmentDiv2"> | ||
46 | <div class="noquote"> | ||
47 | <div dir="ltr">_______________________________________________</div> | ||
48 | <div dir="ltr">Plasma-devel mailing list</div> | ||
49 | <div dir="ltr"> | ||
50 | <a href="mailto:Plasma-devel@kde.org">Plasma-devel@kde.org</a> | ||
51 | </div> | ||
52 | <div dir="ltr"> | ||
53 | <a href="https://mail.kde.org/mailman/listinfo/plasma-devel">https://mail.kde.org/mailman/listinfo/plasma-devel</a> | ||
54 | </div> | ||
55 | </div> | ||
56 | </div> | ||
57 | </div> | ||
58 | </div> | ||
59 | </body> | ||
60 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist+additional-children.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist+additional-children.mbox.tree new file mode 100644 index 00000000..906e6274 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist+additional-children.mbox.tree | |||
@@ -0,0 +1,10 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::MimeMessagePart | ||
3 | * MimeTreeParser::MimeMessagePart | ||
4 | * MimeTreeParser::TextMessagePart | ||
5 | * MimeTreeParser::MessagePart | ||
6 | * MimeTreeParser::AttachmentMessagePart | ||
7 | * MimeTreeParser::AttachmentMessagePart | ||
8 | * MimeTreeParser::MessagePart | ||
9 | * MimeTreeParser::AttachmentMessagePart | ||
10 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist+old.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist+old.mbox new file mode 100644 index 00000000..362dff3e --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist+old.mbox | |||
@@ -0,0 +1,67 @@ | |||
1 | Return-Path: <plasma-devel-bounces@kde.org> | ||
2 | Delivered-To: einar@heavensinferno.net | ||
3 | From: "Aaron J. Seigo" <aseigo@kde.org> | ||
4 | To: plasma-devel@kde.org | ||
5 | Subject: activities_optional branch in kde-workspace | ||
6 | Date: Mon, 08 Apr 2013 11:51:11 +0200 | ||
7 | Message-ID: <4143483.eqrJjo7JEn@freedom> | ||
8 | User-Agent: KMail/4.11 pre (Linux/3.6.3-1-desktop; KDE/4.10.60; i686; | ||
9 | git-da50be0; 2013-03-12) | ||
10 | X-Mailman-Version: 2.1.14 | ||
11 | Precedence: list | ||
12 | Reply-To: plasma-devel@kde.org | ||
13 | List-Id: <plasma-devel.kde.org> | ||
14 | List-Unsubscribe: <https://mail.kde.org/mailman/options/plasma-devel>, | ||
15 | <mailto:plasma-devel-request@kde.org?subject=unsubscribe> | ||
16 | List-Archive: <http://mail.kde.org/pipermail/plasma-devel> | ||
17 | List-Post: <mailto:plasma-devel@kde.org> | ||
18 | List-Help: <mailto:plasma-devel-request@kde.org?subject=help> | ||
19 | List-Subscribe: <https://mail.kde.org/mailman/listinfo/plasma-devel>, | ||
20 | <mailto:plasma-devel-request@kde.org?subject=subscribe> | ||
21 | Errors-To: plasma-devel-bounces@kde.org | ||
22 | Sender: plasma-devel-bounces@kde.org | ||
23 | |||
24 | Oh man a header :) | ||
25 | |||
26 | --__--__-- | ||
27 | |||
28 | Message: | ||
29 | MIME-Version: 1.0 | ||
30 | Content-Type: multipart/signed; boundary="nextPart1996263.NlFDv9GTkA"; micalg="pgp-sha1"; protocol="application/pgp-signature" | ||
31 | |||
32 | |||
33 | --nextPart1996263.NlFDv9GTkA | ||
34 | Content-Transfer-Encoding: 7Bit | ||
35 | Content-Type: text/plain; charset="us-ascii" | ||
36 | |||
37 | hi.. | ||
38 | |||
39 | i noticed a new branch when i pulled kde-workspace today (finally!): | ||
40 | activities_optional | ||
41 | |||
42 | the lone commit in it was pushed on april 1, so maybe it's an april fools | ||
43 | joke, but if it isn't, it looks like someone is trying to do something that | ||
44 | makes no sense (and has no chance of being merged into master). so if this is | ||
45 | a "for reals" branch, perhaps the motivation behind it can be shared? | ||
46 | |||
47 | -- | ||
48 | Aaron J. Seigo | ||
49 | --nextPart1996263.NlFDv9GTkA | ||
50 | Content-Type: application/pgp-signature; name="signature.asc" | ||
51 | Content-Description: This is a digitally signed message part. | ||
52 | Content-Transfer-Encoding: 7Bit | ||
53 | |||
54 | -----BEGIN PGP SIGNATURE----- | ||
55 | Version: GnuPG v2.0.19 (GNU/Linux) | ||
56 | |||
57 | iEUEABECAAYFAlFikxAACgkQ1rcusafx20MHbwCfeXOgTDwtR81XJwAdcQB40Lt7 | ||
58 | t2IAmJpIZxdU+SSruySeEfbQs3VXq/8= | ||
59 | =BQPF | ||
60 | -----END PGP SIGNATURE----- | ||
61 | |||
62 | --__--__-- | ||
63 | |||
64 | _______________________________________________ | ||
65 | Plasma-devel mailing list | ||
66 | Plasma-devel@kde.org | ||
67 | https://mail.kde.org/mailman/listinfo/plasma-devel \ No newline at end of file | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist+old.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist+old.mbox.html new file mode 100644 index 00000000..59c6d690 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist+old.mbox.html | |||
@@ -0,0 +1,94 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <div style="position: relative; word-wrap: break-word"> | ||
9 | <a name="att"/> | ||
10 | <div id="attachmentDiv"> | ||
11 | <div class="noquote"> | ||
12 | <div dir="ltr">Oh man a header :)</div> | ||
13 | <br/> | ||
14 | </div> | ||
15 | </div> | ||
16 | </div> | ||
17 | <div style="position: relative; word-wrap: break-word"> | ||
18 | <a name="att"/> | ||
19 | <div id="attachmentDiv"> | ||
20 | <table cellspacing="1" cellpadding="1" class="rfc822"> | ||
21 | <tr class="rfc822H"> | ||
22 | <td dir="ltr"> | ||
23 | <a href="attachment:e1:1?place=body">Encapsulated message</a> | ||
24 | </td> | ||
25 | </tr> | ||
26 | <tr class="rfc822B"> | ||
27 | <td> | ||
28 | <a name="att1"/> | ||
29 | <div id="attachmentDiv1"> | ||
30 | <table cellspacing="1" cellpadding="1" class="signWarn"> | ||
31 | <tr class="signWarnH"> | ||
32 | <td dir="ltr"> | ||
33 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
34 | <tr> | ||
35 | <td>Not enough information to check signature validity.</td> | ||
36 | <td align="right"> | ||
37 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
38 | </td> | ||
39 | </tr> | ||
40 | </table> | ||
41 | </td> | ||
42 | </tr> | ||
43 | <tr class="signWarnB"> | ||
44 | <td> | ||
45 | <a name="att1.1"/> | ||
46 | <div id="attachmentDiv1.1"> | ||
47 | <div class="noquote"> | ||
48 | <div dir="ltr">hi..</div> | ||
49 | <br/> | ||
50 | <div dir="ltr">i noticed a new branch when i pulled kde-workspace today (finally!): </div> | ||
51 | <div dir="ltr">activities_optional</div> | ||
52 | <br/> | ||
53 | <div dir="ltr">the lone commit in it was pushed on april 1, so maybe it's an april fools </div> | ||
54 | <div dir="ltr">joke, but if it isn't, it looks like someone is trying to do something that </div> | ||
55 | <div dir="ltr">makes no sense (and has no chance of being merged into master). so if this is </div> | ||
56 | <div dir="ltr">a "for reals" branch, perhaps the motivation behind it can be shared?</div> | ||
57 | <br/> | ||
58 | <div dir="ltr">-- </div> | ||
59 | <div dir="ltr">Aaron J. Seigo</div> | ||
60 | </div> | ||
61 | </div> | ||
62 | </td> | ||
63 | </tr> | ||
64 | <tr class="signWarnH"> | ||
65 | <td dir="ltr">End of signed message</td> | ||
66 | </tr> | ||
67 | </table> | ||
68 | </div> | ||
69 | </td> | ||
70 | </tr> | ||
71 | <tr class="rfc822H"> | ||
72 | <td dir="ltr">End of encapsulated message</td> | ||
73 | </tr> | ||
74 | </table> | ||
75 | </div> | ||
76 | </div> | ||
77 | <div style="position: relative; word-wrap: break-word"> | ||
78 | <a name="att"/> | ||
79 | <div id="attachmentDiv"> | ||
80 | <div class="noquote"> | ||
81 | <div dir="ltr">Plasma-devel mailing list</div> | ||
82 | <div dir="ltr"> | ||
83 | <a href="mailto:Plasma-devel@kde.org">Plasma-devel@kde.org</a> | ||
84 | </div> | ||
85 | <div dir="ltr"> | ||
86 | <a href="https://mail.kde.org/mailman/listinfo/plasma-devel">https://mail.kde.org/mailman/listinfo/plasma-devel</a> | ||
87 | </div> | ||
88 | </div> | ||
89 | </div> | ||
90 | </div> | ||
91 | </div> | ||
92 | </div> | ||
93 | </body> | ||
94 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist+old.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist+old.mbox.tree new file mode 100644 index 00000000..c8310bc1 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist+old.mbox.tree | |||
@@ -0,0 +1,13 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::MessagePartList | ||
3 | * MimeTreeParser::MimeMessagePart | ||
4 | * MimeTreeParser::TextMessagePart | ||
5 | * MimeTreeParser::MessagePart | ||
6 | * MimeTreeParser::MimeMessagePart | ||
7 | * MimeTreeParser::EncapsulatedRfc822MessagePart | ||
8 | * MimeTreeParser::SignedMessagePart | ||
9 | * MimeTreeParser::TextMessagePart | ||
10 | * MimeTreeParser::MessagePart | ||
11 | * MimeTreeParser::MimeMessagePart | ||
12 | * MimeTreeParser::TextMessagePart | ||
13 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist.mbox new file mode 100644 index 00000000..8adb9f4c --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist.mbox | |||
@@ -0,0 +1,121 @@ | |||
1 | Return-Path: <plasma-devel-bounces@kde.org> | ||
2 | Delivered-To: einar@heavensinferno.net | ||
3 | Received: from localhost (localhost.localdomain [127.0.0.1]) | ||
4 | by akihabara.dennogumi.org (Postfix) with ESMTP id 15AB75CD846 | ||
5 | for <einar@heavensinferno.net>; Mon, 8 Apr 2013 12:15:03 +0200 (CEST) | ||
6 | Authentication-Results: akihabara.dennogumi.org; dkim=pass | ||
7 | (1024-bit key; insecure key) header.i=@kde.org header.b=vQ0NnJ9g; | ||
8 | dkim-adsp=pass | ||
9 | X-Virus-Scanned: Debian amavisd-new at akihabara.dennogumi.org | ||
10 | X-Spam-Flag: NO | ||
11 | X-Spam-Score: -3.818 | ||
12 | X-Spam-Level: | ||
13 | X-Spam-Status: No, score=-3.818 required=5 tests=[BAYES_50=0.8, | ||
14 | RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-2.328, T_DKIM_INVALID=0.01] | ||
15 | autolearn=unavailable | ||
16 | Received: from akihabara.dennogumi.org ([127.0.0.1]) | ||
17 | by localhost (akihabara.dennogumi.org [127.0.0.1]) (amavisd-new, port 10024) | ||
18 | with ESMTP id RMAq-XNJ040f for <einar@heavensinferno.net>; | ||
19 | Mon, 8 Apr 2013 12:14:44 +0200 (CEST) | ||
20 | Received: from postbox.kde.org (postbox.kde.org [46.4.96.248]) | ||
21 | by akihabara.dennogumi.org (Postfix) with ESMTP id 321675CD845 | ||
22 | for <einar@heavensinferno.net>; Mon, 8 Apr 2013 12:14:44 +0200 (CEST) | ||
23 | Authentication-Results: akihabara.dennogumi.org; dkim=pass | ||
24 | (1024-bit key; insecure key) header.i=@kde.org header.b=vQ0NnJ9g; | ||
25 | dkim-adsp=pass | ||
26 | Received: from postbox.kde.org (localhost [IPv6:::1]) | ||
27 | by postbox.kde.org (Postfix) with ESMTP id 9F5E1B37F95; | ||
28 | Mon, 8 Apr 2013 10:13:32 +0000 (UTC) | ||
29 | DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=kde.org; s=default; | ||
30 | t=1365416012; bh=ZJtmtbDLoGFwSyJUINdTk4UpuX+xzxcjGp7LSPrKNUs=; | ||
31 | h=From:To:Subject:Date:Message-ID:MIME-Version:Reply-To:List-Id: | ||
32 | List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: | ||
33 | Content-Type:Sender; b=vQ0NnJ9gjeyPLhPbQx6o9UxmILkS9KrhaKG6luAS/GR | ||
34 | 6iR3HKXR3HE0BCkTMD5xmKL5ztFMGcU5e79fz0ch0sd2pnZ0y1WVw7KjCxsv/YtO9HM | ||
35 | OplAHmhwRI5zH8KKQbyvdPULvssI/ISdViAXmHw04hNPsBjsIGkTPgvNbPFuk= | ||
36 | X-Original-To: plasma-devel@kde.org | ||
37 | Delivered-To: plasma-devel@localhost.kde.org | ||
38 | Received: from mail.bddf.ca (unknown [64.141.113.219]) | ||
39 | by postbox.kde.org (Postfix) with ESMTP id 782C6B37BE6 | ||
40 | for <plasma-devel@kde.org>; Mon, 8 Apr 2013 09:51:17 +0000 (UTC) | ||
41 | Received: from freedom.localnet (242.13.24.31.ftth.as8758.net [31.24.13.242]) | ||
42 | (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) | ||
43 | (No client certificate requested) | ||
44 | by mail.bddf.ca (Postfix) with ESMTPSA id 0CB712DC040 | ||
45 | for <plasma-devel@kde.org>; Mon, 8 Apr 2013 03:51:16 -0600 (MDT) | ||
46 | From: "Aaron J. Seigo" <aseigo@kde.org> | ||
47 | To: plasma-devel@kde.org | ||
48 | Subject: activities_optional branch in kde-workspace | ||
49 | Date: Mon, 08 Apr 2013 11:51:11 +0200 | ||
50 | Message-ID: <4143483.eqrJjo7JEn@freedom> | ||
51 | User-Agent: KMail/4.11 pre (Linux/3.6.3-1-desktop; KDE/4.10.60; i686; | ||
52 | git-da50be0; 2013-03-12) | ||
53 | MIME-Version: 1.0 | ||
54 | X-Scanned-By: MIMEDefang 2.71 on 46.4.96.248 | ||
55 | X-BeenThere: plasma-devel@kde.org | ||
56 | X-Mailman-Version: 2.1.14 | ||
57 | Precedence: list | ||
58 | Reply-To: plasma-devel@kde.org | ||
59 | List-Id: <plasma-devel.kde.org> | ||
60 | List-Unsubscribe: <https://mail.kde.org/mailman/options/plasma-devel>, | ||
61 | <mailto:plasma-devel-request@kde.org?subject=unsubscribe> | ||
62 | List-Archive: <http://mail.kde.org/pipermail/plasma-devel> | ||
63 | List-Post: <mailto:plasma-devel@kde.org> | ||
64 | List-Help: <mailto:plasma-devel-request@kde.org?subject=help> | ||
65 | List-Subscribe: <https://mail.kde.org/mailman/listinfo/plasma-devel>, | ||
66 | <mailto:plasma-devel-request@kde.org?subject=subscribe> | ||
67 | Content-Type: multipart/mixed; boundary="===============6664737512143839854==" | ||
68 | Errors-To: plasma-devel-bounces@kde.org | ||
69 | Sender: plasma-devel-bounces@kde.org | ||
70 | |||
71 | |||
72 | --===============6664737512143839854== | ||
73 | Content-Type: multipart/signed; boundary="nextPart1996263.NlFDv9GTkA"; micalg="pgp-sha1"; protocol="application/pgp-signature" | ||
74 | |||
75 | |||
76 | --nextPart1996263.NlFDv9GTkA | ||
77 | Content-Transfer-Encoding: 7Bit | ||
78 | Content-Type: text/plain; charset="us-ascii" | ||
79 | |||
80 | hi.. | ||
81 | |||
82 | i noticed a new branch when i pulled kde-workspace today (finally!): | ||
83 | activities_optional | ||
84 | |||
85 | the lone commit in it was pushed on april 1, so maybe it's an april fools | ||
86 | joke, but if it isn't, it looks like someone is trying to do something that | ||
87 | makes no sense (and has no chance of being merged into master). so if this is | ||
88 | a "for reals" branch, perhaps the motivation behind it can be shared? | ||
89 | |||
90 | -- | ||
91 | Aaron J. Seigo | ||
92 | --nextPart1996263.NlFDv9GTkA | ||
93 | Content-Type: application/pgp-signature; name="signature.asc" | ||
94 | Content-Description: This is a digitally signed message part. | ||
95 | Content-Transfer-Encoding: 7Bit | ||
96 | |||
97 | -----BEGIN PGP SIGNATURE----- | ||
98 | Version: GnuPG v2.0.19 (GNU/Linux) | ||
99 | |||
100 | iEUEABECAAYFAlFikxAACgkQ1rcusafx20MHbwCfeXOgTDwtR81XJwAdcQB40Lt7 | ||
101 | t2IAmJpIZxdU+SSruySeEfbQs3VXq/8= | ||
102 | =BQPF | ||
103 | -----END PGP SIGNATURE----- | ||
104 | |||
105 | --nextPart1996263.NlFDv9GTkA-- | ||
106 | |||
107 | |||
108 | --===============6664737512143839854== | ||
109 | Content-Type: text/plain; charset="us-ascii" | ||
110 | MIME-Version: 1.0 | ||
111 | Content-Transfer-Encoding: 7bit | ||
112 | Content-Disposition: inline | ||
113 | |||
114 | _______________________________________________ | ||
115 | Plasma-devel mailing list | ||
116 | Plasma-devel@kde.org | ||
117 | https://mail.kde.org/mailman/listinfo/plasma-devel | ||
118 | |||
119 | --===============6664737512143839854==-- | ||
120 | |||
121 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist.mbox.html new file mode 100644 index 00000000..7acb6fbf --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist.mbox.html | |||
@@ -0,0 +1,65 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <table cellspacing="1" cellpadding="1" class="signWarn"> | ||
11 | <tr class="signWarnH"> | ||
12 | <td dir="ltr"> | ||
13 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
14 | <tr> | ||
15 | <td>Not enough information to check signature validity.</td> | ||
16 | <td align="right"> | ||
17 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
18 | </td> | ||
19 | </tr> | ||
20 | </table> | ||
21 | </td> | ||
22 | </tr> | ||
23 | <tr class="signWarnB"> | ||
24 | <td> | ||
25 | <a name="att1.1"/> | ||
26 | <div id="attachmentDiv1.1"> | ||
27 | <div class="noquote"> | ||
28 | <div dir="ltr">hi..</div> | ||
29 | <br/> | ||
30 | <div dir="ltr">i noticed a new branch when i pulled kde-workspace today (finally!): </div> | ||
31 | <div dir="ltr">activities_optional</div> | ||
32 | <br/> | ||
33 | <div dir="ltr">the lone commit in it was pushed on april 1, so maybe it's an april fools </div> | ||
34 | <div dir="ltr">joke, but if it isn't, it looks like someone is trying to do something that </div> | ||
35 | <div dir="ltr">makes no sense (and has no chance of being merged into master). so if this is </div> | ||
36 | <div dir="ltr">a "for reals" branch, perhaps the motivation behind it can be shared?</div> | ||
37 | <br/> | ||
38 | <div dir="ltr">-- </div> | ||
39 | <div dir="ltr">Aaron J. Seigo</div> | ||
40 | </div> | ||
41 | </div> | ||
42 | </td> | ||
43 | </tr> | ||
44 | <tr class="signWarnH"> | ||
45 | <td dir="ltr">End of signed message</td> | ||
46 | </tr> | ||
47 | </table> | ||
48 | </div> | ||
49 | <a name="att2"/> | ||
50 | <div id="attachmentDiv2"> | ||
51 | <div class="noquote"> | ||
52 | <div dir="ltr">_______________________________________________</div> | ||
53 | <div dir="ltr">Plasma-devel mailing list</div> | ||
54 | <div dir="ltr"> | ||
55 | <a href="mailto:Plasma-devel@kde.org">Plasma-devel@kde.org</a> | ||
56 | </div> | ||
57 | <div dir="ltr"> | ||
58 | <a href="https://mail.kde.org/mailman/listinfo/plasma-devel">https://mail.kde.org/mailman/listinfo/plasma-devel</a> | ||
59 | </div> | ||
60 | </div> | ||
61 | </div> | ||
62 | </div> | ||
63 | </div> | ||
64 | </body> | ||
65 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist.mbox.inProgress.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist.mbox.inProgress.html new file mode 100644 index 00000000..77c6b29b --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist.mbox.inProgress.html | |||
@@ -0,0 +1,56 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <table cellspacing="1" cellpadding="1" class="signInProgress"> | ||
11 | <tr class="signInProgressH"> | ||
12 | <td dir="ltr">Please wait while the signature is being verified...</td> | ||
13 | </tr> | ||
14 | <tr class="signInProgressB"> | ||
15 | <td> | ||
16 | <a name="att1.1"/> | ||
17 | <div id="attachmentDiv1.1"> | ||
18 | <div class="noquote"> | ||
19 | <div dir="ltr">hi..</div> | ||
20 | <br/> | ||
21 | <div dir="ltr">i noticed a new branch when i pulled kde-workspace today (finally!): </div> | ||
22 | <div dir="ltr">activities_optional</div> | ||
23 | <br/> | ||
24 | <div dir="ltr">the lone commit in it was pushed on april 1, so maybe it's an april fools </div> | ||
25 | <div dir="ltr">joke, but if it isn't, it looks like someone is trying to do something that </div> | ||
26 | <div dir="ltr">makes no sense (and has no chance of being merged into master). so if this is </div> | ||
27 | <div dir="ltr">a "for reals" branch, perhaps the motivation behind it can be shared?</div> | ||
28 | <br/> | ||
29 | <div dir="ltr">-- </div> | ||
30 | <div dir="ltr">Aaron J. Seigo</div> | ||
31 | </div> | ||
32 | </div> | ||
33 | </td> | ||
34 | </tr> | ||
35 | <tr class="signInProgressH"> | ||
36 | <td dir="ltr">End of signed message</td> | ||
37 | </tr> | ||
38 | </table> | ||
39 | </div> | ||
40 | <a name="att2"/> | ||
41 | <div id="attachmentDiv2"> | ||
42 | <div class="noquote"> | ||
43 | <div dir="ltr">_______________________________________________</div> | ||
44 | <div dir="ltr">Plasma-devel mailing list</div> | ||
45 | <div dir="ltr"> | ||
46 | <a href="mailto:Plasma-devel@kde.org">Plasma-devel@kde.org</a> | ||
47 | </div> | ||
48 | <div dir="ltr"> | ||
49 | <a href="https://mail.kde.org/mailman/listinfo/plasma-devel">https://mail.kde.org/mailman/listinfo/plasma-devel</a> | ||
50 | </div> | ||
51 | </div> | ||
52 | </div> | ||
53 | </div> | ||
54 | </div> | ||
55 | </body> | ||
56 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist.mbox.tree new file mode 100644 index 00000000..2753978c --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-mailinglist.mbox.tree | |||
@@ -0,0 +1,7 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::MimeMessagePart | ||
3 | * MimeTreeParser::SignedMessagePart | ||
4 | * MimeTreeParser::TextMessagePart | ||
5 | * MimeTreeParser::MessagePart | ||
6 | * MimeTreeParser::AttachmentMessagePart | ||
7 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-no-protocol.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-no-protocol.mbox new file mode 100644 index 00000000..e50879b9 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-no-protocol.mbox | |||
@@ -0,0 +1,35 @@ | |||
1 | Return-Path: <plasma-devel-bounces@kde.org> | ||
2 | Delivered-To: einar@heavensinferno.net | ||
3 | Content-Type: multipart/signed; boundary="nextPart1996263.NlFDv9GTkA"; micalg="pgp-sha1"; protocol="application/broken-signature" | ||
4 | |||
5 | |||
6 | --nextPart1996263.NlFDv9GTkA | ||
7 | Content-Transfer-Encoding: 7Bit | ||
8 | Content-Type: text/plain; charset="us-ascii" | ||
9 | |||
10 | hi.. | ||
11 | |||
12 | i noticed a new branch when i pulled kde-workspace today (finally!): | ||
13 | activities_optional | ||
14 | |||
15 | the lone commit in it was pushed on april 1, so maybe it's an april fools | ||
16 | joke, but if it isn't, it looks like someone is trying to do something that | ||
17 | makes no sense (and has no chance of being merged into master). so if this is | ||
18 | a "for reals" branch, perhaps the motivation behind it can be shared? | ||
19 | |||
20 | -- | ||
21 | Aaron J. Seigo | ||
22 | --nextPart1996263.NlFDv9GTkA | ||
23 | Content-Type: application/broken-signature; name="signature.asc" | ||
24 | Content-Description: This is a digitally signed message part. | ||
25 | Content-Transfer-Encoding: 7Bit | ||
26 | |||
27 | -----BEGIN PGP SIGNATURE----- | ||
28 | Version: GnuPG v2.0.19 (GNU/Linux) | ||
29 | |||
30 | iEUEABECAAYFAlFikxAACgkQ1rcusafx20MHbwCfeXOgTDwtR81XJwAdcQB40Lt7 | ||
31 | t2IAmJpIZxdU+SSruySeEfbQs3VXq/8= | ||
32 | =BQPF | ||
33 | -----END PGP SIGNATURE----- | ||
34 | |||
35 | --nextPart1996263.NlFDv9GTkA-- | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-no-protocol.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-no-protocol.mbox.html new file mode 100644 index 00000000..4a5f337b --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-no-protocol.mbox.html | |||
@@ -0,0 +1,36 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <div class="noquote"> | ||
11 | <div dir="ltr">hi..</div> | ||
12 | <br/> | ||
13 | <div dir="ltr">i noticed a new branch when i pulled kde-workspace today (finally!): </div> | ||
14 | <div dir="ltr">activities_optional</div> | ||
15 | <br/> | ||
16 | <div dir="ltr">the lone commit in it was pushed on april 1, so maybe it's an april fools </div> | ||
17 | <div dir="ltr">joke, but if it isn't, it looks like someone is trying to do something that </div> | ||
18 | <div dir="ltr">makes no sense (and has no chance of being merged into master). so if this is </div> | ||
19 | <div dir="ltr">a "for reals" branch, perhaps the motivation behind it can be shared?</div> | ||
20 | <br/> | ||
21 | <div dir="ltr">-- </div> | ||
22 | <div dir="ltr">Aaron J. Seigo</div> | ||
23 | </div> | ||
24 | </div> | ||
25 | <a name="att2"/> | ||
26 | <div id="attachmentDiv2"> | ||
27 | <hr/> | ||
28 | <div> | ||
29 | <a href="attachment:2?place=body"><img align="center" height="48" width="48" src="file:unknown.svg" border="0" style="max-width: 100%" alt=""/>signature.asc</a> | ||
30 | </div> | ||
31 | <div>This is a digitally signed message part.</div> | ||
32 | </div> | ||
33 | </div> | ||
34 | </div> | ||
35 | </body> | ||
36 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-no-protocol.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-no-protocol.mbox.tree new file mode 100644 index 00000000..d824a11b --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-no-protocol.mbox.tree | |||
@@ -0,0 +1,5 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::MimeMessagePart | ||
3 | * MimeTreeParser::TextMessagePart | ||
4 | * MimeTreeParser::MessagePart | ||
5 | * MimeTreeParser::AttachmentMessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-two-attachments.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-two-attachments.mbox new file mode 100644 index 00000000..462f62a3 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-two-attachments.mbox | |||
@@ -0,0 +1,54 @@ | |||
1 | From: firstname.lastname@example.com | ||
2 | To: test@kolab.org | ||
3 | Subject: OpenPGP signed with 2 text attachments | ||
4 | Date: Sun, 30 Aug 2015 12:02:56 +0200 | ||
5 | Message-ID: <2033829.IGepAdxqt9@vkpc5> | ||
6 | X-KMail-Identity: 402312391 | ||
7 | X-KMail-Dictionary: en_US | ||
8 | User-Agent: KMail/5.0.42 pre (Linux/3.16.6-2-desktop; KDE/5.14.0; x86_64; ; ) | ||
9 | MIME-Version: 1.0 | ||
10 | Content-Type: multipart/signed; boundary="nextPart3682207.KLrp2sxpbf"; micalg="pgp-sha1"; protocol="application/pgp-signature" | ||
11 | |||
12 | --nextPart3682207.KLrp2sxpbf | ||
13 | Content-Type: multipart/mixed; boundary="nextPart2397422.QDHKUNdbyg" | ||
14 | Content-Transfer-Encoding: 7Bit | ||
15 | |||
16 | This is a multi-part message in MIME format. | ||
17 | |||
18 | --nextPart2397422.QDHKUNdbyg | ||
19 | Content-Transfer-Encoding: 7Bit | ||
20 | Content-Type: text/plain; charset="us-ascii" | ||
21 | |||
22 | this is the main body text | ||
23 | --nextPart2397422.QDHKUNdbyg | ||
24 | Content-Disposition: inline; filename="attachment1.txt" | ||
25 | Content-Transfer-Encoding: 7Bit | ||
26 | Content-Type: text/plain; charset="utf-8"; name="attachment1.txt" | ||
27 | |||
28 | this is attachment one | ||
29 | --nextPart2397422.QDHKUNdbyg | ||
30 | Content-Disposition: inline; filename="attachment2.txt" | ||
31 | Content-Transfer-Encoding: 7Bit | ||
32 | Content-Type: text/plain; charset="utf-8"; name="attachment2.txt" | ||
33 | |||
34 | this is attachment two | ||
35 | --nextPart2397422.QDHKUNdbyg-- | ||
36 | |||
37 | --nextPart3682207.KLrp2sxpbf | ||
38 | Content-Type: application/pgp-signature; name="signature.asc" | ||
39 | Content-Description: This is a digitally signed message part. | ||
40 | Content-Transfer-Encoding: 7Bit | ||
41 | |||
42 | -----BEGIN PGP SIGNATURE----- | ||
43 | Version: GnuPG v2 | ||
44 | |||
45 | iQEVAwUAVeLU0I2YYMWPJG3mAQL/fgf+LXmO7bKafdd4g5OOVHHyXRprVmX/6hBq | ||
46 | mZoor29KLIHkvAH9OJi4qBy/ZKwqqKLfttLzHb2UaAfl5kn4f0ckmnwUhU7u32Sm | ||
47 | JZ0Q50SxrRVFRyvTvPG22ho9IwQUO1YSZrL4wO9v8ZBQ3vkfpmAiUQVxPQMINc8L | ||
48 | i68xQEm4y1Dtoc+DTUkoIMeOOPnEl6PTMPrwn906K0r30hI4788fEGRn6uOXb+vD | ||
49 | G/ISlXu+JHIxxf/J5/jVjKNbra+trrfSPzB3piJIjBLEPO5FvLx8SgQFJcJHt/kw | ||
50 | ps8D5YULj/MVMLlsPtXDdZmbOi/G9pN0tr05MKcXsO5Ywe7n2BhASw== | ||
51 | =2Nzb | ||
52 | -----END PGP SIGNATURE----- | ||
53 | |||
54 | --nextPart3682207.KLrp2sxpbf-- | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-two-attachments.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-two-attachments.mbox.html new file mode 100644 index 00000000..06718641 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-two-attachments.mbox.html | |||
@@ -0,0 +1,71 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
9 | <tr class="signOkKeyOkH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
14 | <td align="right"> | ||
15 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | </table> | ||
19 | </td> | ||
20 | </tr> | ||
21 | <tr class="signOkKeyOkB"> | ||
22 | <td> | ||
23 | <a name="att1"/> | ||
24 | <div id="attachmentDiv1"> | ||
25 | <a name="att1.1"/> | ||
26 | <div id="attachmentDiv1.1"> | ||
27 | <div class="noquote"> | ||
28 | <div dir="ltr">this is the main body text</div> | ||
29 | </div> | ||
30 | </div> | ||
31 | <a name="att1.2"/> | ||
32 | <div id="attachmentDiv1.2"> | ||
33 | <table cellspacing="1" class="textAtm"> | ||
34 | <tr class="textAtmH"> | ||
35 | <td dir="ltr">attachment1.txt</td> | ||
36 | </tr> | ||
37 | <tr class="textAtmB"> | ||
38 | <td> | ||
39 | <div class="noquote"> | ||
40 | <div dir="ltr">this is attachment one</div> | ||
41 | </div> | ||
42 | </td> | ||
43 | </tr> | ||
44 | </table> | ||
45 | </div> | ||
46 | <a name="att1.3"/> | ||
47 | <div id="attachmentDiv1.3"> | ||
48 | <table cellspacing="1" class="textAtm"> | ||
49 | <tr class="textAtmH"> | ||
50 | <td dir="ltr">attachment2.txt</td> | ||
51 | </tr> | ||
52 | <tr class="textAtmB"> | ||
53 | <td> | ||
54 | <div class="noquote"> | ||
55 | <div dir="ltr">this is attachment two</div> | ||
56 | </div> | ||
57 | </td> | ||
58 | </tr> | ||
59 | </table> | ||
60 | </div> | ||
61 | </div> | ||
62 | </td> | ||
63 | </tr> | ||
64 | <tr class="signOkKeyOkH"> | ||
65 | <td dir="ltr">End of signed message</td> | ||
66 | </tr> | ||
67 | </table> | ||
68 | </div> | ||
69 | </div> | ||
70 | </body> | ||
71 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-two-attachments.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-two-attachments.mbox.tree new file mode 100644 index 00000000..7133f4be --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/openpgp-signed-two-attachments.mbox.tree | |||
@@ -0,0 +1,9 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::SignedMessagePart | ||
3 | * MimeTreeParser::MimeMessagePart | ||
4 | * MimeTreeParser::TextMessagePart | ||
5 | * MimeTreeParser::MessagePart | ||
6 | * MimeTreeParser::AttachmentMessagePart | ||
7 | * MimeTreeParser::MessagePart | ||
8 | * MimeTreeParser::AttachmentMessagePart | ||
9 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/signed-forward-openpgp-signed-encrypted.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/signed-forward-openpgp-signed-encrypted.mbox new file mode 100644 index 00000000..9b715161 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/signed-forward-openpgp-signed-encrypted.mbox | |||
@@ -0,0 +1,92 @@ | |||
1 | From test@kolab.org Wed, 08 Sep 2010 17:53:29 +0200 | ||
2 | From: OpenPGP Test <test@kolab.org> | ||
3 | Subject: Signed Fwd: OpenPGP signed and encrypted | ||
4 | Date: Wed, 08 Sep 2010 17:53:29 +0200 | ||
5 | User-Agent: KMail/4.6 pre (Linux/2.6.34-rc2-2-default; KDE/4.5.60; x86_64; ; ) | ||
6 | MIME-Version: 1.0 | ||
7 | Content-Type: multipart/signed; boundary="nextPart4350242.cT7m6ulPOV"; micalg="pgp-sha1"; protocol="application/pgp-signature" | ||
8 | Content-Transfer-Encoding: 7Bit | ||
9 | |||
10 | |||
11 | --nextPart4350242.cT7m6ulPOV | ||
12 | Content-Type: multipart/mixed; boundary="nextPart1512490.WQBKYaOrt8" | ||
13 | Content-Transfer-Encoding: 7Bit | ||
14 | |||
15 | |||
16 | --nextPart1512490.WQBKYaOrt8 | ||
17 | Content-Transfer-Encoding: 7Bit | ||
18 | Content-Type: text/plain; charset="us-ascii" | ||
19 | |||
20 | bla bla bla | ||
21 | --nextPart1512490.WQBKYaOrt8 | ||
22 | Content-Type: message/rfc822 | ||
23 | Content-Disposition: inline; filename="forwarded message" | ||
24 | Content-Description: OpenPGP Test <test@kolab.org>: OpenPGP signed and encrypted | ||
25 | |||
26 | From: OpenPGP Test <test@kolab.org> | ||
27 | To: test@kolab.org | ||
28 | Subject: OpenPGP signed and encrypted | ||
29 | Date: Tue, 07 Sep 2010 18:08:44 +0200 | ||
30 | User-Agent: KMail/4.6 pre (Linux/2.6.34-rc2-2-default; KDE/4.5.60; x86_64; ; ) | ||
31 | MIME-Version: 1.0 | ||
32 | Content-Type: multipart/encrypted; boundary="nextPart25203163.0xtB501Z4V"; protocol="application/pgp-encrypted" | ||
33 | Content-Transfer-Encoding: 7Bit | ||
34 | |||
35 | |||
36 | --nextPart25203163.0xtB501Z4V | ||
37 | Content-Type: application/pgp-encrypted | ||
38 | Content-Disposition: attachment | ||
39 | |||
40 | Version: 1 | ||
41 | --nextPart25203163.0xtB501Z4V | ||
42 | Content-Type: application/octet-stream | ||
43 | Content-Disposition: inline; filename="msg.asc" | ||
44 | |||
45 | -----BEGIN PGP MESSAGE----- | ||
46 | Version: GnuPG v2.0.15 (GNU/Linux) | ||
47 | |||
48 | hQEMAwzOQ1qnzNo7AQf7BFYWaGiCTGtXY59bSh3LCXNnWZejblYALxIUNXOFEXbm | ||
49 | y/YA95FmQsy3U5HRCAJV/DY1PEaJz1RTm9bcdIpDC3Ab2YzSwmOwV5fcoUOB2df4 | ||
50 | KjX19Q+2F3JxpPQ0N1gHf4dKfIu19LH+CKeFzUN13aJs5J4A5wlj+NjJikxzmxDS | ||
51 | kDtNYndynPmo9DJQcsUFw3gpvx5HaHvx1cT4mAB2M5cd2l+vN1jYbaWb0x5Zq41z | ||
52 | mRNI89aPieC3rcM2289m68fGloNbYvi8mZJu5RrI4Tbi/D7Rjm1y63lHgVV6AN88 | ||
53 | XAzRiedOeF99LoTBulrJdtT8AAgCs8nCetcWpIffdtLpAZiZkzHmYOU7nqGxqpRk | ||
54 | OVeUTrCn9DW2SMmHjaP4IiKnMvzEycu5F4a72+V1LeMIhMSjTRTq+ZE2PTaqH59z | ||
55 | QsMn7Nb6GlOICbTptRKNNtyJKO7xXlpT7YtvNKnCyEOkH2XrYH7GvpYCiuQ0/o+7 | ||
56 | SxV436ZejiYIg6DQDXJCoa2DXimGp0C10Jh0HwX0BixpoNtwEjkGRYcX6P/JzkH0 | ||
57 | oBood4Ly+Tiu6iVDisrK3AVGYpIzCrKkE9qULTw4R/jFKR2tcCqGb7Fxtk2LV7Md | ||
58 | 3S+DyOKrvKQ5GNwbp9OE97pwk+Lr1JS3UAvj5f6BR+1PVNcC0i0wWkgwDjPh1eGD | ||
59 | enMQmorE6+N0uHtH2F4fOxo/TbbA3+zhI25kVW3bO03xyUl/cmQZeb52nvfOvtOo | ||
60 | gSb2j6bPkzljDMPEzrtJjbFtGHJbPfUQYJgZv9OE2EQIqpg6goIw279alBq6GLIX | ||
61 | pkO+dRmztzjcDyhcLxMuQ4cTizel/0J/bU7U6lvwHSyZVbT4Ev+opG5K70Hbqbwr | ||
62 | NZcgdWXbSeesxGM/oQaMeSurOevxVl+/zrTVAek61aRRd1baAYqgi2pf2V7y4oK3 | ||
63 | qkdxzmoFpRdNlfrQW65NZWnHOi9rC9XxANIwnVn3kRcDf+t2K4PrFluI157lXM/o | ||
64 | wX91j88fazysbJlQ6TjsApO9ETiPOFEBqouxCTtCZzlUgyVG8jpIjdHWFnagHeXH | ||
65 | +lXNdYjxnTWTjTxMOZC9ySMpXkjWdFI1ecxVwu6Ik6RX51rvBJAAXWP75yUjPKJ4 | ||
66 | rRi5oQl/VLl0QznO7lvgMPtUwgDVNWO/r7Kn9B387h9fAJZ/kWFAEDW2yhAzABqO | ||
67 | rCNKDzBPgfAwCnikCpMoCbOL7SU8BdbzQHD8/Lkv4m0pzliHQ/KkGF710koBzTmF | ||
68 | N7+wk9pwIuvcrEBQj567 | ||
69 | =GV0c | ||
70 | -----END PGP MESSAGE----- | ||
71 | |||
72 | --nextPart25203163.0xtB501Z4V-- | ||
73 | |||
74 | --nextPart1512490.WQBKYaOrt8-- | ||
75 | |||
76 | --nextPart4350242.cT7m6ulPOV | ||
77 | Content-Type: application/pgp-signature; name="signature.asc" | ||
78 | Content-Description: This is a digitally signed message part. | ||
79 | |||
80 | -----BEGIN PGP SIGNATURE----- | ||
81 | Version: GnuPG v2.0.15 (GNU/Linux) | ||
82 | |||
83 | iQEcBAABAgAGBQJMh7F5AAoJEI2YYMWPJG3mOB0IALeHfwg8u7wK0tDKtKqxQSqC | ||
84 | 2Bbk4pTLuLw/VniQNauDG+kc1eUc5RJk/R31aB1ysiQCV5Q8ucI8c9vCDDMbd+s4 | ||
85 | t2bZUEzMpXrw/aFiHgYGXFAY+tpqZqDGNVRNHWsPYJKtx8cci9E5DLnBJcVXVqib | ||
86 | 3iiHlr9AQOok3PUmpPk1a61q2L0kk8wqRenC0yZXNw5qFn5WW/hFeCOfYB+t+s5N | ||
87 | IuE6ihFCJIlvGborrvl6VgPJTCyUQ3XgI90vS6ABN8TFlCNr3grXOWUePc2a20or | ||
88 | xFgh38cnSR64WJajU5K1nUL9/RgfIcs+PvyHuJaRf/iUFkj1jiMEuaSi9jVFco0= | ||
89 | =bArV | ||
90 | -----END PGP SIGNATURE----- | ||
91 | |||
92 | --nextPart4350242.cT7m6ulPOV-- | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/signed-forward-openpgp-signed-encrypted.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/signed-forward-openpgp-signed-encrypted.mbox.html new file mode 100644 index 00000000..b91772b7 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/signed-forward-openpgp-signed-encrypted.mbox.html | |||
@@ -0,0 +1,105 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
9 | <tr class="signOkKeyOkH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
14 | <td align="right"> | ||
15 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | </table> | ||
19 | </td> | ||
20 | </tr> | ||
21 | <tr class="signOkKeyOkB"> | ||
22 | <td> | ||
23 | <a name="att1"/> | ||
24 | <div id="attachmentDiv1"> | ||
25 | <a name="att1.1"/> | ||
26 | <div id="attachmentDiv1.1"> | ||
27 | <div class="noquote"> | ||
28 | <div dir="ltr">bla bla bla</div> | ||
29 | </div> | ||
30 | </div> | ||
31 | <a name="att1.2"/> | ||
32 | <div id="attachmentDiv1.2"> | ||
33 | <table cellspacing="1" cellpadding="1" class="rfc822"> | ||
34 | <tr class="rfc822H"> | ||
35 | <td dir="ltr"> | ||
36 | <a href="attachment:1.2.1?place=body">Encapsulated message</a> | ||
37 | </td> | ||
38 | </tr> | ||
39 | <tr class="rfc822B"> | ||
40 | <td> | ||
41 | <a name="att1.2.1"/> | ||
42 | <div id="attachmentDiv1.2.1"> | ||
43 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
44 | <tr class="encrH"> | ||
45 | <td dir="ltr">Encrypted message</td> | ||
46 | </tr> | ||
47 | <tr class="encrB"> | ||
48 | <td> | ||
49 | <div style="position: relative; word-wrap: break-word"> | ||
50 | <a name="att"/> | ||
51 | <div id="attachmentDiv"> | ||
52 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
53 | <tr class="signOkKeyOkH"> | ||
54 | <td dir="ltr"> | ||
55 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
56 | <tr> | ||
57 | <td>Signed by <a href="mailto:test@kolab.org">test@kolab.org</a>.</td> | ||
58 | <td align="right"> | ||
59 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
60 | </td> | ||
61 | </tr> | ||
62 | </table> | ||
63 | </td> | ||
64 | </tr> | ||
65 | <tr class="signOkKeyOkB"> | ||
66 | <td> | ||
67 | <a name="att1"/> | ||
68 | <div id="attachmentDiv1"> | ||
69 | <div class="noquote"> | ||
70 | <div dir="ltr">encrypted message text</div> | ||
71 | </div> | ||
72 | </div> | ||
73 | </td> | ||
74 | </tr> | ||
75 | <tr class="signOkKeyOkH"> | ||
76 | <td dir="ltr">End of signed message</td> | ||
77 | </tr> | ||
78 | </table> | ||
79 | </div> | ||
80 | </div> | ||
81 | </td> | ||
82 | </tr> | ||
83 | <tr class="encrH"> | ||
84 | <td dir="ltr">End of encrypted message</td> | ||
85 | </tr> | ||
86 | </table> | ||
87 | </div> | ||
88 | </td> | ||
89 | </tr> | ||
90 | <tr class="rfc822H"> | ||
91 | <td dir="ltr">End of encapsulated message</td> | ||
92 | </tr> | ||
93 | </table> | ||
94 | </div> | ||
95 | </div> | ||
96 | </td> | ||
97 | </tr> | ||
98 | <tr class="signOkKeyOkH"> | ||
99 | <td dir="ltr">End of signed message</td> | ||
100 | </tr> | ||
101 | </table> | ||
102 | </div> | ||
103 | </div> | ||
104 | </body> | ||
105 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/signed-forward-openpgp-signed-encrypted.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/signed-forward-openpgp-signed-encrypted.mbox.tree new file mode 100644 index 00000000..818f894c --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/signed-forward-openpgp-signed-encrypted.mbox.tree | |||
@@ -0,0 +1,10 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::SignedMessagePart | ||
3 | * MimeTreeParser::MimeMessagePart | ||
4 | * MimeTreeParser::TextMessagePart | ||
5 | * MimeTreeParser::MessagePart | ||
6 | * MimeTreeParser::EncapsulatedRfc822MessagePart | ||
7 | * MimeTreeParser::EncryptedMessagePart | ||
8 | * MimeTreeParser::SignedMessagePart | ||
9 | * MimeTreeParser::TextMessagePart | ||
10 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-cert.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-cert.mbox new file mode 100644 index 00000000..b3c8a19e --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-cert.mbox | |||
@@ -0,0 +1,24 @@ | |||
1 | From test@example.com Sat, 13 Apr 2013 01:54:30 +0200 | ||
2 | From: test <test@example.com> | ||
3 | To: you@you.com | ||
4 | Subject: test | ||
5 | Date: Sat, 13 Apr 2013 01:54:30 +0200 | ||
6 | Message-ID: <1576646.QQxzHWx8dA@tabin> | ||
7 | X-KMail-Identity: 505942601 | ||
8 | User-Agent: KMail/4.10.2 (Linux/3.9.0-rc4-experimental-amd64; KDE/4.10.60; x86_64; git-fc9b82c; 2013-04-11) | ||
9 | MIME-Version: 1.0 | ||
10 | Content-Type: application/pkcs7-mime; name="smime.crt"; smime-type="certs-only" | ||
11 | Content-Transfer-Encoding: base64 | ||
12 | Content-Disposition: attachment; filename="smime.crt" | ||
13 | |||
14 | asdfasdfasdfasdfasdfasdfasdfasdf | ||
15 | asdfasdfadsfsadfasdf | ||
16 | asdfasdf | ||
17 | sadfas | ||
18 | dfasdf | ||
19 | sadf | ||
20 | sadf | ||
21 | adsf | ||
22 | adsf | ||
23 | asdf | ||
24 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-cert.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-cert.mbox.html new file mode 100644 index 00000000..1b86390f --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-cert.mbox.html | |||
@@ -0,0 +1,10 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv">Sorry, certificate could not be imported.<br/>Reason: BER error</div> | ||
8 | </div> | ||
9 | </body> | ||
10 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-cert.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-cert.mbox.tree new file mode 100644 index 00000000..c34c2eca --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-cert.mbox.tree | |||
@@ -0,0 +1,2 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::CertMessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted-octet-stream.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted-octet-stream.mbox new file mode 100644 index 00000000..887fe358 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted-octet-stream.mbox | |||
@@ -0,0 +1,23 @@ | |||
1 | From test@example.com Sat, 13 Apr 2013 01:54:30 +0200 | ||
2 | From: test <test@example.com> | ||
3 | To: you@you.com | ||
4 | Subject: test | ||
5 | Date: Sat, 13 Apr 2013 01:54:30 +0200 | ||
6 | Message-ID: <1576646.QQxzHWx8dA@tabin> | ||
7 | X-KMail-Identity: 505942601 | ||
8 | User-Agent: KMail/4.10.2 (Linux/3.9.0-rc4-experimental-amd64; KDE/4.10.60; x86_64; git-fc9b82c; 2013-04-11) | ||
9 | MIME-Version: 1.0 | ||
10 | Content-Type: application/octet-stream; | ||
11 | name="smime.p7m" | ||
12 | Content-Transfer-Encoding: base64 | ||
13 | Content-Disposition: attachment; filename="smime.p7m" | ||
14 | |||
15 | MIAGCSqGSIb3DQEHA6CAMIACAQAxgfwwgfkCAQAwYjBVMQswCQYDVQQGEwJVUzENMAsGA1UECgwE | ||
16 | S0RBQjEWMBQGA1UEAwwNdW5pdHRlc3QgY2VydDEfMB0GCSqGSIb3DQEJARYQdGVzdEBleGFtcGxl | ||
17 | LmNvbQIJANNFIDoYY4XJMA0GCSqGSIb3DQEBAQUABIGAJwmmaOeidXUHSQGOf2OBIsPYafVqdORe | ||
18 | y54pEXbXiAfSVUWgI4a9CsiWwcDX8vlaX9ZLLr+L2VmOfr6Yc5214yxzausZVvnUFjy6LUXotuEX | ||
19 | tSar4EW7XI9DjaZc1l985naMsTx9JUa5GyQ9J6PGqhosAKpKMGgKkFAHaOwE1/IwgAYJKoZIhvcN | ||
20 | AQcBMBQGCCqGSIb3DQMHBAieDfmz3WGbN6CABHgEpsLrNn0PAZTDUfNomDypvSCl5bQH+9cKm80m | ||
21 | upMV2r8RBiXS7OaP4SpCxq18afDTTPatvboHIoEX92taTbq8soiAgEs6raSGtEYZNvFL0IYqm7MA | ||
22 | o5HCOmjiEcInyPf14lL3HnPk10FaP3hh58qTHUh4LPYtL7UECOZELYnUfUVhAAAAAAAAAAAAAA== | ||
23 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted-octet-stream.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted-octet-stream.mbox.html new file mode 100644 index 00000000..6b08c47e --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted-octet-stream.mbox.html | |||
@@ -0,0 +1,31 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <div class="noquote"> | ||
18 | <div dir="ltr">The quick brown fox jumped over the lazy dog.</div> | ||
19 | </div> | ||
20 | </div> | ||
21 | </div> | ||
22 | </td> | ||
23 | </tr> | ||
24 | <tr class="encrH"> | ||
25 | <td dir="ltr">End of encrypted message</td> | ||
26 | </tr> | ||
27 | </table> | ||
28 | </div> | ||
29 | </div> | ||
30 | </body> | ||
31 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted-octet-stream.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted-octet-stream.mbox.tree new file mode 100644 index 00000000..82f705c2 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted-octet-stream.mbox.tree | |||
@@ -0,0 +1,4 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::EncryptedMessagePart | ||
3 | * MimeTreeParser::TextMessagePart | ||
4 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted.mbox new file mode 100644 index 00000000..6b6d6a0d --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted.mbox | |||
@@ -0,0 +1,22 @@ | |||
1 | From test@example.com Sat, 13 Apr 2013 01:54:30 +0200 | ||
2 | From: test <test@example.com> | ||
3 | To: you@you.com | ||
4 | Subject: test | ||
5 | Date: Sat, 13 Apr 2013 01:54:30 +0200 | ||
6 | Message-ID: <1576646.QQxzHWx8dA@tabin> | ||
7 | X-KMail-Identity: 505942601 | ||
8 | User-Agent: KMail/4.10.2 (Linux/3.9.0-rc4-experimental-amd64; KDE/4.10.60; x86_64; git-fc9b82c; 2013-04-11) | ||
9 | MIME-Version: 1.0 | ||
10 | Content-Type: application/pkcs7-mime; name="smime.p7m"; smime-type="enveloped-data" | ||
11 | Content-Transfer-Encoding: base64 | ||
12 | Content-Disposition: attachment; filename="smime.p7m" | ||
13 | |||
14 | MIAGCSqGSIb3DQEHA6CAMIACAQAxgfwwgfkCAQAwYjBVMQswCQYDVQQGEwJVUzENMAsGA1UECgwE | ||
15 | S0RBQjEWMBQGA1UEAwwNdW5pdHRlc3QgY2VydDEfMB0GCSqGSIb3DQEJARYQdGVzdEBleGFtcGxl | ||
16 | LmNvbQIJANNFIDoYY4XJMA0GCSqGSIb3DQEBAQUABIGAJwmmaOeidXUHSQGOf2OBIsPYafVqdORe | ||
17 | y54pEXbXiAfSVUWgI4a9CsiWwcDX8vlaX9ZLLr+L2VmOfr6Yc5214yxzausZVvnUFjy6LUXotuEX | ||
18 | tSar4EW7XI9DjaZc1l985naMsTx9JUa5GyQ9J6PGqhosAKpKMGgKkFAHaOwE1/IwgAYJKoZIhvcN | ||
19 | AQcBMBQGCCqGSIb3DQMHBAieDfmz3WGbN6CABHgEpsLrNn0PAZTDUfNomDypvSCl5bQH+9cKm80m | ||
20 | upMV2r8RBiXS7OaP4SpCxq18afDTTPatvboHIoEX92taTbq8soiAgEs6raSGtEYZNvFL0IYqm7MA | ||
21 | o5HCOmjiEcInyPf14lL3HnPk10FaP3hh58qTHUh4LPYtL7UECOZELYnUfUVhAAAAAAAAAAAAAA== | ||
22 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted.mbox.html new file mode 100644 index 00000000..6b08c47e --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted.mbox.html | |||
@@ -0,0 +1,31 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <div class="noquote"> | ||
18 | <div dir="ltr">The quick brown fox jumped over the lazy dog.</div> | ||
19 | </div> | ||
20 | </div> | ||
21 | </div> | ||
22 | </td> | ||
23 | </tr> | ||
24 | <tr class="encrH"> | ||
25 | <td dir="ltr">End of encrypted message</td> | ||
26 | </tr> | ||
27 | </table> | ||
28 | </div> | ||
29 | </div> | ||
30 | </body> | ||
31 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted.mbox.inProgress.html b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted.mbox.inProgress.html new file mode 100644 index 00000000..e5eb55d0 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted.mbox.inProgress.html | |||
@@ -0,0 +1,24 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Please wait while the message is being decrypted...</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="font-size:x-large; text-align:center; padding:20pt;"/> | ||
15 | </td> | ||
16 | </tr> | ||
17 | <tr class="encrH"> | ||
18 | <td dir="ltr">End of encrypted message</td> | ||
19 | </tr> | ||
20 | </table> | ||
21 | </div> | ||
22 | </div> | ||
23 | </body> | ||
24 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted.mbox.tree new file mode 100644 index 00000000..82f705c2 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-encrypted.mbox.tree | |||
@@ -0,0 +1,4 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::EncryptedMessagePart | ||
3 | * MimeTreeParser::TextMessagePart | ||
4 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-enc+sign.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-enc+sign.mbox new file mode 100644 index 00000000..be75c1e2 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-enc+sign.mbox | |||
@@ -0,0 +1,37 @@ | |||
1 | From test@example.com Fri Sep 11 10:18:48 2015 | ||
2 | From: test <test@example.com> | ||
3 | To: you@you.com | ||
4 | Subject: enc+sign | ||
5 | Date: Fri, 11 Sep 2015 12:18:48 +0200 | ||
6 | Message-ID: <49743203.WFa6qKaG4S@tabin.local> | ||
7 | X-KMail-Identity: 792434561 | ||
8 | User-Agent: KMail/4.13.0.1 (Linux/4.1.5-towo.1-siduction-amd64; KDE/4.14.2; x86_64; ; ) | ||
9 | MIME-Version: 1.0 | ||
10 | Content-Type: application/pkcs7-mime; name="smime.p7m"; smime-type="enveloped-data" | ||
11 | Content-Transfer-Encoding: base64 | ||
12 | Content-Disposition: attachment; filename="smime.p7m" | ||
13 | |||
14 | MIAGCSqGSIb3DQEHA6CAMIACAQAxgfwwgfkCAQAwYjBVMQswCQYDVQQGEwJVUzENMAsGA1UECgwE | ||
15 | S0RBQjEWMBQGA1UEAwwNdW5pdHRlc3QgY2VydDEfMB0GCSqGSIb3DQEJARYQdGVzdEBleGFtcGxl | ||
16 | LmNvbQIJANNFIDoYY4XJMA0GCSqGSIb3DQEBAQUABIGAkttyRl8OyZkRGfs3CMfzYchrG4rRMfbE | ||
17 | WIkAFIXf64yAzPZfo6cCn0Il/6q4793FeKUrsJUvzP21KBLp4u1t5qLL5iPAmAzBdLg0teoEzLZe | ||
18 | CEZHinM+WSMdz2wEV8lgAt8x/3yhXmDMB09FEapUaBCK5NhbLAFkpI2mFg66zxcwgAYJKoZIhvcN | ||
19 | AQcBMB0GCWCGSAFlAwQBAgQQ6DSjjkXJNm5cXQNek9eozqCABIIDsI7lufqw58g/uVM2gymkldmb | ||
20 | BOgdimxshJkYznbbG5sfQPNM9ROhXKRUOc8hfzgmZ9dOZvtAyzepROMHrcL1mFFx7c1vgyT85fai | ||
21 | PLEqRs8FRoztXJ0I3q57r+sPW4BtYJp9WCBSerdLSrBFK1zvKpVQtSCYbbDCc3462KnSsBrE4XTf | ||
22 | BiiLWkpok4fNIdqYG1aWPLgRbp7wwLiXcq5RxYCail1tlyAty6dWBrYE1+ABZoqnKUqNqbghxJUd | ||
23 | X9t3EziUnzw7c0Hq03sJEShzbXI9BxOTs8ZZ+1Ktx3rdh6RhZZ7XfJ7XIuN0yYhusBeOgC8AuILN | ||
24 | lYojgmXMin52VPFmz9siI8jnKaqsr1uUqVfMLNc+mLhZEjuOu99eAHwdJUS95BKWm9J8DBe/lpz3 | ||
25 | s09Oz2oOoiQx0WxKmQZ4GXW/UI9OwykfNLqWfmDrbMbGW4Mvq615ucHZixFdp2vf3kU72wfk8hFK | ||
26 | EIU/1Ov85glDj96ELdXErXn02BNvVBQIsRx3DbBGEgj9tz+WHbCR6RjEK4eV5lhInZplFGmYr4Uu | ||
27 | 9ALS+MRGTYZnALNPrWu6b1aWprnlJCyKZeeyqUzpQVPoWOh7CfdvBxvQoil4Z9Neb9O0AGCZ0axc | ||
28 | zZ4yYcS/LpHkLgYPC5BphNtpyciQh6ZFeexi8rsZuHRu+YUKnuM+DQyUxtUvDYhiX7CT49MMXIwt | ||
29 | bdyA0IAbIXXb/Us9GGX11gAfz2EFI3QBDHtsyciEgCIlA32OiiJF0T5CnQsku2yu6c3TWC4k+feL | ||
30 | jjTEhm/KPUL6SkksarFeEncJlVt7impW9FlHyBpISwlQF4RAxDYTRX475VTNu7wn3PQx376m8iBN | ||
31 | K20MjdfIM162jcQh9IWnqTZ0nH/gT2kQPYe7GqjFi6XmU3bwdzW9SXR0G9A8juIXaaNR7aXcsB53 | ||
32 | /W4WHPcdJBwRELa0dT1/bPg8z3EV2vM7Flc/Q5ugTWHxk8GHNEPpotArpLq1sEAZu78mSCqzzEDA | ||
33 | TwzEpj9LZYIv4rDYYLCAxUR9YGhiJ5Qm21YnklkE++4zfpsl/KJcwtNsp7SWdzeVuPoUYBNhsgp/ | ||
34 | PZgudzQoOhxcF4ChHMVSNk1f1tlvXZppeXwv9OwpSszz0zZUr46ievpkQwL0Sa1XAfKwAt7bFJwp | ||
35 | i95ae7p58ZdizJVsz0QUhFDxIDL76qiPEYXC7nIf4ZPQ36dzLAfZ6OwWGffluxHpE6oqUoM3l320 | ||
36 | 7yQT66xfRKLGl5Cr1Q8UBBABC6aR2dt6RVbsxbR3mB0PAAAAAAAAAAAAAA== | ||
37 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-enc+sign.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-enc+sign.mbox.html new file mode 100644 index 00000000..7f60c04f --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-enc+sign.mbox.html | |||
@@ -0,0 +1,57 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
18 | <tr class="signOkKeyOkH"> | ||
19 | <td dir="ltr"> | ||
20 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
21 | <tr> | ||
22 | <td>Signed by <a href="mailto:test@example.com">test@example.com</a>.</td> | ||
23 | <td align="right"> | ||
24 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
25 | </td> | ||
26 | </tr> | ||
27 | </table> | ||
28 | </td> | ||
29 | </tr> | ||
30 | <tr class="signOkKeyOkB"> | ||
31 | <td> | ||
32 | <div style="position: relative; word-wrap: break-word"> | ||
33 | <a name="att"/> | ||
34 | <div id="attachmentDiv"> | ||
35 | <div class="noquote"> | ||
36 | <div dir="ltr">Encrypted and signed mail.</div> | ||
37 | </div> | ||
38 | </div> | ||
39 | </div> | ||
40 | </td> | ||
41 | </tr> | ||
42 | <tr class="signOkKeyOkH"> | ||
43 | <td dir="ltr">End of signed message</td> | ||
44 | </tr> | ||
45 | </table> | ||
46 | </div> | ||
47 | </div> | ||
48 | </td> | ||
49 | </tr> | ||
50 | <tr class="encrH"> | ||
51 | <td dir="ltr">End of encrypted message</td> | ||
52 | </tr> | ||
53 | </table> | ||
54 | </div> | ||
55 | </div> | ||
56 | </body> | ||
57 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-enc+sign.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-enc+sign.mbox.tree new file mode 100644 index 00000000..7d5bbeb7 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-enc+sign.mbox.tree | |||
@@ -0,0 +1,5 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::EncryptedMessagePart | ||
3 | * MimeTreeParser::SignedMessagePart | ||
4 | * MimeTreeParser::TextMessagePart | ||
5 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-sign.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-sign.mbox new file mode 100644 index 00000000..6e1739ac --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-sign.mbox | |||
@@ -0,0 +1,25 @@ | |||
1 | From test@example.com Fri Sep 11 10:16:06 2015 | ||
2 | From: test <test@example.com> | ||
3 | To: you@you.com | ||
4 | Subject: sign only | ||
5 | Date: Fri, 11 Sep 2015 12:16:06 +0200 | ||
6 | Message-ID: <3182420.pXWeMPZlAJ@tabin.local> | ||
7 | X-KMail-Identity: 792434561 | ||
8 | User-Agent: KMail/4.13.0.1 (Linux/4.1.5-towo.1-siduction-amd64; KDE/4.14.2; x86_64; ; ) | ||
9 | MIME-Version: 1.0 | ||
10 | Content-Type: application/pkcs7-mime; name="smime.p7m"; smime-type="signed-data" | ||
11 | Content-Transfer-Encoding: base64 | ||
12 | Content-Disposition: attachment; filename="smime.p7m" | ||
13 | |||
14 | MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAaCAJIAEZUNvbnRl | ||
15 | bnQtVHJhbnNmZXItRW5jb2Rpbmc6IDdCaXQKQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFy | ||
16 | c2V0PSJ1dGYtOCIKCkEgc2ltcGxlIHNpZ25lZCBvbmx5IHRlc3QuAAAAAAAAMYIBkjCCAY4CAQEw | ||
17 | YjBVMQswCQYDVQQGEwJVUzENMAsGA1UECgwES0RBQjEWMBQGA1UEAwwNdW5pdHRlc3QgY2VydDEf | ||
18 | MB0GCSqGSIb3DQEJARYQdGVzdEBleGFtcGxlLmNvbQIJANNFIDoYY4XJMAkGBSsOAwIaBQCggYcw | ||
19 | GAYJKoZIhvcNAQkDMQsGCSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcNMTMwMTEwMTU0ODEyWjAj | ||
20 | BgkqhkiG9w0BCQQxFgQUvJ5zI7oyv5fNx1H1wabIa6atsdcwKAYJKoZIhvcNAQkPMRswGTALBglg | ||
21 | hkgBZQMEAQIwCgYIKoZIhvcNAwcwDQYJKoZIhvcNAQEBBQAEgYAHFCw88FPy1n2lu5ql5sD2J4Yi | ||
22 | 2/N9gUQvNQF5F/kd48HncdihLPZRs7eEX7IzDZNeylTmyp2WIiGEwQrIHbxtqU32NRouc09Zv4bu | ||
23 | iUwUoz1SM2s7qipikwayQMD3d5zWNhszNLBsw8z48uXAzjZAejBCfPP0/w3z7DZDJC2R2QAAAAAA | ||
24 | AA== | ||
25 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-sign.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-sign.mbox.html new file mode 100644 index 00000000..6088bc72 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-sign.mbox.html | |||
@@ -0,0 +1,40 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
9 | <tr class="signOkKeyOkH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td>Signed by <a href="mailto:test@example.com">test@example.com</a>.</td> | ||
14 | <td align="right"> | ||
15 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | </table> | ||
19 | </td> | ||
20 | </tr> | ||
21 | <tr class="signOkKeyOkB"> | ||
22 | <td> | ||
23 | <div style="position: relative; word-wrap: break-word"> | ||
24 | <a name="att"/> | ||
25 | <div id="attachmentDiv"> | ||
26 | <div class="noquote"> | ||
27 | <div dir="ltr">A simple signed only test.</div> | ||
28 | </div> | ||
29 | </div> | ||
30 | </div> | ||
31 | </td> | ||
32 | </tr> | ||
33 | <tr class="signOkKeyOkH"> | ||
34 | <td dir="ltr">End of signed message</td> | ||
35 | </tr> | ||
36 | </table> | ||
37 | </div> | ||
38 | </div> | ||
39 | </body> | ||
40 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-sign.mbox.inProgress.html b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-sign.mbox.inProgress.html new file mode 100644 index 00000000..45a999d3 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-sign.mbox.inProgress.html | |||
@@ -0,0 +1,22 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signInProgress"> | ||
9 | <tr class="signInProgressH"> | ||
10 | <td dir="ltr">Please wait while the signature is being verified...</td> | ||
11 | </tr> | ||
12 | <tr class="signInProgressB"> | ||
13 | <td/> | ||
14 | </tr> | ||
15 | <tr class="signInProgressH"> | ||
16 | <td dir="ltr">End of signed message</td> | ||
17 | </tr> | ||
18 | </table> | ||
19 | </div> | ||
20 | </div> | ||
21 | </body> | ||
22 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-sign.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-sign.mbox.tree new file mode 100644 index 00000000..a469bb76 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-sign.mbox.tree | |||
@@ -0,0 +1,4 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::SignedMessagePart | ||
3 | * MimeTreeParser::TextMessagePart | ||
4 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-signed-encrypted-attachment.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-signed-encrypted-attachment.mbox new file mode 100644 index 00000000..2b1a0761 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-opaque-signed-encrypted-attachment.mbox | |||
@@ -0,0 +1,50 @@ | |||
1 | From test@example.com Thu Jun 09 12:52:44 2016 | ||
2 | From: test@example.com | ||
3 | To: test@example.com | ||
4 | Subject: Opaque S/MIME signed and encrypted message with attachment | ||
5 | Date: Thu, 09 Jun 2016 14:52:44 +0200 | ||
6 | MIME-Version: 1.0 | ||
7 | Content-Type: application/pkcs7-mime; name="smime.p7m"; smime-type="enveloped-data" | ||
8 | Content-Transfer-Encoding: base64 | ||
9 | Content-Disposition: attachment; filename="smime.p7m" | ||
10 | |||
11 | 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 | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-apple.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-apple.mbox new file mode 100644 index 00000000..d5cd06f1 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-apple.mbox | |||
@@ -0,0 +1,197 @@ | |||
1 | From: Quack <quack@example.org> | ||
2 | Content-Type: multipart/signed; boundary="Apple-Mail=_607FF8D2-30E0-4FC3-86D9-1234567890AB"; protocol="application/pkcs7-signature"; micalg=sha1 | ||
3 | Message-Id: <468684BD-9CBD-48CF-B1BD-2824000F9541@example.org> | ||
4 | Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) | ||
5 | Subject: Re: PDF bug - modified mail, signature is not valid! | ||
6 | Date: Fri, 20 Jan 2017 11:51:41 +0100 | ||
7 | To: Konqui <Konqui@kdab.com> | ||
8 | |||
9 | |||
10 | --Apple-Mail=_607FF8D2-30E0-4FC3-86D9-1234567890AB | ||
11 | Content-Type: multipart/alternative; | ||
12 | boundary="Apple-Mail=_C5F90221-8F52-4623-99DF-1234567890AB" | ||
13 | |||
14 | |||
15 | --Apple-Mail=_C5F90221-8F52-4623-99DF-1234567890AB | ||
16 | Content-Transfer-Encoding: quoted-printable | ||
17 | Content-Type: text/plain; | ||
18 | charset=utf-8 | ||
19 | |||
20 | Ol=C3=A1 Konqui, | ||
21 | |||
22 | Here is the pdf you asked for! | ||
23 | Cheers, | ||
24 | |||
25 | Quaak | ||
26 | |||
27 | =E2=80=A6 | ||
28 | Quack | UX/UI Designer | ||
29 | Klar=C3=A4lvdalens Datakonsult AB, a KDAB Group company | ||
30 | Sweden (HQ) +46-563-540090, Germany +49-30-521325470 | ||
31 | KDAB - The Qt, C++ and OpenGL Experts | www.kdab.com | ||
32 | |||
33 | |||
34 | --Apple-Mail=_C5F90221-8F52-4623-99DF-1234567890AB | ||
35 | Content-Type: multipart/mixed; | ||
36 | boundary="Apple-Mail=_1C4D1EDB-36C5-40D7-9AB6-1234567890AB" | ||
37 | |||
38 | |||
39 | --Apple-Mail=_1C4D1EDB-36C5-40D7-9AB6-1234567890AB | ||
40 | Content-Transfer-Encoding: quoted-printable | ||
41 | Content-Type: text/html; | ||
42 | charset=utf-8 | ||
43 | |||
44 | <html><head><meta http-equiv=3D"Content-Type" content=3D"text/html = | ||
45 | charset=3Dutf-8"></head><body style=3D"word-wrap: break-word; = | ||
46 | -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" = | ||
47 | class=3D"">Ol=C3=A1 Konqui,</div><div = | ||
48 | class=3D"">Here is the pdf you asked for!</div><div = | ||
49 | class=3D"">Cheers,</div><div = | ||
50 | class=3D"">Quaack</div></body></html>= | ||
51 | |||
52 | --Apple-Mail=_1C4D1EDB-36C5-40D7-9AB6-1234567890AB | ||
53 | Content-Disposition: attachment; filename="image.png" | ||
54 | Content-Transfer-Encoding: base64 | ||
55 | Content-Type: image/png; name="image.png" | ||
56 | |||
57 | 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 | ||
100 | o/0d59+Lh3Y1HHcAAAAASUVORK5CYII= | ||
101 | --Apple-Mail=_1C4D1EDB-36C5-40D7-9AB6-1234567890AB | ||
102 | Content-Transfer-Encoding: quoted-printable | ||
103 | Content-Type: text/html; | ||
104 | charset=utf-8 | ||
105 | |||
106 | <html><head><meta http-equiv=3D"Content-Type" content=3D"text/html = | ||
107 | charset=3Dutf-8"></head><body>= | ||
108 | <blockquote type=3D"cite" class=3D""><div = | ||
109 | class=3D"">On 20 Jan 2017, at 10:35, Konqui <<a = | ||
110 | href=3D"mailto:Konqui@kdab.com">Konqui</a>= | ||
111 | </div> | ||
112 | </blockquote>= | ||
113 | </body></html>= | ||
114 | |||
115 | --Apple-Mail=_1C4D1EDB-36C5-40D7-9AB6-1234567890AB-- | ||
116 | |||
117 | --Apple-Mail=_C5F90221-8F52-4623-99DF-1234567890AB-- | ||
118 | |||
119 | --Apple-Mail=_607FF8D2-30E0-4FC3-86D9-1234567890AB | ||
120 | Content-Disposition: attachment; | ||
121 | filename=smime.p7s | ||
122 | Content-Type: application/pkcs7-signature; | ||
123 | name=smime.p7s | ||
124 | Content-Transfer-Encoding: base64 | ||
125 | |||
126 | MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIILdTCCBRow | ||
127 | ggQCoAMCAQICEG0Z6qcZT2ozIuYiMnqqcd4wDQYJKoZIhvcNAQEFBQAwga4xCzAJBgNVBAYTAlVT | ||
128 | MQswCQYDVQQIEwJVVDEXMBUGA1UEBxMOU2FsdCBMYWtlIENpdHkxHjAcBgNVBAoTFVRoZSBVU0VS | ||
129 | VFJVU1QgTmV0d29yazEhMB8GA1UECxMYaHR0cDovL3d3dy51c2VydHJ1c3QuY29tMTYwNAYDVQQD | ||
130 | Ey1VVE4tVVNFUkZpcnN0LUNsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgRW1haWwwHhcNMTEwNDI4 | ||
131 | MDAwMDAwWhcNMjAwNTMwMTA0ODM4WjCBkzELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIg | ||
132 | TWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQx | ||
133 | OTA3BgNVBAMTMENPTU9ETyBDbGllbnQgQXV0aGVudGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBD | ||
134 | QTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJKEhFtLV5jUXi+LpOFAyKNTWF9mZfEy | ||
135 | TvefMn1V0HhMVbdClOD5J3EHxcZppLkyxPFAGpDMJ1Zifxe1cWmu5SAb5MtjXmDKokH2auGj/7jf | ||
136 | H0htZUOMKi4rYzh337EXrMLaggLW1DJq1GdvIBOPXDX65VSAr9hxCh03CgJQU2yVHakQFLSZlVkS | ||
137 | Mf8JotJM3FLb3uJAAVtIaN3FSrTg7SQfOq9xXwfjrL8UO7AlcWg99A/WF1hGFYE8aIuLgw9teiFX | ||
138 | 5jSw2zJ+40rhpVJyZCaRTqWSD//gsWD9Gm9oUZljjRqLpcxCm5t9ImPTqaD8zp6Q30QZ9FxbNboW | ||
139 | 86eb/8ECAwEAAaOCAUswggFHMB8GA1UdIwQYMBaAFImCZ33EnSZwAEu0UEh83j2uBG59MB0GA1Ud | ||
140 | DgQWBBR6E04AdFvGeGNkJ8Ev4qBbvHnFezAOBgNVHQ8BAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB | ||
141 | /wIBADARBgNVHSAECjAIMAYGBFUdIAAwWAYDVR0fBFEwTzBNoEugSYZHaHR0cDovL2NybC51c2Vy | ||
142 | dHJ1c3QuY29tL1VUTi1VU0VSRmlyc3QtQ2xpZW50QXV0aGVudGljYXRpb25hbmRFbWFpbC5jcmww | ||
143 | dAYIKwYBBQUHAQEEaDBmMD0GCCsGAQUFBzAChjFodHRwOi8vY3J0LnVzZXJ0cnVzdC5jb20vVVRO | ||
144 | QWRkVHJ1c3RDbGllbnRfQ0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3Qu | ||
145 | Y29tMA0GCSqGSIb3DQEBBQUAA4IBAQCF1r54V1VtM39EUv5C1QaoAQOAivsNsv1Kv/avQUn1G1rF | ||
146 | 0q0bc24+6SZ85kyYwTAo38v7QjyhJT4KddbQPTmGZtGhm7VNm2+vKGwdr+XqdFqo2rHA8XV6L566 | ||
147 | k3nK/uKRHlZ0sviN0+BDchvtj/1gOSBH+4uvOmVIPJg9pSW/ve9g4EnlFsjrP0OD8ODuDcHTzTNf | ||
148 | m9C9YGqzO/761Mk6PB/tm/+bSTO+Qik5g+4zaS6CnUVNqGnagBsePdIaXXxHmaWbCG0SmYbWXVcH | ||
149 | G6cwvktJRLiQfsrReTjrtDP6oDpdJlieYVUYtCHVmdXgQ0BCML7qpeeU0rD+83X5f27nMIIGUzCC | ||
150 | BTugAwIBAgIQMFPel8s+Gckd6L+iGIwbpTANBgkqhkiG9w0BAQUFADCBkzELMAkGA1UEBhMCR0Ix | ||
151 | GzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMR | ||
152 | Q09NT0RPIENBIExpbWl0ZWQxOTA3BgNVBAMTMENPTU9ETyBDbGllbnQgQXV0aGVudGljYXRpb24g | ||
153 | YW5kIFNlY3VyZSBFbWFpbCBDQTAeFw0xNDA2MDIwMDAwMDBaFw0xNzA2MDEyMzU5NTlaMIIBXzEL | ||
154 | MAkGA1UEBhMCU0UxDzANBgNVBBETBjY4MyAzMTESMBAGA1UECBMJVmFlcm1sYW5kMRAwDgYDVQQH | ||
155 | EwdIYWdmb3JzMRgwFgYDVQQJEw9Ob3JyaW5ncyB2YWVnIDIxDzANBgNVBBITBkJveCAzMDEmMCQG | ||
156 | A1UECgwdS2xhcsOkbHZkYWxlbnMgRGF0YWtvbnN1bHQgQUIxHTAbBgNVBAsTFEEgS0RBQiBHcm91 | ||
157 | cCBDb21wYW55MUMwQQYDVQQLDDpJc3N1ZWQgdGhyb3VnaCBLbGFyw6RsdmRhbGVucyBEYXRha29u | ||
158 | c3VsdCBBQiBFLVBLSSBNYW5hZ2VyMR8wHQYDVQQLExZDb3Jwb3JhdGUgU2VjdXJlIEVtYWlsMRgw | ||
159 | FgYDVQQDEw9EaWFuYSBHb25jYWx2ZXMxJzAlBgkqhkiG9w0BCQEWGGRpYW5hLmdvbmNhbHZlc0Br | ||
160 | ZGFiLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALrHSvWD6MR2tvF9A+wayTDg | ||
161 | PvK3DahuvHWHzGQsd1p8bEh6qqupqgph2xO73P+ibM6EmNbCtZ+eQtW7l7iIyiC4IGsyEb5RSAtV | ||
162 | zGAyebsO7SPHokbGIV5SVobaRQiJ+1gOvWUbqHSQ0T9ZPvMX2nNGIKZpqAfocRreZr36AZWRo4AF | ||
163 | 0uf6wz5aLEtq912u2rTWVsM1F966lexaepo0cZB9fdnnD8/pQX3zroj+vBTFNAkZXxxVwGMO24Pz | ||
164 | 92d/B6K8o1SP1ArqV4sxVYIxyQTmfW4X3iV/6bcbLfEcpcUNt6MUsjFulqr6a+j51alpyT3vNuJ9 | ||
165 | V1UI9jz3t/daQr0CAwEAAaOCAdIwggHOMB8GA1UdIwQYMBaAFHoTTgB0W8Z4Y2QnwS/ioFu8ecV7 | ||
166 | MB0GA1UdDgQWBBRIYj+FxAEGllaHmLL+EMhopIEOQjAOBgNVHQ8BAf8EBAMCBaAwDAYDVR0TAQH/ | ||
167 | BAIwADAdBgNVHSUEFjAUBggrBgEFBQcDBAYIKwYBBQUHAwIwRgYDVR0gBD8wPTA7BgwrBgEEAbIx | ||
168 | AQIBAwUwKzApBggrBgEFBQcCARYdaHR0cHM6Ly9zZWN1cmUuY29tb2RvLm5ldC9DUFMwVwYDVR0f | ||
169 | BFAwTjBMoEqgSIZGaHR0cDovL2NybC5jb21vZG9jYS5jb20vQ09NT0RPQ2xpZW50QXV0aGVudGlj | ||
170 | YXRpb25hbmRTZWN1cmVFbWFpbENBLmNybDCBiAYIKwYBBQUHAQEEfDB6MFIGCCsGAQUFBzAChkZo | ||
171 | dHRwOi8vY3J0LmNvbW9kb2NhLmNvbS9DT01PRE9DbGllbnRBdXRoZW50aWNhdGlvbmFuZFNlY3Vy | ||
172 | ZUVtYWlsQ0EuY3J0MCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5jb21vZG9jYS5jb20wIwYDVR0R | ||
173 | BBwwGoEYZGlhbmEuZ29uY2FsdmVzQGtkYWIuY29tMA0GCSqGSIb3DQEBBQUAA4IBAQACzCCZ4ppg | ||
174 | H7nXnCwisxjGLIgQMdwKPB6lnWk39YT0gEqvn85tDaXIZwGiRda7O1HWdWh7RoncolX3yHQ6p/BJ | ||
175 | 8RWkpxoc4es1wXSPmWMpspnglvtqYlfu7NZ/CqI6bvgqoy0w3KSv+GnVkiQ6SVKU4fV6itr5VG9q | ||
176 | X0JYXAbKO8hOIP3NO3MVacPgzSIv83B9eLpfi/BlG6q6XKxVf4581lYbLL0F7cKQt1UYPiDsmPJG | ||
177 | +5SEHT6ZOBiLgqQVhAw4Di+6wymUHONBRuH2bH3cjfFlkCCjiFF/cS7Oharro2RFnWQ6beZ3EzCG | ||
178 | FJILmq/dVMGsBFWme23hLYwtLJSXMYIDqzCCA6cCAQEwgagwgZMxCzAJBgNVBAYTAkdCMRswGQYD | ||
179 | VQQIExJHcmVhdGVyIE1hbmNoZXN0ZXIxEDAOBgNVBAcTB1NhbGZvcmQxGjAYBgNVBAoTEUNPTU9E | ||
180 | TyBDQSBMaW1pdGVkMTkwNwYDVQQDEzBDT01PRE8gQ2xpZW50IEF1dGhlbnRpY2F0aW9uIGFuZCBT | ||
181 | ZWN1cmUgRW1haWwgQ0ECEDBT3pfLPhnJHei/ohiMG6UwCQYFKw4DAhoFAKCCAdcwGAYJKoZIhvcN | ||
182 | AQkDMQsGCSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcNMTcwMTIwMTA1MTQxWjAjBgkqhkiG9w0B | ||
183 | CQQxFgQU/AV0Tj17RqaDDCeGXWhe4epgX6gwgbkGCSsGAQQBgjcQBDGBqzCBqDCBkzELMAkGA1UE | ||
184 | BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgG | ||
185 | A1UEChMRQ09NT0RPIENBIExpbWl0ZWQxOTA3BgNVBAMTMENPTU9ETyBDbGllbnQgQXV0aGVudGlj | ||
186 | YXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIQMFPel8s+Gckd6L+iGIwbpTCBuwYLKoZIhvcNAQkQ | ||
187 | AgsxgauggagwgZMxCzAJBgNVBAYTAkdCMRswGQYDVQQIExJHcmVhdGVyIE1hbmNoZXN0ZXIxEDAO | ||
188 | BgNVBAcTB1NhbGZvcmQxGjAYBgNVBAoTEUNPTU9ETyBDQSBMaW1pdGVkMTkwNwYDVQQDEzBDT01P | ||
189 | RE8gQ2xpZW50IEF1dGhlbnRpY2F0aW9uIGFuZCBTZWN1cmUgRW1haWwgQ0ECEDBT3pfLPhnJHei/ | ||
190 | ohiMG6UwDQYJKoZIhvcNAQEBBQAEggEAEIfTyPoqjyJwrpYmZWRF6OY5ZCFdpw1UUfSXYUU2IdbL | ||
191 | ph8QkMCc9uv5wk2IeE/9UxxvUR44J67Bu8hv/PCaeyMSh1j2peOlFG487SwyTjf5wIL+GEs8zvHo | ||
192 | 4+Dd2IPhAExt1Bjhmt6O7caF9LVrGQ/wlI6ZGN8MgjSgdrK4F3Ig4LbMuyTTcy3hDTvb+qzaQ4YI | ||
193 | E+F4tnwhXG8FGEBnlng6nB4iXhoWSvBsjc1qF6eHEHzsOIZeNL7K6Imn7oKHJg+THGwHxC1TZGFt | ||
194 | G92u6zV7Sc/i4ENH2MNzXT75mp8Gq/k6gpRz9nw8UVuLN/rDIb6esnEgVH9ad3awD154HAAAAAAA | ||
195 | AA== | ||
196 | --Apple-Mail=_607FF8D2-30E0-4FC3-86D9-1234567890AB-- | ||
197 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-apple.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-apple.mbox.html new file mode 100644 index 00000000..11652a14 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-apple.mbox.html | |||
@@ -0,0 +1,58 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signErr"> | ||
9 | <tr class="signErrH"> | ||
10 | <td dir="ltr"> | ||
11 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
12 | <tr> | ||
13 | <td>Invalid signature.</td> | ||
14 | <td align="right"> | ||
15 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
16 | </td> | ||
17 | </tr> | ||
18 | </table> | ||
19 | </td> | ||
20 | </tr> | ||
21 | <tr class="signErrB"> | ||
22 | <td> | ||
23 | <a name="att1"/> | ||
24 | <div id="attachmentDiv1"> | ||
25 | <a name="att1.2"/> | ||
26 | <div id="attachmentDiv1.2"> | ||
27 | <a name="att1.2.1"/> | ||
28 | <div id="attachmentDiv1.2.1"> | ||
29 | <div style="position: relative">Olá Konqui,<div class="">Here is the pdf you asked for!</div><div class="">Cheers,</div><div class="">Quaack</div></div> | ||
30 | </div> | ||
31 | <a name="att1.2.2"/> | ||
32 | <div id="attachmentDiv1.2.2"> | ||
33 | <hr/> | ||
34 | <div> | ||
35 | <a href="attachment:1.2.2?place=body"><img align="center" height="48" width="48" src="file:image-png.svg" border="0" style="max-width: 100%" alt=""/>image.png</a> | ||
36 | </div> | ||
37 | <div/> | ||
38 | </div> | ||
39 | <a name="att1.2.3"/> | ||
40 | <div id="attachmentDiv1.2.3"> | ||
41 | <div style="position: relative"> | ||
42 | <blockquote type="cite" class=""> | ||
43 | <div class="">On 20 Jan 2017, at 10:35, Konqui <<a href="mailto:Konqui@kdab.com">Konqui</a></div> | ||
44 | </blockquote> | ||
45 | </div> | ||
46 | </div> | ||
47 | </div> | ||
48 | </div> | ||
49 | </td> | ||
50 | </tr> | ||
51 | <tr class="signErrH"> | ||
52 | <td dir="ltr">End of signed message</td> | ||
53 | </tr> | ||
54 | </table> | ||
55 | </div> | ||
56 | </div> | ||
57 | </body> | ||
58 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-apple.mbox.inProgress.html b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-apple.mbox.inProgress.html new file mode 100644 index 00000000..5b57b937 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-apple.mbox.inProgress.html | |||
@@ -0,0 +1,49 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="signInProgress"> | ||
9 | <tr class="signInProgressH"> | ||
10 | <td dir="ltr">Please wait while the signature is being verified...</td> | ||
11 | </tr> | ||
12 | <tr class="signInProgressB"> | ||
13 | <td> | ||
14 | <a name="att1"/> | ||
15 | <div id="attachmentDiv1"> | ||
16 | <a name="att1.2"/> | ||
17 | <div id="attachmentDiv1.2"> | ||
18 | <a name="att1.2.1"/> | ||
19 | <div id="attachmentDiv1.2.1"> | ||
20 | <div style="position: relative">Olá Konqui,<div class="">Here is the pdf you asked for!</div><div class="">Cheers,</div><div class="">Quaack</div></div> | ||
21 | </div> | ||
22 | <a name="att1.2.2"/> | ||
23 | <div id="attachmentDiv1.2.2"> | ||
24 | <hr/> | ||
25 | <div> | ||
26 | <a href="attachment:1.2.2?place=body"><img align="center" height="48" width="48" src="file:image-png.svg" border="0" style="max-width: 100%" alt=""/>image.png</a> | ||
27 | </div> | ||
28 | <div/> | ||
29 | </div> | ||
30 | <a name="att1.2.3"/> | ||
31 | <div id="attachmentDiv1.2.3"> | ||
32 | <div style="position: relative"> | ||
33 | <blockquote type="cite" class=""> | ||
34 | <div class="">On 20 Jan 2017, at 10:35, Konqui <<a href="mailto:Konqui@kdab.com">Konqui</a></div> | ||
35 | </blockquote> | ||
36 | </div> | ||
37 | </div> | ||
38 | </div> | ||
39 | </div> | ||
40 | </td> | ||
41 | </tr> | ||
42 | <tr class="signInProgressH"> | ||
43 | <td dir="ltr">End of signed message</td> | ||
44 | </tr> | ||
45 | </table> | ||
46 | </div> | ||
47 | </div> | ||
48 | </body> | ||
49 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-apple.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-apple.mbox.tree new file mode 100644 index 00000000..3ade4efe --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-apple.mbox.tree | |||
@@ -0,0 +1,3 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::SignedMessagePart | ||
3 | * MimeTreeParser::AlternativeMessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-encrypted.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-encrypted.mbox new file mode 100644 index 00000000..49857e15 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-encrypted.mbox | |||
@@ -0,0 +1,38 @@ | |||
1 | From test@example.com Wed, 08 Sep 2010 17:51:32 +0200 | ||
2 | From: S/MIME Test <test@example.com> | ||
3 | To: test@example.com | ||
4 | Subject: S/MIME signed and encrypted | ||
5 | Date: Wed, 08 Sep 2010 17:51:32 +0200 | ||
6 | User-Agent: KMail/4.6 pre (Linux/2.6.34-rc2-2-default; KDE/4.5.60; x86_64; ; ) | ||
7 | MIME-Version: 1.0 | ||
8 | Content-Type: application/pkcs7-mime; name="smime.p7m"; smime-type="enveloped-data" | ||
9 | Content-Disposition: attachment; filename="smime.p7m" | ||
10 | Content-Transfer-Encoding: base64 | ||
11 | |||
12 | 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 | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-encrypted.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-encrypted.mbox.html new file mode 100644 index 00000000..e13d6841 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-encrypted.mbox.html | |||
@@ -0,0 +1,55 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <table cellspacing="1" cellpadding="1" class="encr"> | ||
9 | <tr class="encrH"> | ||
10 | <td dir="ltr">Encrypted message</td> | ||
11 | </tr> | ||
12 | <tr class="encrB"> | ||
13 | <td> | ||
14 | <div style="position: relative; word-wrap: break-word"> | ||
15 | <a name="att"/> | ||
16 | <div id="attachmentDiv"> | ||
17 | <table cellspacing="1" cellpadding="1" class="signOkKeyOk"> | ||
18 | <tr class="signOkKeyOkH"> | ||
19 | <td dir="ltr"> | ||
20 | <table cellspacing="0" cellpadding="0" width="100%"> | ||
21 | <tr> | ||
22 | <td>Signed by <a href="mailto:test@example.com">test@example.com</a>.</td> | ||
23 | <td align="right"> | ||
24 | <a href="kmail:showSignatureDetails">Show Details</a> | ||
25 | </td> | ||
26 | </tr> | ||
27 | </table> | ||
28 | </td> | ||
29 | </tr> | ||
30 | <tr class="signOkKeyOkB"> | ||
31 | <td> | ||
32 | <a name="att1"/> | ||
33 | <div id="attachmentDiv1"> | ||
34 | <div class="noquote"> | ||
35 | <div dir="ltr">encrypted message text</div> | ||
36 | </div> | ||
37 | </div> | ||
38 | </td> | ||
39 | </tr> | ||
40 | <tr class="signOkKeyOkH"> | ||
41 | <td dir="ltr">End of signed message</td> | ||
42 | </tr> | ||
43 | </table> | ||
44 | </div> | ||
45 | </div> | ||
46 | </td> | ||
47 | </tr> | ||
48 | <tr class="encrH"> | ||
49 | <td dir="ltr">End of encrypted message</td> | ||
50 | </tr> | ||
51 | </table> | ||
52 | </div> | ||
53 | </div> | ||
54 | </body> | ||
55 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-encrypted.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-encrypted.mbox.tree new file mode 100644 index 00000000..7d5bbeb7 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/smime-signed-encrypted.mbox.tree | |||
@@ -0,0 +1,5 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::EncryptedMessagePart | ||
3 | * MimeTreeParser::SignedMessagePart | ||
4 | * MimeTreeParser::TextMessagePart | ||
5 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/text+html-maillinglist.mbox b/framework/src/domain/mimetreeparser/otp/autotests/data/text+html-maillinglist.mbox new file mode 100644 index 00000000..f9c6387f --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/text+html-maillinglist.mbox | |||
@@ -0,0 +1,163 @@ | |||
1 | Return-Path: <bugzilla-bounces@lists.kolabsys.com> | ||
2 | Received: from kolab01.kolabsys.com ([unix socket]) | ||
3 | by kolab01.kolabsys.com (Cyrus v2.4.17-Kolab-2.4.17-1.el6.kolab_3.0) with LMTPA; | ||
4 | Thu, 11 Apr 2013 09:03:01 +0200 | ||
5 | X-Sieve: CMU Sieve 2.4 | ||
6 | Received: from ext-mx01.kolabsys.com (unknown [10.10.20.253]) | ||
7 | by kolab01.kolabsys.com (Postfix) with ESMTP id 3D8A9C0AE3 | ||
8 | for <shared+shared/lists/kolabsys.com/bugzilla@kolabsys.com>; Thu, 11 Apr 2013 09:03:01 +0200 (CEST) | ||
9 | Received: from localhost (localhost [127.0.0.1]) | ||
10 | by ext-mx01.kolabsys.com (Postfix) with ESMTP id 89D4E10057E | ||
11 | for <shared+shared/lists/kolabsys.com/bugzilla@kolabsys.com>; Thu, 11 Apr 2013 09:02:38 +0200 (CEST) | ||
12 | X-Virus-Scanned: amavisd-new at example.com | ||
13 | X-Amavis-Alert: BAD HEADER SECTION, Duplicate header field: "MIME-Version" | ||
14 | Received: from ext-mx01.kolabsys.com ([127.0.0.1]) | ||
15 | by localhost (fw01.kolabsys.com [127.0.0.1]) (amavisd-new, port 10024) | ||
16 | with ESMTP id BJxrh9Yst1Ac | ||
17 | for <shared+shared/lists/kolabsys.com/bugzilla@kolabsys.com>; | ||
18 | Thu, 11 Apr 2013 09:02:38 +0200 (CEST) | ||
19 | Received: from lists.kolabsys.com (static.253.32.46.78.clients.your-server.de [78.46.32.253]) | ||
20 | by ext-mx01.kolabsys.com (Postfix) with ESMTP id 609821004A7 | ||
21 | for <shared+shared/lists/kolabsys.com/bugzilla@kolabsys.com>; Thu, 11 Apr 2013 09:02:38 +0200 (CEST) | ||
22 | Received: from localhost (localhost [127.0.0.1]) | ||
23 | by lists.kolabsys.com (Postfix) with ESMTP id BFA6941D4EAD; | ||
24 | Thu, 11 Apr 2013 09:03:00 +0200 (CEST) | ||
25 | X-Virus-Scanned: Debian amavisd-new at lists.kolabsys.com | ||
26 | X-Amavis-Alert: BAD HEADER SECTION, Duplicate header field: "MIME-Version" | ||
27 | Received: from lists.kolabsys.com ([127.0.0.1]) | ||
28 | by localhost (lists.kolabsys.com [127.0.0.1]) (amavisd-new, port 10024) | ||
29 | with ESMTP id TYU5eAMK5J6T; Thu, 11 Apr 2013 09:02:58 +0200 (CEST) | ||
30 | Received: from lists.kolabsys.com (localhost [127.0.0.1]) | ||
31 | by lists.kolabsys.com (Postfix) with ESMTP id 182FC41D2A3B; | ||
32 | Thu, 11 Apr 2013 09:02:58 +0200 (CEST) | ||
33 | Received: from localhost (localhost [127.0.0.1]) | ||
34 | by lists.kolabsys.com (Postfix) with ESMTP id A2B3641D4EC2 | ||
35 | for <bugzilla@lists.kolabsys.com>; | ||
36 | Thu, 11 Apr 2013 09:02:56 +0200 (CEST) | ||
37 | X-Virus-Scanned: Debian amavisd-new at lists.kolabsys.com | ||
38 | Received: from lists.kolabsys.com ([127.0.0.1]) | ||
39 | by localhost (lists.kolabsys.com [127.0.0.1]) (amavisd-new, port 10024) | ||
40 | with ESMTP id cyO-CNB3vFwu for <bugzilla@lists.kolabsys.com>; | ||
41 | Thu, 11 Apr 2013 09:02:54 +0200 (CEST) | ||
42 | Received: from ext-mx02.kolabsys.com (ext-mx02.kolabsys.com [94.230.208.222]) | ||
43 | by lists.kolabsys.com (Postfix) with ESMTP id 1640E41D2A3B | ||
44 | for <bugzilla@lists.kolabsys.com>; | ||
45 | Thu, 11 Apr 2013 09:02:54 +0200 (CEST) | ||
46 | Received: from localhost (localhost [127.0.0.1]) | ||
47 | by ext-mx01.kolabsys.com (Postfix) with ESMTP id 58CBC160522 | ||
48 | for <bugzilla@lists.kolabsys.com>; | ||
49 | Thu, 11 Apr 2013 10:02:44 +0200 (CEST) | ||
50 | X-Virus-Scanned: amavisd-new at example.com | ||
51 | Received: from ext-mx02.kolabsys.com ([127.0.0.1]) | ||
52 | by localhost (fw02.kolabsys.com [127.0.0.1]) (amavisd-new, port 10024) | ||
53 | with ESMTP id 4VjnHg6Y6jo7 for <bugzilla@lists.kolabsys.com>; | ||
54 | Thu, 11 Apr 2013 10:02:42 +0200 (CEST) | ||
55 | Received: from app04.kolabsys.com (unknown [10.10.20.16]) | ||
56 | by ext-mx02.kolabsys.com (Postfix) with ESMTP id 062DF160521 | ||
57 | for <bugzilla@lists.kolabsys.com>; | ||
58 | Thu, 11 Apr 2013 10:02:42 +0200 (CEST) | ||
59 | Received: by app04.kolabsys.com (Postfix, from userid 48) | ||
60 | id 8E7524048C; Thu, 11 Apr 2013 09:02:51 +0200 (CEST) | ||
61 | From: Kolab Bugzilla <noreply@kolab.org> | ||
62 | To: bugzilla@lists.kolabsys.com | ||
63 | Subject: [Bug 1741] Standard folder name configuration ignored on creating | ||
64 | new users | ||
65 | Date: Thu, 11 Apr 2013 07:02:43 +0000 | ||
66 | X-Bugzilla-Reason: GlobalWatcher | ||
67 | X-Bugzilla-Type: changed | ||
68 | X-Bugzilla-Watch-Reason: None | ||
69 | X-Bugzilla-Product: UCS | ||
70 | X-Bugzilla-Component: roundcube | ||
71 | X-Bugzilla-Keywords: | ||
72 | X-Bugzilla-Severity: normal | ||
73 | X-Bugzilla-Who: wickert@kolabsys.com | ||
74 | X-Bugzilla-Status: NEW | ||
75 | X-Bugzilla-Priority: P3 | ||
76 | X-Bugzilla-Assigned-To: machniak@kolabsys.com | ||
77 | X-Bugzilla-Target-Milestone: 3.1-next | ||
78 | X-Bugzilla-Changed-Fields: | ||
79 | Message-ID: <bug-1741-12-HOSaBe3Z8l@http.issues.kolab.org/> | ||
80 | In-Reply-To: <bug-1741-12@http.issues.kolab.org/> | ||
81 | References: <bug-1741-12@http.issues.kolab.org/> | ||
82 | X-Bugzilla-URL: http://issues.kolab.org/ | ||
83 | Auto-Submitted: auto-generated | ||
84 | MIME-Version: 1.0 | ||
85 | X-BeenThere: bugzilla@lists.kolabsys.com | ||
86 | X-Mailman-Version: 2.1.11 | ||
87 | Precedence: list | ||
88 | Reply-To: server-team@lists.kolabsys.com | ||
89 | List-Id: All Bugzilla email notifications <bugzilla.lists.kolabsys.com> | ||
90 | List-Unsubscribe: <https://lists.kolabsys.com/mailman/options/bugzilla>, | ||
91 | <mailto:bugzilla-request@lists.kolabsys.com?subject=unsubscribe> | ||
92 | List-Archive: <http://lists.kolabsys.com/pipermail/bugzilla> | ||
93 | List-Post: <mailto:bugzilla@lists.kolabsys.com> | ||
94 | List-Help: <mailto:bugzilla-request@lists.kolabsys.com?subject=help> | ||
95 | List-Subscribe: <https://lists.kolabsys.com/mailman/listinfo/bugzilla>, | ||
96 | <mailto:bugzilla-request@lists.kolabsys.com?subject=subscribe> | ||
97 | Content-Type: multipart/mixed; boundary="===============1778809852==" | ||
98 | Mime-version: 1.0 | ||
99 | Sender: bugzilla-bounces@lists.kolabsys.com | ||
100 | Errors-To: bugzilla-bounces@lists.kolabsys.com | ||
101 | |||
102 | |||
103 | --===============1778809852== | ||
104 | Content-Type: multipart/alternative; boundary="1365663771.ec4d382.10226"; charset="us-ascii" | ||
105 | |||
106 | |||
107 | --1365663771.ec4d382.10226 | ||
108 | Date: Thu, 11 Apr 2013 09:02:51 +0200 | ||
109 | MIME-Version: 1.0 | ||
110 | Content-Type: text/plain; charset="UTF-8" | ||
111 | |||
112 | https://issues.kolab.org/show_bug.cgi?id=1741 | ||
113 | |||
114 | --- Comment #4 from Christoph Wickert <wickert@kolabsys.com> --- | ||
115 | You can get everything you need on test93-18. | ||
116 | |||
117 | -- | ||
118 | You are receiving this mail because: | ||
119 | You are watching all bug changes. | ||
120 | |||
121 | --1365663771.ec4d382.10226 | ||
122 | Date: Thu, 11 Apr 2013 09:02:51 +0200 | ||
123 | MIME-Version: 1.0 | ||
124 | Content-Type: text/html; charset="UTF-8" | ||
125 | |||
126 | <html> | ||
127 | <head> | ||
128 | <base href="https://issues.kolab.org/" /> | ||
129 | </head> | ||
130 | <body> | ||
131 | <b><a class="bz_bug_link | ||
132 | bz_status_NEW " | ||
133 | title="NEW --- - Standard folder name configuration ignored on creating new users" | ||
134 | href="https://issues.kolab.org/show_bug.cgi?id=1741#c4">Comment # 4</a> | ||
135 | on <a class="bz_bug_link | ||
136 | bz_status_NEW " | ||
137 | title="NEW --- - Standard folder name configuration ignored on creating new users" | ||
138 | href="https://issues.kolab.org/show_bug.cgi?id=1741">bug 1741</a> | ||
139 | from <span class="vcard"><a class="email" href="mailto:wickert@kolabsys.com" title="Christoph Wickert <wickert@kolabsys.com>"> <span class="fn">Christoph Wickert</span></a> | ||
140 | </span></b> | ||
141 | <pre>You can get everything you need on test93-18.</pre> | ||
142 | <span>You are receiving this mail because:</span> | ||
143 | <ul> | ||
144 | <li>You are watching all bug changes.</li> | ||
145 | </ul> | ||
146 | </body> | ||
147 | </html> | ||
148 | |||
149 | --1365663771.ec4d382.10226-- | ||
150 | |||
151 | --===============1778809852== | ||
152 | Content-Type: text/plain; charset="us-ascii" | ||
153 | MIME-Version: 1.0 | ||
154 | Content-Transfer-Encoding: 7bit | ||
155 | Content-Disposition: inline | ||
156 | |||
157 | _______________________________________________ | ||
158 | bugzilla mailing list | ||
159 | bugzilla@lists.kolabsys.com | ||
160 | https://lists.kolabsys.com/mailman/listinfo/bugzilla | ||
161 | |||
162 | --===============1778809852==-- | ||
163 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/text+html-maillinglist.mbox.html b/framework/src/domain/mimetreeparser/otp/autotests/data/text+html-maillinglist.mbox.html new file mode 100644 index 00000000..2b5af631 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/text+html-maillinglist.mbox.html | |||
@@ -0,0 +1,38 @@ | |||
1 | <?xml version="1.0" encoding="UTF8"?> | ||
2 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
3 | <html> | ||
4 | <body> | ||
5 | <div style="position: relative; word-wrap: break-word"> | ||
6 | <a name="att"/> | ||
7 | <div id="attachmentDiv"> | ||
8 | <a name="att1"/> | ||
9 | <div id="attachmentDiv1"> | ||
10 | <a name="att1.2"/> | ||
11 | <div id="attachmentDiv1.2"> | ||
12 | <div style="position: relative"> | ||
13 | <b><a class="bz_bug_link bz_status_NEW " title="NEW --- - Standard folder name configuration ignored on creating new users" href="https://issues.kolab.org/show_bug.cgi?id=1741#c4">Comment # 4</a>on <a class="bz_bug_link bz_status_NEW " title="NEW --- - Standard folder name configuration ignored on creating new users" href="https://issues.kolab.org/show_bug.cgi?id=1741">bug 1741</a>from <span class="vcard"><a class="email" href="mailto:wickert@kolabsys.com" title="Christoph Wickert <wickert@kolabsys.com>"><span class="fn">Christoph Wickert</span></a></span></b> | ||
14 | <pre>You can get everything you need on test93-18.</pre> | ||
15 | <span>You are receiving this mail because:</span> | ||
16 | <ul> | ||
17 | <li>You are watching all bug changes.</li> | ||
18 | </ul> | ||
19 | </div> | ||
20 | </div> | ||
21 | </div> | ||
22 | <a name="att2"/> | ||
23 | <div id="attachmentDiv2"> | ||
24 | <div class="noquote"> | ||
25 | <div dir="ltr">_______________________________________________</div> | ||
26 | <div dir="ltr">bugzilla mailing list</div> | ||
27 | <div dir="ltr"> | ||
28 | <a href="mailto:bugzilla@lists.kolabsys.com">bugzilla@lists.kolabsys.com</a> | ||
29 | </div> | ||
30 | <div dir="ltr"> | ||
31 | <a href="https://lists.kolabsys.com/mailman/listinfo/bugzilla">https://lists.kolabsys.com/mailman/listinfo/bugzilla</a> | ||
32 | </div> | ||
33 | </div> | ||
34 | </div> | ||
35 | </div> | ||
36 | </div> | ||
37 | </body> | ||
38 | </html> | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/data/text+html-maillinglist.mbox.tree b/framework/src/domain/mimetreeparser/otp/autotests/data/text+html-maillinglist.mbox.tree new file mode 100644 index 00000000..3738cb37 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/data/text+html-maillinglist.mbox.tree | |||
@@ -0,0 +1,5 @@ | |||
1 | * MimeTreeParser::MessagePartList | ||
2 | * MimeTreeParser::MimeMessagePart | ||
3 | * MimeTreeParser::AlternativeMessagePart | ||
4 | * MimeTreeParser::AttachmentMessagePart | ||
5 | * MimeTreeParser::MessagePart | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/kdepim_add_gpg_crypto_test.cmake b/framework/src/domain/mimetreeparser/otp/autotests/kdepim_add_gpg_crypto_test.cmake new file mode 100644 index 00000000..ea0ab8d2 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/kdepim_add_gpg_crypto_test.cmake | |||
@@ -0,0 +1,61 @@ | |||
1 | # Copyright (c) 2013 Sandro Knauß <mail@sandroknauss.de> | ||
2 | # | ||
3 | # Redistribution and use is allowed according to the terms of the BSD license. | ||
4 | # For details see the accompanying COPYING-CMAKE-SCRIPTS file. | ||
5 | |||
6 | set( MIMETREEPARSERRELPATH framework/src/domain/mimetreeparser) | ||
7 | set( GNUPGHOME ${CMAKE_BINARY_DIR}/${MIMETREEPARSERRELPATH}/tests/gnupg_home ) | ||
8 | add_definitions( -DGNUPGHOME="${GNUPGHOME}" ) | ||
9 | |||
10 | macro (ADD_GPG_CRYPTO_TEST _target _testname) | ||
11 | if (UNIX) | ||
12 | if (APPLE) | ||
13 | set(_library_path_variable "DYLD_LIBRARY_PATH") | ||
14 | elseif (CYGWIN) | ||
15 | set(_library_path_variable "PATH") | ||
16 | else (APPLE) | ||
17 | set(_library_path_variable "LD_LIBRARY_PATH") | ||
18 | endif (APPLE) | ||
19 | |||
20 | if (APPLE) | ||
21 | # DYLD_LIBRARY_PATH does not work like LD_LIBRARY_PATH | ||
22 | # OSX already has the RPATH in libraries and executables, putting runtime directories in | ||
23 | # DYLD_LIBRARY_PATH actually breaks things | ||
24 | set(_ld_library_path "${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/") | ||
25 | else (APPLE) | ||
26 | set(_ld_library_path "${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/:${LIB_INSTALL_DIR}:${QT_LIBRARY_DIR}") | ||
27 | endif (APPLE) | ||
28 | set(_executable "$<TARGET_FILE:${_target}>") | ||
29 | |||
30 | # use add_custom_target() to have the sh-wrapper generated during build time instead of cmake time | ||
31 | add_custom_command(TARGET ${_target} POST_BUILD | ||
32 | COMMAND ${CMAKE_COMMAND} | ||
33 | -D_filename=${_executable}.shell -D_library_path_variable=${_library_path_variable} | ||
34 | -D_ld_library_path="${_ld_library_path}" -D_executable=$<TARGET_FILE:${_target}> | ||
35 | -D_gnupghome="${GNUPGHOME}" | ||
36 | -P ${CMAKE_SOURCE_DIR}/${MIMETREEPARSERRELPATH}/tests/kdepim_generate_crypto_test_wrapper.cmake | ||
37 | ) | ||
38 | |||
39 | set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES "${_executable}.shell" ) | ||
40 | add_test(NAME ${_testname} COMMAND ${_executable}.shell) | ||
41 | |||
42 | else (UNIX) | ||
43 | # under windows, set the property WRAPPER_SCRIPT just to the name of the executable | ||
44 | # maybe later this will change to a generated batch file (for setting the PATH so that the Qt libs are found) | ||
45 | set(_ld_library_path "${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}\;${LIB_INSTALL_DIR}\;${QT_LIBRARY_DIR}") | ||
46 | set(_executable "$<TARGET_FILE:${_target}>") | ||
47 | |||
48 | # use add_custom_target() to have the batch-file-wrapper generated during build time instead of cmake time | ||
49 | add_custom_command(TARGET ${_target} POST_BUILD | ||
50 | COMMAND ${CMAKE_COMMAND} | ||
51 | -D_filename="${_executable}.bat" | ||
52 | -D_ld_library_path="${_ld_library_path}" -D_executable="${_executable}" | ||
53 | -D_gnupghome="${GNUPGHOME}" | ||
54 | -P ${CMAKE_SOURCE_DIR}/${MIMETREEPARSERRELPATH}/tests/kdepim_generate_crypto_test_wrapper.cmake | ||
55 | ) | ||
56 | |||
57 | add_test(NAME ${_testname} COMMAND ${_executable}.bat) | ||
58 | |||
59 | endif (UNIX) | ||
60 | endmacro (ADD_GPG_CRYPTO_TEST) | ||
61 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/kdepim_generate_crypto_test_wrapper.cmake b/framework/src/domain/mimetreeparser/otp/autotests/kdepim_generate_crypto_test_wrapper.cmake new file mode 100644 index 00000000..e1412f37 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/kdepim_generate_crypto_test_wrapper.cmake | |||
@@ -0,0 +1,45 @@ | |||
1 | # Copyright (c) 2006, Alexander Neundorf, <neundorf@kde.org> | ||
2 | # Copyright (c) 2013, Sandro Knauß <mail@sandroknauss.de> | ||
3 | # | ||
4 | # Redistribution and use is allowed according to the terms of the BSD license. | ||
5 | # For details see the accompanying COPYING-CMAKE-SCRIPTS file. | ||
6 | |||
7 | |||
8 | if (UNIX) | ||
9 | |||
10 | file(WRITE "${_filename}" | ||
11 | "#!/bin/sh | ||
12 | # created by cmake, don't edit, changes will be lost | ||
13 | |||
14 | # don't mess with a gpg-agent already running on the system | ||
15 | unset GPG_AGENT_INFO | ||
16 | |||
17 | ${_library_path_variable}=${_ld_library_path}\${${_library_path_variable}:+:\$${_library_path_variable}} GNUPGHOME=${_gnupghome} gpg-agent --daemon \"${_executable}\" \"$@\" | ||
18 | _result=$? | ||
19 | _pid=`echo GETINFO pid | GNUPGHOME=${_gnupghome} gpg-connect-agent | grep 'D' | cut -d' ' -f2` | ||
20 | if [ ! -z \"\$_pid\" ]; then | ||
21 | echo \"Waiting for gpg-agent to terminate (PID: $_pid)...\" | ||
22 | while kill -0 \"\$_pid\"; do | ||
23 | sleep 1 | ||
24 | done | ||
25 | fi | ||
26 | exit \$_result | ||
27 | ") | ||
28 | |||
29 | # make it executable | ||
30 | # since this is only executed on UNIX, it is safe to call chmod | ||
31 | exec_program(chmod ARGS ug+x \"${_filename}\" OUTPUT_VARIABLE _dummy ) | ||
32 | |||
33 | else (UNIX) | ||
34 | |||
35 | file(TO_NATIVE_PATH "${_ld_library_path}" win_path) | ||
36 | file(TO_NATIVE_PATH "${_gnupghome}" win_gnupghome) | ||
37 | |||
38 | file(WRITE "${_filename}" | ||
39 | " | ||
40 | set PATH=${win_path};$ENV{PATH} | ||
41 | set GNUPGHOME=${win_gnupghome};$ENV{GNUPGHOME} | ||
42 | gpg-agent --daemon \"${_executable}\" %* | ||
43 | ") | ||
44 | |||
45 | endif (UNIX) | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/nodehelpertest.cpp b/framework/src/domain/mimetreeparser/otp/autotests/nodehelpertest.cpp new file mode 100644 index 00000000..d2a5d605 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/nodehelpertest.cpp | |||
@@ -0,0 +1,275 @@ | |||
1 | /* Copyright 2015 Sandro Knauß <bugs@sandroknauss.de> | ||
2 | |||
3 | This program is free software; you can redistribute it and/or | ||
4 | modify it under the terms of the GNU General Public License as | ||
5 | published by the Free Software Foundation; either version 2 of | ||
6 | the License or (at your option) version 3 or any later version | ||
7 | accepted by the membership of KDE e.V. (or its successor approved | ||
8 | by the membership of KDE e.V.), which shall act as a proxy | ||
9 | defined in Section 14 of version 3 of the license. | ||
10 | |||
11 | This program is distributed in the hope that it will be useful, | ||
12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | GNU General Public License for more details. | ||
15 | |||
16 | You should have received a copy of the GNU General Public License | ||
17 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
18 | */ | ||
19 | #include "nodehelpertest.h" | ||
20 | |||
21 | #include "nodehelper.h" | ||
22 | |||
23 | #include <qtest.h> | ||
24 | |||
25 | using namespace MimeTreeParser; | ||
26 | |||
27 | NodeHelperTest::NodeHelperTest() | ||
28 | : QObject() | ||
29 | { | ||
30 | |||
31 | } | ||
32 | |||
33 | void NodeHelperTest::testPersistentIndex() | ||
34 | { | ||
35 | NodeHelper helper; | ||
36 | |||
37 | KMime::Content *node = new KMime::Content(); | ||
38 | KMime::Content *node2 = new KMime::Content(); | ||
39 | KMime::Content *node2Extra = new KMime::Content(); | ||
40 | KMime::Content *subNode = new KMime::Content(); | ||
41 | KMime::Content *subsubNode = new KMime::Content(), *subsubNode2 = new KMime::Content(); | ||
42 | KMime::Content *node2ExtraSubNode = new KMime::Content(); | ||
43 | KMime::Content *node2ExtraSubsubNode = new KMime::Content(); | ||
44 | KMime::Content *node2ExtraSubsubNode2 = new KMime::Content(); | ||
45 | KMime::Content *extra = new KMime::Content(), *extra2 = new KMime::Content(); | ||
46 | KMime::Content *subExtra = new KMime::Content(); | ||
47 | KMime::Content *subsubExtra = new KMime::Content(); | ||
48 | KMime::Content *subsubExtraNode = new KMime::Content(); | ||
49 | |||
50 | subNode->addContent(subsubNode); | ||
51 | subNode->addContent(subsubNode2); | ||
52 | node->addContent(subNode); | ||
53 | subsubExtra->addContent(subsubExtraNode); | ||
54 | helper.attachExtraContent(node, extra); | ||
55 | helper.attachExtraContent(node, extra2); | ||
56 | helper.attachExtraContent(subNode, subExtra); | ||
57 | helper.attachExtraContent(subsubNode2, subsubExtra); | ||
58 | |||
59 | // This simulates Opaque S/MIME signed and encrypted message with attachment | ||
60 | // (attachment is node2SubsubNode2) | ||
61 | node2Extra->addContent(node2ExtraSubNode); | ||
62 | node2ExtraSubNode->addContent(node2ExtraSubsubNode); | ||
63 | node2ExtraSubNode->addContent(node2ExtraSubsubNode2); | ||
64 | helper.attachExtraContent(node2, node2Extra); | ||
65 | |||
66 | /* all content has a internal first child, so indexes starts at 2 | ||
67 | * node "" | ||
68 | * -> subNode "2" | ||
69 | * -> subsubNode "2.2" | ||
70 | * -> subsubNode2 "2.3" | ||
71 | * | ||
72 | * node "" | ||
73 | * -> extra "e0" | ||
74 | * -> extra2 "e1" | ||
75 | * | ||
76 | * subNode "2" | ||
77 | * -> subExtra "2:e0" | ||
78 | * | ||
79 | * subsubNode2 "2.3" | ||
80 | * -> subsubExtra "2.3:e0" | ||
81 | * -> subsubExtraNode "2.3:e0:2" | ||
82 | * | ||
83 | * node2 "" | ||
84 | * | ||
85 | * node2 "" | ||
86 | * -> node2Extra "e0" | ||
87 | * -> node2ExtraSubNode "e0:2" | ||
88 | * -> node2ExtraSubsubNode "e0:2.2" | ||
89 | * -> node2ExtraSubsubNode2 "e0:2.3" | ||
90 | */ | ||
91 | |||
92 | QCOMPARE(helper.persistentIndex(node), QStringLiteral("")); | ||
93 | QCOMPARE(helper.contentFromIndex(node, QStringLiteral("")), node); | ||
94 | |||
95 | QCOMPARE(helper.persistentIndex(node->contents()[0]), QStringLiteral("1")); | ||
96 | QCOMPARE(helper.contentFromIndex(node, QStringLiteral("1")), node->contents()[0]); | ||
97 | |||
98 | QCOMPARE(helper.persistentIndex(subNode), QStringLiteral("2")); | ||
99 | QCOMPARE(helper.contentFromIndex(node, QStringLiteral("2")), subNode); | ||
100 | |||
101 | QCOMPARE(helper.persistentIndex(subsubNode), QStringLiteral("2.2")); | ||
102 | QCOMPARE(helper.contentFromIndex(node, QStringLiteral("2.2")), subsubNode); | ||
103 | |||
104 | QCOMPARE(helper.persistentIndex(subsubNode2), QStringLiteral("2.3")); | ||
105 | QCOMPARE(helper.contentFromIndex(node, QStringLiteral("2.3")), subsubNode2); | ||
106 | |||
107 | QCOMPARE(helper.persistentIndex(extra), QStringLiteral("e0")); | ||
108 | QCOMPARE(helper.contentFromIndex(node, QStringLiteral("e0")), extra); | ||
109 | |||
110 | QCOMPARE(helper.persistentIndex(extra2), QStringLiteral("e1")); | ||
111 | QCOMPARE(helper.contentFromIndex(node, QStringLiteral("e1")), extra2); | ||
112 | |||
113 | QCOMPARE(helper.persistentIndex(subExtra), QStringLiteral("2:e0")); | ||
114 | QCOMPARE(helper.contentFromIndex(node, QStringLiteral("2:e0")), subExtra); | ||
115 | |||
116 | QCOMPARE(helper.persistentIndex(subsubExtra), QStringLiteral("2.3:e0")); | ||
117 | QCOMPARE(helper.contentFromIndex(node, QStringLiteral("2.3:e0")), subsubExtra); | ||
118 | |||
119 | QCOMPARE(helper.persistentIndex(subsubExtraNode), QStringLiteral("2.3:e0:2")); | ||
120 | QCOMPARE(helper.contentFromIndex(node, QStringLiteral("2.3:e0:2")), subsubExtraNode); | ||
121 | |||
122 | QCOMPARE(helper.persistentIndex(node2ExtraSubsubNode2), QStringLiteral("e0:2.3")); | ||
123 | QCOMPARE(helper.contentFromIndex(node2, QStringLiteral("e0:2.3")), node2ExtraSubsubNode2); | ||
124 | |||
125 | delete node; | ||
126 | } | ||
127 | |||
128 | void NodeHelperTest::testHREF() | ||
129 | { | ||
130 | NodeHelper helper; | ||
131 | KMime::Message::Ptr msg(new KMime::Message); | ||
132 | QUrl url; | ||
133 | |||
134 | KMime::Content *node = msg->topLevel(); | ||
135 | KMime::Content *subNode = new KMime::Content(); | ||
136 | KMime::Content *subsubNode = new KMime::Content(), *subsubNode2 = new KMime::Content(); | ||
137 | KMime::Content *extra = new KMime::Content(), *extra2 = new KMime::Content(); | ||
138 | KMime::Content *subExtra = new KMime::Content(); | ||
139 | KMime::Content *subsubExtra = new KMime::Content(); | ||
140 | KMime::Content *subsubExtraNode = new KMime::Content(); | ||
141 | |||
142 | subNode->addContent(subsubNode); | ||
143 | subNode->addContent(subsubNode2); | ||
144 | node->addContent(subNode); | ||
145 | subsubExtra->addContent(subsubExtraNode); | ||
146 | helper.attachExtraContent(node, extra); | ||
147 | helper.attachExtraContent(node, extra2); | ||
148 | helper.attachExtraContent(subNode, subExtra); | ||
149 | helper.attachExtraContent(subsubNode2, subsubExtra); | ||
150 | |||
151 | url = QUrl(QStringLiteral("")); | ||
152 | QCOMPARE(helper.fromHREF(msg, url), node); | ||
153 | |||
154 | url = QUrl(QStringLiteral("attachment:e0?place=body")); | ||
155 | QCOMPARE(helper.fromHREF(msg, url), extra); | ||
156 | |||
157 | url = QUrl(QStringLiteral("attachment:2.2?place=body")); | ||
158 | QCOMPARE(helper.fromHREF(msg, url), subsubNode); | ||
159 | |||
160 | url = QUrl(QStringLiteral("attachment:2.3:e0:2?place=body")); | ||
161 | QCOMPARE(helper.fromHREF(msg, url), subsubExtraNode); | ||
162 | |||
163 | QCOMPARE(helper.asHREF(node, QStringLiteral("body")), QStringLiteral("attachment:?place=body")); | ||
164 | QCOMPARE(helper.asHREF(extra, QStringLiteral("body")), QStringLiteral("attachment:e0?place=body")); | ||
165 | QCOMPARE(helper.asHREF(subsubNode, QStringLiteral("body")), QStringLiteral("attachment:2.2?place=body")); | ||
166 | QCOMPARE(helper.asHREF(subsubExtraNode, QStringLiteral("body")), QStringLiteral("attachment:2.3:e0:2?place=body")); | ||
167 | } | ||
168 | |||
169 | void NodeHelperTest::testLocalFiles() | ||
170 | { | ||
171 | NodeHelper helper; | ||
172 | KMime::Message::Ptr msg(new KMime::Message); | ||
173 | |||
174 | KMime::Content *node = msg->topLevel(); | ||
175 | KMime::Content *subNode = new KMime::Content(); | ||
176 | KMime::Content *subsubNode = new KMime::Content(), *subsubNode2 = new KMime::Content(); | ||
177 | KMime::Content *extra = new KMime::Content(), *extra2 = new KMime::Content(); | ||
178 | KMime::Content *subExtra = new KMime::Content(); | ||
179 | KMime::Content *subsubExtra = new KMime::Content(); | ||
180 | KMime::Content *subsubExtraNode = new KMime::Content(); | ||
181 | |||
182 | subNode->addContent(subsubNode); | ||
183 | subNode->addContent(subsubNode2); | ||
184 | node->addContent(subNode); | ||
185 | subsubExtra->addContent(subsubExtraNode); | ||
186 | helper.attachExtraContent(node, extra); | ||
187 | helper.attachExtraContent(node, extra2); | ||
188 | helper.attachExtraContent(subNode, subExtra); | ||
189 | helper.attachExtraContent(subsubNode2, subsubExtra); | ||
190 | |||
191 | helper.writeNodeToTempFile(node); | ||
192 | QCOMPARE(helper.fromHREF(msg, helper.tempFileUrlFromNode(node)), node); | ||
193 | helper.writeNodeToTempFile(subNode); | ||
194 | QCOMPARE(helper.fromHREF(msg, helper.tempFileUrlFromNode(subNode)), subNode); | ||
195 | helper.writeNodeToTempFile(subsubNode); | ||
196 | QCOMPARE(helper.fromHREF(msg, helper.tempFileUrlFromNode(subsubNode)), subsubNode); | ||
197 | helper.writeNodeToTempFile(subsubNode2); | ||
198 | QCOMPARE(helper.fromHREF(msg, helper.tempFileUrlFromNode(subsubNode2)), subsubNode2); | ||
199 | helper.writeNodeToTempFile(extra); | ||
200 | QCOMPARE(helper.fromHREF(msg, helper.tempFileUrlFromNode(extra)), extra); | ||
201 | helper.writeNodeToTempFile(subExtra); | ||
202 | QCOMPARE(helper.fromHREF(msg, helper.tempFileUrlFromNode(subExtra)), subExtra); | ||
203 | helper.writeNodeToTempFile(subsubExtra); | ||
204 | QCOMPARE(helper.fromHREF(msg, helper.tempFileUrlFromNode(subsubExtra)), subsubExtra); | ||
205 | helper.writeNodeToTempFile(subsubExtraNode); | ||
206 | QCOMPARE(helper.fromHREF(msg, helper.tempFileUrlFromNode(subsubExtraNode)), subsubExtraNode); | ||
207 | } | ||
208 | |||
209 | void NodeHelperTest::testCreateTempDir() | ||
210 | { | ||
211 | QString path; | ||
212 | { | ||
213 | NodeHelper helper; | ||
214 | path = helper.createTempDir(QStringLiteral("foo")); | ||
215 | |||
216 | QVERIFY(path.endsWith(QStringLiteral(".index.foo"))); | ||
217 | QVERIFY(QDir(path).exists()); | ||
218 | QVERIFY(QFile(path).permissions() & QFileDevice::WriteUser); | ||
219 | QVERIFY(QFile(path).permissions() & QFileDevice::ExeUser); | ||
220 | QVERIFY(QFile(path).permissions() & QFileDevice::ReadUser); | ||
221 | } | ||
222 | QVERIFY(!QDir(path).exists()); | ||
223 | } | ||
224 | |||
225 | void NodeHelperTest::testFromAsString() | ||
226 | { | ||
227 | const QString tlSender = QStringLiteral("Foo <foo@example.com>"); | ||
228 | const QString encSender = QStringLiteral("Bar <bar@example.com>"); | ||
229 | |||
230 | NodeHelper helper; | ||
231 | |||
232 | // msg (KMime::Message) | ||
233 | // |- subNode | ||
234 | // |- encNode (KMime::Message) | ||
235 | // |- encSubNode | ||
236 | // | ||
237 | // subNode | ||
238 | // |- subExtra | ||
239 | // | ||
240 | // encSubNode | ||
241 | // |- encSubExtra | ||
242 | |||
243 | KMime::Message msg; | ||
244 | msg.from(true)->fromUnicodeString(tlSender, "UTF-8"); | ||
245 | auto node = msg.topLevel(); | ||
246 | auto subNode = new KMime::Content(); | ||
247 | auto subExtra = new KMime::Content(); | ||
248 | |||
249 | // Encapsulated message | ||
250 | KMime::Message *encMsg = new KMime::Message; | ||
251 | encMsg->from(true)->fromUnicodeString(encSender, "UTF-8"); | ||
252 | auto encNode = encMsg->topLevel(); | ||
253 | auto encSubNode = new KMime::Content(); | ||
254 | auto encSubExtra = new KMime::Content(); | ||
255 | |||
256 | node->addContent(subNode); | ||
257 | node->addContent(encMsg); | ||
258 | encNode->addContent(encSubNode); | ||
259 | |||
260 | helper.attachExtraContent(subNode, subExtra); | ||
261 | helper.attachExtraContent(encSubNode, encSubExtra); | ||
262 | |||
263 | QCOMPARE(helper.fromAsString(node), tlSender); | ||
264 | QCOMPARE(helper.fromAsString(subNode), tlSender); | ||
265 | QCOMPARE(helper.fromAsString(subExtra), tlSender); | ||
266 | QEXPECT_FAIL("", "Returning sender of encapsulated message is not yet implemented", Continue); | ||
267 | QCOMPARE(helper.fromAsString(encNode), encSender); | ||
268 | QEXPECT_FAIL("", "Returning sender of encapsulated message is not yet implemented", Continue); | ||
269 | QCOMPARE(helper.fromAsString(encSubNode), encSender); | ||
270 | QEXPECT_FAIL("", "Returning sender of encapsulated message is not yet implemented", Continue); | ||
271 | QCOMPARE(helper.fromAsString(encSubExtra), encSender); | ||
272 | } | ||
273 | |||
274 | QTEST_GUILESS_MAIN(NodeHelperTest) | ||
275 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/nodehelpertest.h b/framework/src/domain/mimetreeparser/otp/autotests/nodehelpertest.h new file mode 100644 index 00000000..d2ed772a --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/nodehelpertest.h | |||
@@ -0,0 +1,45 @@ | |||
1 | /* Copyright 2015 Sandro Knauß <bugs@sandroknauss.de> | ||
2 | |||
3 | This program is free software; you can redistribute it and/or | ||
4 | modify it under the terms of the GNU General Public License as | ||
5 | published by the Free Software Foundation; either version 2 of | ||
6 | the License or (at your option) version 3 or any later version | ||
7 | accepted by the membership of KDE e.V. (or its successor approved | ||
8 | by the membership of KDE e.V.), which shall act as a proxy | ||
9 | defined in Section 14 of version 3 of the license. | ||
10 | |||
11 | This program is distributed in the hope that it will be useful, | ||
12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | GNU General Public License for more details. | ||
15 | |||
16 | You should have received a copy of the GNU General Public License | ||
17 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
18 | */ | ||
19 | #ifndef NODEHELPERTEST_H | ||
20 | #define NODEHELPERTEST_H | ||
21 | |||
22 | #include <QObject> | ||
23 | |||
24 | #include <KMime/Message> | ||
25 | |||
26 | namespace MimeTreeParser | ||
27 | { | ||
28 | |||
29 | class NodeHelperTest : public QObject | ||
30 | { | ||
31 | Q_OBJECT | ||
32 | |||
33 | public: | ||
34 | NodeHelperTest(); | ||
35 | |||
36 | private Q_SLOTS: | ||
37 | void testPersistentIndex(); | ||
38 | void testLocalFiles(); | ||
39 | void testHREF(); | ||
40 | void testCreateTempDir(); | ||
41 | void testFromAsString(); | ||
42 | }; | ||
43 | |||
44 | } | ||
45 | #endif | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/setupenv.cpp b/framework/src/domain/mimetreeparser/otp/autotests/setupenv.cpp new file mode 100644 index 00000000..be7a8685 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/setupenv.cpp | |||
@@ -0,0 +1,34 @@ | |||
1 | /* | ||
2 | Copyright (C) 2010 Klaralvdalens Datakonsult AB, a KDAB Group company, info@kdab.com | ||
3 | Copyright (c) 2010 Leo Franchi <lfranchi@kde.org> | ||
4 | |||
5 | This library is free software; you can redistribute it and/or modify it | ||
6 | under the terms of the GNU Library General Public License as published by | ||
7 | the Free Software Foundation; either version 2 of the License, or (at your | ||
8 | option) any later version. | ||
9 | |||
10 | This library is distributed in the hope that it will be useful, but WITHOUT | ||
11 | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
12 | FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public | ||
13 | License for more details. | ||
14 | |||
15 | You should have received a copy of the GNU Library General Public License | ||
16 | along with this library; see the file COPYING.LIB. If not, write to the | ||
17 | Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA | ||
18 | 02110-1301, USA. | ||
19 | */ | ||
20 | |||
21 | #include "setupenv.h" | ||
22 | |||
23 | #include <QStandardPaths> | ||
24 | |||
25 | #include <QFile> | ||
26 | #include <QDir> | ||
27 | |||
28 | void MimeTreeParser::Test::setupEnv() | ||
29 | { | ||
30 | setenv("LC_ALL", "C", 1); | ||
31 | setenv("KDEHOME", QFile::encodeName(QDir::homePath() + QString::fromLatin1("/.qttest")).constData(), 1); | ||
32 | QStandardPaths::setTestModeEnabled(true); | ||
33 | } | ||
34 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/setupenv.h b/framework/src/domain/mimetreeparser/otp/autotests/setupenv.h new file mode 100644 index 00000000..3582853e --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/setupenv.h | |||
@@ -0,0 +1,175 @@ | |||
1 | /* | ||
2 | Copyright (C) 2010 Klaralvdalens Datakonsult AB, a KDAB Group company, info@kdab.com | ||
3 | Copyright (c) 2010 Leo Franchi <lfranchi@kde.org> | ||
4 | |||
5 | This library is free software; you can redistribute it and/or modify it | ||
6 | under the terms of the GNU Library General Public License as published by | ||
7 | the Free Software Foundation; either version 2 of the License, or (at your | ||
8 | option) any later version. | ||
9 | |||
10 | This library is distributed in the hope that it will be useful, but WITHOUT | ||
11 | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
12 | FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public | ||
13 | License for more details. | ||
14 | |||
15 | You should have received a copy of the GNU Library General Public License | ||
16 | along with this library; see the file COPYING.LIB. If not, write to the | ||
17 | Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA | ||
18 | 02110-1301, USA. | ||
19 | */ | ||
20 | |||
21 | #ifndef MESSAGECORE_TESTS_UTIL_H | ||
22 | #define MESSAGECORE_TESTS_UTIL_H | ||
23 | |||
24 | #include <gpgme++/key.h> | ||
25 | #include <attachmentstrategy.h> | ||
26 | #include <bodypartformatter.h> | ||
27 | #include <bodypartformatterbasefactory.h> | ||
28 | #include <messagepartrenderer.h> | ||
29 | #include <objecttreesource.h> | ||
30 | |||
31 | namespace MimeTreeParser | ||
32 | { | ||
33 | |||
34 | namespace Test | ||
35 | { | ||
36 | |||
37 | /** | ||
38 | * setup a environment variables for tests: | ||
39 | * * set LC_ALL to C | ||
40 | * * set KDEHOME | ||
41 | */ | ||
42 | void setupEnv(); | ||
43 | |||
44 | // We can't use EmptySource, since we need to control some emelnets of the source for tests to also test | ||
45 | // loadExternal and htmlMail. | ||
46 | class TestObjectTreeSource : public MimeTreeParser::Interface::ObjectTreeSource | ||
47 | { | ||
48 | public: | ||
49 | TestObjectTreeSource(MimeTreeParser::HtmlWriter *writer) | ||
50 | : mWriter(writer) | ||
51 | , mAttachmentStrategy(QStringLiteral("smart")) | ||
52 | , mPreferredMode(Util::Html) | ||
53 | , mHtmlLoadExternal(false) | ||
54 | , mDecryptMessage(false) | ||
55 | { | ||
56 | } | ||
57 | |||
58 | MimeTreeParser::HtmlWriter *htmlWriter() Q_DECL_OVERRIDE { | ||
59 | return mWriter; | ||
60 | } | ||
61 | |||
62 | bool htmlLoadExternal() const Q_DECL_OVERRIDE | ||
63 | { | ||
64 | return mHtmlLoadExternal; | ||
65 | } | ||
66 | |||
67 | void setHtmlLoadExternal(bool loadExternal) | ||
68 | { | ||
69 | mHtmlLoadExternal = loadExternal; | ||
70 | } | ||
71 | |||
72 | void setAttachmentStrategy(QString strategy) | ||
73 | { | ||
74 | mAttachmentStrategy = strategy; | ||
75 | } | ||
76 | |||
77 | const AttachmentStrategy *attachmentStrategy() Q_DECL_OVERRIDE { | ||
78 | return AttachmentStrategy::create(mAttachmentStrategy); | ||
79 | } | ||
80 | |||
81 | bool autoImportKeys() const Q_DECL_OVERRIDE | ||
82 | { | ||
83 | return true; | ||
84 | } | ||
85 | |||
86 | bool showEmoticons() const Q_DECL_OVERRIDE | ||
87 | { | ||
88 | return false; | ||
89 | } | ||
90 | |||
91 | bool showExpandQuotesMark() const Q_DECL_OVERRIDE | ||
92 | { | ||
93 | return false; | ||
94 | } | ||
95 | |||
96 | const BodyPartFormatterBaseFactory *bodyPartFormatterFactory() Q_DECL_OVERRIDE { | ||
97 | return &mBodyPartFormatterBaseFactory; | ||
98 | } | ||
99 | |||
100 | bool decryptMessage() const Q_DECL_OVERRIDE | ||
101 | { | ||
102 | return mDecryptMessage; | ||
103 | } | ||
104 | |||
105 | void setAllowDecryption(bool allowDecryption) | ||
106 | { | ||
107 | mDecryptMessage = allowDecryption; | ||
108 | } | ||
109 | |||
110 | void setShowSignatureDetails(bool showSignatureDetails) | ||
111 | { | ||
112 | mShowSignatureDetails = showSignatureDetails; | ||
113 | } | ||
114 | |||
115 | bool showSignatureDetails() const Q_DECL_OVERRIDE | ||
116 | { | ||
117 | return mShowSignatureDetails; | ||
118 | } | ||
119 | |||
120 | void setHtmlMode(MimeTreeParser::Util::HtmlMode mode, const QList<MimeTreeParser::Util::HtmlMode> &availableModes) Q_DECL_OVERRIDE { | ||
121 | Q_UNUSED(mode); | ||
122 | Q_UNUSED(availableModes); | ||
123 | } | ||
124 | |||
125 | MimeTreeParser::Util::HtmlMode preferredMode() const Q_DECL_OVERRIDE | ||
126 | { | ||
127 | return mPreferredMode; | ||
128 | } | ||
129 | |||
130 | void setPreferredMode(MimeTreeParser::Util::HtmlMode mode) | ||
131 | { | ||
132 | mPreferredMode = mode; | ||
133 | } | ||
134 | |||
135 | int levelQuote() const Q_DECL_OVERRIDE | ||
136 | { | ||
137 | return 1; | ||
138 | } | ||
139 | |||
140 | const QTextCodec *overrideCodec() Q_DECL_OVERRIDE { | ||
141 | return nullptr; | ||
142 | } | ||
143 | |||
144 | QString createMessageHeader(KMime::Message *message) Q_DECL_OVERRIDE { | ||
145 | Q_UNUSED(message); | ||
146 | return QString(); //do nothing | ||
147 | } | ||
148 | |||
149 | QObject *sourceObject() Q_DECL_OVERRIDE { | ||
150 | return nullptr; | ||
151 | } | ||
152 | |||
153 | Interface::MessagePartRenderer::Ptr messagePartTheme(Interface::MessagePart::Ptr msgPart) Q_DECL_OVERRIDE { | ||
154 | Q_UNUSED(msgPart); | ||
155 | return Interface::MessagePartRenderer::Ptr(); | ||
156 | } | ||
157 | bool isPrinting() const Q_DECL_OVERRIDE | ||
158 | { | ||
159 | return false; | ||
160 | } | ||
161 | private: | ||
162 | MimeTreeParser::HtmlWriter *mWriter; | ||
163 | QString mAttachmentStrategy; | ||
164 | BodyPartFormatterBaseFactory mBodyPartFormatterBaseFactory; | ||
165 | MimeTreeParser::Util::HtmlMode mPreferredMode; | ||
166 | bool mHtmlLoadExternal; | ||
167 | bool mDecryptMessage; | ||
168 | bool mShowSignatureDetails; | ||
169 | }; | ||
170 | |||
171 | } | ||
172 | |||
173 | } | ||
174 | |||
175 | #endif | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/testcsshelper.cpp b/framework/src/domain/mimetreeparser/otp/autotests/testcsshelper.cpp new file mode 100644 index 00000000..0e411e8f --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/testcsshelper.cpp | |||
@@ -0,0 +1,106 @@ | |||
1 | /* | ||
2 | testcsshelper.cpp | ||
3 | |||
4 | This file is part of KMail, the KDE mail client. | ||
5 | Copyright (c) 2013 Sandro Knauß <bugs@sandroknauss.de> | ||
6 | |||
7 | KMail is free software; you can redistribute it and/or modify it | ||
8 | under the terms of the GNU General Public License, version 2, as | ||
9 | published by the Free Software Foundation. | ||
10 | |||
11 | KMail is distributed in the hope that it will be useful, but | ||
12 | WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
14 | General Public License for more details. | ||
15 | |||
16 | You should have received a copy of the GNU General Public License | ||
17 | along with this program; if not, write to the Free Software | ||
18 | Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | ||
19 | |||
20 | In addition, as a special exception, the copyright holders give | ||
21 | permission to link the code of this program with any edition of | ||
22 | the Qt library by Trolltech AS, Norway (or with modified versions | ||
23 | of Qt that use the same license as Qt), and distribute linked | ||
24 | combinations including the two. You must obey the GNU General | ||
25 | Public License in all respects for all of the code used other than | ||
26 | Qt. If you modify this file, you may extend this exception to | ||
27 | your version of the file, but you are not obligated to do so. If | ||
28 | you do not wish to do so, delete this exception statement from | ||
29 | your version. | ||
30 | */ | ||
31 | |||
32 | #include "testcsshelper.h" | ||
33 | |||
34 | #include <QColor> | ||
35 | #include <QFont> | ||
36 | #include <QPalette> | ||
37 | #include <QApplication> | ||
38 | |||
39 | namespace MimeTreeParser | ||
40 | { | ||
41 | |||
42 | TestCSSHelper::TestCSSHelper(const QPaintDevice *pd) : | ||
43 | CSSHelperBase(pd) | ||
44 | { | ||
45 | mRecycleQuoteColors = false; | ||
46 | mBackgroundColor = QColor(0xff, 0xff, 0xff); | ||
47 | mForegroundColor = QColor(0x1f, 0x1c, 0x1b); | ||
48 | mLinkColor = QColor(0x00, 0x57, 0xae); | ||
49 | cPgpEncrH = QColor(0x00, 0x80, 0xff); | ||
50 | cPgpOk1H = QColor(0x40, 0xff, 0x40); | ||
51 | cPgpOk0H = QColor(0xff, 0xff, 0x40); | ||
52 | cPgpWarnH = QColor(0xff, 0xff, 0x40); | ||
53 | cPgpErrH = QColor(0xff, 0x00, 0x00); | ||
54 | |||
55 | cPgpEncrHT = QColor(0xff, 0xff, 0xff); | ||
56 | cPgpOk1HT = QColor(0x27, 0xae, 0x60); | ||
57 | cPgpOk0HT = QColor(0xf6, 0x74, 0x00); | ||
58 | cPgpWarnHT = QColor(0xf6, 0x74, 0x00); | ||
59 | cPgpErrHT = QColor(0xda, 0x44, 0x53); | ||
60 | |||
61 | cHtmlWarning = QColor(0xff, 0x40, 0x40); | ||
62 | for (int i = 0; i < 3; ++i) { | ||
63 | mQuoteColor[i] = QColor(0x00, 0x80 - i * 0x10, 0x00); | ||
64 | } | ||
65 | |||
66 | QFont defaultFont = QFont(QStringLiteral("Sans Serif"), 9); | ||
67 | mBodyFont = defaultFont; | ||
68 | mPrintFont = defaultFont; | ||
69 | mFixedFont = defaultFont; | ||
70 | mFixedPrintFont = defaultFont; | ||
71 | defaultFont.setItalic(true); | ||
72 | for (int i = 0; i < 3; ++i) { | ||
73 | mQuoteFont[i] = defaultFont; | ||
74 | } | ||
75 | |||
76 | mShrinkQuotes = false; | ||
77 | |||
78 | QPalette pal; | ||
79 | |||
80 | pal.setColor(QPalette::Background, QColor(0xd6, 0xd2, 0xd0)); | ||
81 | pal.setColor(QPalette::Foreground, QColor(0x22, 0x1f, 0x1e)); | ||
82 | pal.setColor(QPalette::Highlight, QColor(0x43, 0xac, 0xe8)); | ||
83 | pal.setColor(QPalette::HighlightedText, QColor(0xff, 0xff, 0xff)); | ||
84 | pal.setColor(QPalette::Mid, QColor(0xb3, 0xab, 0xa7)); | ||
85 | |||
86 | QApplication::setPalette(pal); | ||
87 | |||
88 | recalculatePGPColors(); | ||
89 | } | ||
90 | |||
91 | TestCSSHelper::~TestCSSHelper() | ||
92 | { | ||
93 | |||
94 | } | ||
95 | |||
96 | QString TestCSSHelper::htmlHead(bool fixed) const | ||
97 | { | ||
98 | Q_UNUSED(fixed); | ||
99 | return | ||
100 | QStringLiteral("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\n" | ||
101 | "<html>\n" | ||
102 | "<body>\n"); | ||
103 | } | ||
104 | |||
105 | } | ||
106 | |||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/testcsshelper.h b/framework/src/domain/mimetreeparser/otp/autotests/testcsshelper.h new file mode 100644 index 00000000..c21935cf --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/testcsshelper.h | |||
@@ -0,0 +1,50 @@ | |||
1 | /* -*- c++ -*- | ||
2 | testcsshelper.h | ||
3 | |||
4 | This file is part of KMail, the KDE mail client. | ||
5 | Copyright (c) 2013 Sandro Knauß <bugs@sandroknauss.de> | ||
6 | |||
7 | KMail is free software; you can redistribute it and/or modify it | ||
8 | under the terms of the GNU General Public License, version 2, as | ||
9 | published by the Free Software Foundation. | ||
10 | |||
11 | KMail is distributed in the hope that it will be useful, but | ||
12 | WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
14 | General Public License for more details. | ||
15 | |||
16 | You should have received a copy of the GNU General Public License | ||
17 | along with this program; if not, write to the Free Software | ||
18 | Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | ||
19 | |||
20 | In addition, as a special exception, the copyright holders give | ||
21 | permission to link the code of this program with any edition of | ||
22 | the Qt library by Trolltech AS, Norway (or with modified versions | ||
23 | of Qt that use the same license as Qt), and distribute linked | ||
24 | combinations including the two. You must obey the GNU General | ||
25 | Public License in all respects for all of the code used other than | ||
26 | Qt. If you modify this file, you may extend this exception to | ||
27 | your version of the file, but you are not obligated to do so. If | ||
28 | you do not wish to do so, delete this exception statement from | ||
29 | your version. | ||
30 | */ | ||
31 | |||
32 | #ifndef __MIMETREEPARSER_TESTCSSHELPER_H__ | ||
33 | #define __MIMETREEPARSER_TESTCSSHELPER_H__ | ||
34 | |||
35 | #include "viewer/csshelperbase.h" | ||
36 | |||
37 | namespace MimeTreeParser | ||
38 | { | ||
39 | |||
40 | class TestCSSHelper : public CSSHelperBase | ||
41 | { | ||
42 | public: | ||
43 | explicit TestCSSHelper(const QPaintDevice *pd); | ||
44 | virtual ~TestCSSHelper(); | ||
45 | QString htmlHead(bool fixed) const Q_DECL_OVERRIDE; | ||
46 | }; | ||
47 | |||
48 | } | ||
49 | |||
50 | #endif // __MIMETREEPARSER_TESTCSSHELPER_H__ | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/util.cpp b/framework/src/domain/mimetreeparser/otp/autotests/util.cpp new file mode 100644 index 00000000..5ea415b7 --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/util.cpp | |||
@@ -0,0 +1,34 @@ | |||
1 | /* | ||
2 | Copyright (c) 2010 Thomas McGuire <thomas.mcguire@kdab.com> | ||
3 | |||
4 | This library is free software; you can redistribute it and/or modify it | ||
5 | under the terms of the GNU Library General Public License as published by | ||
6 | the Free Software Foundation; either version 2 of the License, or (at your | ||
7 | option) any later version. | ||
8 | |||
9 | This library is distributed in the hope that it will be useful, but WITHOUT | ||
10 | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
11 | FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public | ||
12 | License for more details. | ||
13 | |||
14 | You should have received a copy of the GNU Library General Public License | ||
15 | along with this library; see the file COPYING.LIB. If not, write to the | ||
16 | Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA | ||
17 | 02110-1301, USA. | ||
18 | */ | ||
19 | #include "util.h" | ||
20 | |||
21 | #include <QFile> | ||
22 | |||
23 | KMime::Message::Ptr readAndParseMail(const QString &mailFile) | ||
24 | { | ||
25 | QFile file(QLatin1String(MAIL_DATA_DIR) + QLatin1Char('/') + mailFile); | ||
26 | file.open(QIODevice::ReadOnly); | ||
27 | Q_ASSERT(file.isOpen()); | ||
28 | const QByteArray data = KMime::CRLFtoLF(file.readAll()); | ||
29 | Q_ASSERT(!data.isEmpty()); | ||
30 | KMime::Message::Ptr msg(new KMime::Message); | ||
31 | msg->setContent(data); | ||
32 | msg->parse(); | ||
33 | return msg; | ||
34 | } | ||
diff --git a/framework/src/domain/mimetreeparser/otp/autotests/util.h b/framework/src/domain/mimetreeparser/otp/autotests/util.h new file mode 100644 index 00000000..ac4aa54f --- /dev/null +++ b/framework/src/domain/mimetreeparser/otp/autotests/util.h | |||
@@ -0,0 +1,43 @@ | |||
1 | /* | ||
2 | Copyright (c) 2010 Thomas McGuire <thomas.mcguire@kdab.com> | ||
3 | |||
4 | This library is free software; you can redistribute it and/or modify it | ||
5 | under the terms of the GNU Library General Public License as published by | ||
6 | the Free Software Foundation; either version 2 of the License, or (at your | ||
7 | option) any later version. | ||
8 | |||
9 | This library is distributed in the hope that it will be useful, but WITHOUT | ||
10 | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
11 | FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public | ||
12 | License for more details. | ||
13 | |||
14 | You should have received a copy of the GNU Library General Public License | ||
15 | along with this library; see the file COPYING.LIB. If not, write to the | ||
16 | Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA | ||
17 | 02110-1301, USA. | ||
18 | */ | ||
19 | #include "htmlwriter.h" | ||
20 | |||
21 | #include <KMime/Message> | ||
22 | |||
23 | class TestHtmlWriter : public MimeTreeParser::HtmlWriter | ||
24 | { | ||
25 | public: | ||
26 | explicit TestHtmlWriter() {} | ||
27 | virtual ~TestHtmlWriter() {} | ||
28 | |||
29 | void begin(const QString &) Q_DECL_OVERRIDE {} | ||
30 | void write(const QString &) Q_DECL_OVERRIDE {} | ||
31 | void end() Q_DECL_OVERRIDE {} | ||
32 | void reset() Q_DECL_OVERRIDE {} | ||
33 | void queue(const QString &str) Q_DECL_OVERRIDE { | ||
34 | html.append(str); | ||
35 | } | ||
36 | void flush() Q_DECL_OVERRIDE {} | ||
37 | void embedPart(const QByteArray &, const QString &) Q_DECL_OVERRIDE {} | ||
38 | void extraHead(const QString &) Q_DECL_OVERRIDE {} | ||
39 | |||
40 | QString html; | ||
41 | }; | ||
42 | |||
43 | KMime::Message::Ptr readAndParseMail(const QString &mailFile); | ||