Remove CMS support from Firefox builds of PSM

RESOLVED FIXED in mozilla33

Status

()

enhancement
RESOLVED FIXED
9 years ago
5 years ago

People

(Reporter: briansmith, Assigned: briansmith)

Tracking

({addon-compat})

unspecified
mozilla33
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [psm-arch])

Attachments

(1 attachment)

The CMS interfaces (nsICMS*) appear to be unused except for one extension that adds/added GPG support for Gmail. When I investigated reductions in NSS size and statically linking NSS, I noticed that these interfaces and the supporting infrastructure account for a little bit less than 100KB of object code (mostly in smime3.dll) in release builds. I am not sure if this is a good or bad idea yet but I am filing the bug so we have a place for discussion of this issue.

Removing these interfaces wouldn't completely eliminate the S/MIME library dependency because there are still two (IIRC) functions that are needed for reasons other than CMS support. And, these functions are used in Thunderbird so this would have to be done in Firefox-specific way. For example, we could move these interfaces into some place in comm-central.

Another consideration is that maybe it would be acceptable to remove these interfaces for Firefox Mobile but not desktop Firefox.
We shouldn't easily remove things that people may rely on.

Instead of removing, at most, I'd propose to make things more modular, so it can be some kind of build time option whether or not you'd get the features.
Whiteboard: [psm-arch]
Assignee: nobody → brian
Target Milestone: --- → mozilla33
Status: NEW → ASSIGNED
Comment on attachment 8441115 [details] [diff] [review]
remove-CMS.patch

Review of attachment 8441115 [details] [diff] [review]:
-----------------------------------------------------------------

Best patch ever.
Attachment #8441115 - Flags: review?(dkeeler) → review+
https://hg.mozilla.org/mozilla-central/rev/90b838762663
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Depends on: 1028178
Oh, shoot. This broke my securemail extension... What's the migration path here?
(In reply to ben turner [:bent] (use the needinfo? flag!) from comment #7)
> Oh, shoot. This broke my securemail extension... What's the migration path
> here?

Hi Ben. Your extension is used primarily for reading secure bugmail from webmail interfaces, right? Do you think it would be overtly troublesome to switch from S/MIME to PGP/GPG for your bugmail? If switching to PGP/GPG is reasonable to you, then consider using openpgp.js/opengpg.js in your extension.

For other extensions, I recommend switching to the operating-system-provided S/MIME interfaces.

As a last resort, import the removed XPCOM components into the extension as binary components. Note that the NSS CMS and S/MIME functionality that these interfaces require will likely be removed from Gecko soon too, though.
Depends on: 1028683
Hey Brian,

So this patch has fully broken comm-central, and we're in the midst of spinning up our next major release (Thunderbird 31).

Is it critical for this patch to land this cycle, or can it be backed out and re-landed at the start of the next one? If the latter, I think that'd be much preferred - it'd allow us time to get TB31 out the door, and then we can focus on getting this CMS stuff properly integrated under mailnews. If not, we're going to have a closed tree and no daily builds for probably weeks as we polish up our betas. :/

Thoughts?

-Mike
Flags: needinfo?(brian)
(In reply to Mike Conley (:mconley) from comment #10)
> Is it critical for this patch to land this cycle, or can it be backed out
> and re-landed at the start of the next one? If the latter, I think that'd be
> much preferred - it'd allow us time to get TB31 out the door, and then we
> can focus on getting this CMS stuff properly integrated under mailnews. If
> not, we're going to have a closed tree and no daily builds for probably
> weeks as we polish up our betas. :/

I reviewed and provided fixes for the patches in bug 1027241, so with the patches from bug 1027241, comm-central now builds (at least for me, locally, on Windows). I didn't test anything though, but it should probably work OK. Let's try to get bug 1027241 fixed so both comm-central and mozilla-central can move forward without any backtracking.
Flags: needinfo?(brian)
It will be still left something to be removed in Firefox to make it like Chrome?
Am very sorry that you remove the most specific is valid in Firefox.
Is is ridiculous to remove a special and precious feature to save 100KiB size decrease!!!
You need to log in before you can comment on or make changes to this bug.