[webkit-dev] UA string changes blog draft

Peter Kasting pkasting at google.com
Fri Mar 25 12:07:11 PDT 2011


On Fri, Mar 25, 2011 at 11:44 AM, Peter Kasting <pkasting at google.com> wrote:

> I've incorporated all the existing feedback into the draft.  Feel free to
> take another look.


Since some folks seem to be unable to see the draft even while logged in,
here's the new fulltext.

PK

---

User Agent String Changes On WebKit
Trunk<http://www.webkit.org/blog/?p=1580>Posted
by *Peter Kasting* on Friday, March 25th, 2011 at 11:44 am

Recently some changes to the User Agent (UA)
string<https://bugs.webkit.org/show_bug.cgi?id=54556> have
landed. These changes are designed to add UA string detail, remove
redundancy, and increase compatibility with Internet Explorer, and are
happening in conjunction with similar changes in Firefox
4<http://hacks.mozilla.org/2010/09/final-user-agent-string-for-firefox-4/>
.

Here are a few sample pre-change UA strings:

Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US) AppleWebKit/533.19.4 (KHTML,
like Gecko) Version/5.0.3 Safari/533.19.4

Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_7; en-us) AppleWebKit/534.16+
(KHTML, like Gecko) Version/5.0.3 Safari/533.19.4

Here are the equivalent post-change UA strings:

Mozilla/5.0 (Windows NT 6.0; WOW64) AppleWebKit/534.24 (KHTML, like Gecko)
Version/5.0.3 Safari/534.24

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_7) AppleWebKit/534.24 (KHTML,
like Gecko) Version/5.0.3 Safari/534.24

In detail, the differences are as follows:

   1. On Windows, the initial “Windows;” platform identifier has been
   removed. This was redundant with the subsequent OS version identifier, and
   is more compatible with Internet Explorer, whose UA string doesn’t have this
   initial token.
   2. The “U” SSL encryption strength token has been removed. This token
   dates from more than a decade ago, when U.S. export laws limited the
   encryption strength that could be built into software shipped to various
   other countries; the valid values are “U” (for “USA” 128-bit encryption
   support), “I” (for “International” 40-bit encryption support), and “N”
   (for “None”, no encryption support). These days, it’s unusual to ship
   without 128-bit SSL support everywhere; ports can add “I” or “N” if
   necessary.
   3. On 64-bit versions of Windows, tokens have been added after the OS
   version. 32-bit builds running on 64-bit Windows have added “WOW64”.
   (“WOW64” stands for “Windows 32-bit On Windows 64-bit” and is the name
   Microsoft gives its 32-bit compatibility subsystem.) 64-bit native builds
   use “Win64; x64” for x64-based processors and “Win64; IA64” for Itanium
   systems. These tokens are useful for sites that need to provide download
   links for native executables, and match what Internet Explorer uses.
   4. The locale has been removed. Web authors who want to know what
   languages a browser supports should use the HTTP Accept-Language header
   instead, which can supply multiple locales.
   5. Windows CE builds of Qt-based ports should report the OS version
   slightly more accurately (e.g. “Windows CE 5.1” instead of “Windows CE 5.x”
   or “Windows 5.1”).

As various ports ship these changes, you might notice web compatibility
problems.  If so, please point webmasters to this post, and/or file bugs in the
bug tracker <http://bugs.webkit.org/>.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-dev/attachments/20110325/0f7f3a5d/attachment.html>


More information about the webkit-dev mailing list