<http://bugzilla.mozilla.org/show_bug.cgi?id=136141>

Current status
In bug 45565 <http://bugzilla.mozilla.org/show_bug.cgi?id=45565>, I implemented the 
(hidden) pref general.useragent.override to set
the complete UA string of Mozilla. See
<http://bugzilla.mozilla.org/show_bug.cgi?id=45565#c10> for the reasons. It was
intended to mask as e.g. Navigator 4.x Mac or as "You'll never know" (courtesy
of mat).

Now, I have to notice that most users abuse the pref to mask as MSIE.


Reason to change 1
Because webmasters code for the popular browsers, this causes more MSIE-only
sites, the thing we are trying to fight with Mozilla. It is true that you might
still be able to see that it's really a Mozilla, but webmasters stupid enough to
code MSIE-only sites are very likely to be stupid enough to just count that as
MSIE. They are also likely to believe statistics from e.g. StatMarket, which
seems to have an interest in publishing MSIE-biased numbers, judging from their
results. So, even if you use a UA string like "Mozilla/4.0 (compatible; MSIE)
Gecko/20020401", you are giving Microsoft armor to claim high stats for MSIE.

In other words, a user with a Mozilla masking as MSIE is almost as good for us
as an MSIE user.

We are here for a reason. While some user might just want to browse, we want to
propagate standards. The user has a right to control his software, but we have
some right to try to achieve our goals, too. The user still has the source.. *g*


Reason to change 2
Mozilla holds standards relatively high. We intentionally have no document.all,
although that would probably be easy to implement and would dramatically
increase compatibility. We chose long-term goals (standards-compliant web) over
short-term goals (visit that crap site). I think we should do the same here.


Proposed change
In the C++ backend, in the pref processing code, search for MSIE-identifying
strings like "MSIE". If the pref contains that, ignore the pref, i.e. use the
standard Mozilla UA string.


Impact
That would prevent users from masking Mozilla as MSIE, but would still allow to
mask as alternative browsers or write random nonsense in the string.
Execution-time impact on non-users of the hidden pref is 0.


Additional Comments
It can be argued that masking as Navigator 4.x is not helpful for a
standards-compliant web either. We might want to prevent that, too. The user
still has e.g. Opera left to mask as different, relatively popular,
standards-compliant and full-featured browser for security reasons.

I fully expect this change to be controversial.



Reply via email to