[Rt-commit] rt branch, 4.2/smime, repushed
Alex Vandiver
alexmv at bestpractical.com
Thu Aug 29 15:04:25 EDT 2013
The branch 4.2/smime was deleted and repushed:
was ead85becddcd4a5170ec56c0e198da6ac5ecb55d
now 9d6481c4c7c980a96e256a43c6f42e0aeade362f
1: 81da587 = 1: 81da587 Process Sign/Encrypt values later on update
2: ac0d3a1 = 2: ac0d3a1 Refactor code which calls GPG::Interface to elimate duplicate code
3: bcb1f89 = 3: bcb1f89 Generalize CallGnuPG slightly more, allowing more code reuse
4: b0dba81 = 4: b0dba81 Minor cleanups to Probe, the one remaining non-CallGnuPG gpg interaction
5: 0da7281 = 5: 0da7281 Catch errors on close()
6: 80c0798 = 6: 80c0798 Rename Key to Signer for clarity and consistency
7: 1194665 = 7: 1194665 Rename Method to Command for clarity; "--foo" is not a "method"
8: 079e3e1 = 8: 079e3e1 Only set the default key if we actually have one
9: 8938e19 = 9: 8938e19 Only set the passphrase if we have one
10: 312cb6e = 10: 312cb6e Split IO::Handle::CRLF into its own file in RT::Crypt::GnuPG::CRLFHandle
11: 09d54d2 = 11: 09d54d2 Switch out RT::Crypt::GnuPG function calls for class methods
12: 6b99048 = 12: 6b99048 Create a generic RT::Crypt class to dispatch methods from
13: 6d2312e = 13: 6d2312e Move data-storage UseKeyFor... methods onto RT::Crypt
14: aad107d = 14: aad107d Provide a RT::Crypt->LoadImplementation method to load RT::Crypt::...
15: 30ab442 = 15: 30ab442 Add RT::Crypt->Protocols, to return the supported encryption protocols
16: 3ffc9fd = 16: 3ffc9fd Make protocol loading case-insensitive
17: 217e572 = 17: 217e572 Add a role for encryption classes
18: 57c195c = 18: 57c195c Move GetPassphrase onto the role
19: 967cfef = 19: 967cfef Move SignEncrypt to dispatch from RT::Crypt
20: d0ecfdc = 20: d0ecfdc Do not error if no From address is provided
21: b3a3025 = 21: b3a3025 Turn FindProtectedParts into a two-step process
22: d24d92e = 22: d24d92e Move FindProtectedParts into RT::Crypt
23: 621a397 = 23: 621a397 Unclaimed multipart/signed or multipart/encrypted parts should be skipped
24: 23c6432 = 24: 23c6432 Assume multipart/{signed,encrypted} parts may be GPG-encrypted
25: cf8ee45 = 25: cf8ee45 Move VerifyDecrypt to dispatch from RT::Crypt
26: acdfefb = 26: acdfefb Fix which part is labelled "Top" in signature attachments
27: 9dca0e0 = 27: 9dca0e0 Remove Top argument from where it is not needed
28: f24b69f = 28: f24b69f Merge two identical AddStatus/SetStatus blocks into one
29: 24f5c2a = 29: 24f5c2a Remove unused Detach argument
30: 8c935dc = 30: 8c935dc Remove unnecessary passing of SetStatus to VerifyRFC3156
31: bd32d0a = 31: bd32d0a Remove AddStatus/SetStatus arguments to VerifyDecrypt
32: e5db507 = 32: e5db507 Move status header setting into RT::Crypt
33: 73d06cf = 33: 73d06cf Move alteration of Top component into Verify/Decrypt methods
34: 5a31c00 = 34: 5a31c00 Move ParseStatus to dispatch from RT::Crypt
35: 084345c = 35: 084345c Move key retrieval to dispatch from RT::Crypt
36: a397c66 = 36: a397c66 Refactor UseKeyFor* and GetKeysFor* for generic use
37: 3522a04 = 37: 3522a04 Add Protocol information to GetPublicKeyInfo call
38: f0a5142 = 38: f0a5142 Move DrySign into RT::Crypt
39: b65c6eb = 39: b65c6eb move ParseDate method into RT::Crypt::Role to allow re-use
40: 30beaa8 = 40: 30beaa8 Move CheckRecipients into RT::Crypt
41: 86d3d32 = 41: 86d3d32 Move logic from RT::Interface::Email::Auth::GnuPG into ::Crypt
42: 602dc5a = 42: 602dc5a Warn about Auth::GnuPG and Auth::SMIME MailPlugins, and switch to Auth::Crypt
43: f81211a = 43: f81211a Remove unnecessary GnuPG disabling during testing
44: dad0e76 = 44: dad0e76 Generalize RT::Interface::Email::Auth::Crypt for multiple protocols
45: 64a9b43 = 45: 64a9b43 By default, VerifyDecrypt should iterate to fixed-point
46: 1c68fcb = 46: 1c68fcb Generalize GnuPG re-verification
47: 71a39b4 = 47: 71a39b4 Remove an unused variable
48: 45002d0 = 48: 45002d0 Abstract out a general Crypt setting, and split incoming and outgoing
49: c6d664d = 49: c6d664d Handle if the incoming protocol is but a scalar
50: 32147d9 = 50: 32147d9 Move GnuPG enabling/disabling to GnuPG PostLoadCheck
51: b4b6f18 = 51: b4b6f18 Move canonicalization of GnuPG homedir to PostLoadCheck
52: 9aed02a = 52: 9aed02a Ensure that RT->Config->Options returns keys in consistent order
53: d5c6da1 = 53: d5c6da1 Add "Probe" as a requirement of RT::Crypt::Role
54: e03e44b = 54: e03e44b Allow safe_run_child to run before ConnectToDatabase runs
55: 8b9d934 = 55: 8b9d934 Genericize loading and ->Probe of RT::Crypt::* classes during PostLoadCheck
56: 9cf1908 = 56: 9cf1908 Don't load crypt implementations upon RT::Crypt load
57: 12bd3b0 = 57: 12bd3b0 Drop extraneous "require RT::Crypt" lines
58: 66826e7 = 58: 66826e7 Switch iterations over all protocols to merely enabled ones
59: 90d1eef = 59: 90d1eef Place Passphrase configuration on individual configurations
60: a7b88b0 = 60: a7b88b0 Move RejectOnMissingPrivateKey and RejectOnBadData to generic Crypt settings
61: c0e3f4b = 61: c0e3f4b Ensure that ContentType is only updated after successful encryption/decryption
62: 086b633 = 62: 086b633 Refactor encryption of attachment content into the role, and move config
63: c7cfc5a = 63: c7cfc5a Switch to generic Crypt checks instead of GnuPG
64: 79e541e = 64: 79e541e All outgoing defaults should default to UseForOutgoing, not GnuPG
65: f44e951 = 65: f44e951 Fix a typo in a comment
66: 5dd001a = 66: 5dd001a Don't report unsafe permissions on gpg tests
67: bc0e44b = 67: bc0e44b One entity may have information about multiple crypt runs
68: 34ac88b = 68: 34ac88b Rename "bad data" template to not be GnuPG-specific
69: 7f3785e = 69: 7f3785e Move non-GPG specific docs to RT::Crypt
70: 82e3e61 = 70: 82e3e61 Wording fixes for RT::Crypt::GnuPG documentation
71: e854b0c = 71: e854b0c Add a 'configure' option to enable SMIME support
72: 782b13f = 72: 782b13f Add the skeleton of SMIME support, in RT::Crypt::SMIME
73: f751318 = 73: f751318 SMIME: Store the path to openssl in a configuration option
74: 7825d71 = 74: 7825d71 SMIME: probe for openssl existance, and smime subcommand
75: 5ccb49b = 75: 5ccb49b SMIME: part detection
76: 80e63c5 = 76: 80e63c5 SMIME: Format status into headers
77: f1b1536 = 77: f1b1536 SMIME: Read and parse key content from a Keyring directory
78: a5383fa = 78: a5383fa SMIME: Ensure that the keyring path is absolute, and exists
79: 2db873e = 79: 2db873e SMIME: Store user keys in a user column
80: d12d753 = 80: d12d753 SMIME: Message verification
81: f65e4ac = 81: f65e4ac SMIME: Import signing keys after verification
82: 02f5845 = 82: 02f5845 SMIME: Verifying the signing entity of SMIME certificates
83: 93df8fc = 83: 93df8fc SMIME: Allow an insecure mode which accepts untrusted certificates
84: 03df19e = 84: 03df19e SMIME: Document passphrase loading
85: fe3e256 = 85: fe3e256 Pass queue and actions into mail plugins, and thence to VerifyDecrypt
86: c56f040 = 86: c56f040 SMIME: Message decryption
87: 7acc2d8 = 87: 7acc2d8 SMIME: Testing keys and certificates
88: 3c3f958 = 88: 3c3f958 Factor out find_relocatable_path
89: c102a7f = 89: c102a7f SMIME: Add a testing module
90: b46b7d3 = 90: b46b7d3 SMIME: Test incoming mail verification and encryption
91: 37f1d2a = 91: 37f1d2a SMIME: Message signing and encryption
92: f289b2f = 92: f289b2f SMIME: If passphrase is empty, then don't provide -passin
93: 49fc5c4 = 93: 49fc5c4 SMIME: Test outgoing mail
94: 62a59a6 = 94: 62a59a6 SMIME: Test parsing of real mail
95: 01d750d = 95: 01d750d Always pass Top entity when we detecting crypto parts
96: a98efb3 = 96: a98efb3 SMIME: Improve recipient detection by examining all possibilities
97: b7c47ef = 97: b7c47ef SMIME: Be more verbose on how it looks for, and fails to find, private keys
98: 30be6a5 = 98: 30be6a5 SMIME: Encrypting and decrypting attachments in the database
99: 5186f9a = 99: 5186f9a Upgrade script for users of RT::Extension::SMIME and ::Crypt
100: b1ad243 = 100: b1ad243 Factor out sending templated errors for convenient future use
101: f7e861a = 101: f7e861a Add RejectOnUnencrypted to force all incoming messages to be encrypted
102: 70a3f5a = 102: 70a3f5a Allow encryption/signing of dashboards
103: 8982b44 = 103: 8982b44 Refactor common delegation code
104: 278b990 = 104: 278b990 Only GnuPG supports multiple private keys per user; restrict PrivateKey
105: 7a25437 = 105: 7a25437 SMIME: Admin interface for updating SMIME keys
106: 4bdeb9d = 106: 4bdeb9d /Admin/Users/GnuPG.html is no longer just GPG, but all secret keys
107: a100e31 = 107: a100e31 Rename GnuPG mason components to Crypt
108: da8523b = 108: da8523b Reword UI messages implying the GnuPG is the only form of encryption
109: d79a53c = 109: d79a53c Display Created and Expire dates in the user's preferred format by setting CurrentUser
110: bc4b1b1 = 110: bc4b1b1 On UIDs with neither expiration nor created dates (SMIME), skip the dates
111: ff42449 = 111: ff42449 Display GnuPG/SMIME issues box in yellow, much like results
112: 5750602 = 112: 5750602 Resolve SMIME/GnuPG inconsistency when asking for non-existent keys
113: ead85be ! 113: 9d6481c Visualize trust level of signing entity
@@ -88,7 +88,7 @@
+ return (0, "Couldn't get transaction of attachment #". $top->id);
+ }
+
-+ my $attachments = $txn->Messages->Clone;
++ my $attachments = $txn->Attachments->Clone;
+ $attachments->Limit( FIELD => 'ContentType', VALUE => 'application/x-rt-original-message' );
+ my $original = $attachments->First;
+ unless ( $original ) {
@@ -457,3 +457,34 @@
+.transaction .message-header-value.verify.done.trust-FULL { color: #060; }
+.transaction .message-header-value.verify.done.trust-FULLY { color: #060; }
+.transaction .message-header-value.verify.done.trust-ULTIMATE { color: #060; }
+
+diff --git a/t/web/ticket-create-utf8.t b/t/web/ticket-create-utf8.t
+--- a/t/web/ticket-create-utf8.t
++++ b/t/web/ticket-create-utf8.t
+@@
+ $m->submit;
+
+ $m->content_like(
+- qr{<td\s+class="message-header-value"[^>]*>\s*\Q$test_str\E\s*</td>}i,
++ qr{<td\s+class="message-header-value\s*"[^>]*>\s*\Q$test_str\E\s*</td>}i,
+ 'header on the page'
+ );
+
+@@
+ $m->submit;
+
+ $m->content_like(
+- qr{<td\s+class="message-header-value"[^>]*>\s*\Q$test_str\E\s*</td>}i,
++ qr{<td\s+class="message-header-value\s*"[^>]*>\s*\Q$test_str\E\s*</td>}i,
+ 'header on the page'
+ );
+ $m->content_contains(
+@@
+ $m->submit;
+
+ $m->content_like(
+- qr{<td\s+class="message-header-value"[^>]*>\s*\Q$test_str\E\s*</td>}i,
++ qr{<td\s+class="message-header-value\s*"[^>]*>\s*\Q$test_str\E\s*</td>}i,
+ 'header on the page'
+ );
+ $m->content_contains(
More information about the Rt-commit
mailing list