From: Charles Lindsey (chl@clw.cs.man.ac.uk)
Date: Mon Nov 11 2002 - 14:59:32 CST
Here is my new text for User-Agent. The tokens use for products are now
ASCII-only. If the name of your product involves non-ASCII characters,
then you are invited to put its full name in a following comment (in raw
UTF-8 or in RFC 2047 as things stand).
Both old and new texts are shown.
Suggestions for a suitable product with an "interesting" usage of RFC
2047 for use in the examples would be welcomed.
6.18. User-Agent
The User-Agent-header contains information about the user agent
(typically a newsreader) generating the article, for statistical
purposes and tracing of standards violations to specific software
needing correction. Although not one of the mandatory headers,
posting agents SHOULD normally include it.
header =/ User-Agent-header
User-Agent-header = "User-Agent" ":" SP User-Agent-content
*( ";" other-parameter )
User-Agent-content = product-token *( CFWS product-token )
product-token = value [ "/" product-version ] ; see 4.1
product-version = value
This header MAY contain multiple product-tokens identifying the agent
and any subproducts which form a significant part of the posting
agent, listed in order of their significance for identifying the
application. Product-tokens should be short and to the point - they
MUST NOT be used for information beyond the canonical name of the
product and its version. Injecting agents MAY include product
information for themselves (such as "INN/1.7.2"), but relaying and
serving agents MUST NOT generate or modify this header to list
themselves.
NOTE: Variations from [RFC 2616] which describes a similar
facility for the HTTP protocol:
1. use of arbitrary text or octets from character sets other
than US-ASCII in a product-token may require the use of a
quoted-string,
2. "{" and "}" are allowed in a value (product-token and
product-version) in Netnews,
3. UTF-8 replaces ISO-8859-1 as charset assumption.
NOTE: Comments should be restricted to information regarding the
product named to their left such as platform information and
should be concise. Use as an advertising medium (in the mundane
sense) is discouraged.
[New version]
The User-Agent-header contains information about the user agent
(typically a newsreader) generating the article, for statistical
purposes and tracing of standards violations to specific software
needing correction. Although not one of the mandatory headers,
posting agents SHOULD normally include it. It is also intended that
this header be suitable for use in Email.
header =/ User-Agent-header
User-Agent-header = "User-Agent" ":" SP User-Agent-content
*( ";" other-parameter )
User-Agent-content = product *( CFWS product )
product = [CFWS] token [CFWS] [ "/" product-version ]
product-version = [CFWS] token [CFWS]
This header MAY contain multiple product-tokens identifying the agent
and any subproducts which form a significant part of the posting
agent, listed in order of their significance for identifying the
application. Product-tokens should be short and to the point - they
MUST NOT be used for information beyond the canonical name of the
product and its version. Injecting agents MAY include product
information for themselves (such as "INN/1.7.2"), but relaying and
serving agents MUST NOT generate or modify this header to list
themselves.
NOTE: A product, being composed of a token, can contain only
US-ASCII characters. Where the full name of an agent is
expressed in a language requiring non-ASCII characters, it is
suggested that an arbitrary (but easily recognizable) US_ASCII
token be provided, followed by the full name in the form of a
comment.
NOTE: Minor variations from [RFC 2616] which describes a similar
facility for the HTTP protocol:
1. "{" and "}" are allowed in a token (product and product-
version) in Netnews,
2. Comments are permitted wherever whitespace is allowed.
NOTE: Comments should be restricted to information regarding the
product named to their left, such as its full name or platform
information, and should be concise. Use as an advertising medium
(in the mundane sense) is discouraged.
6.18.1. Examples
User-Agent: tin/1.2-PL2
User-Agent: tin/1.3-950621beta-PL0 (Unix)
User-Agent: tin/unoff-1.3-BETA-970813 (UNIX) (Linux/2.0.30 (i486))
User-Agent: tin/pre-1.4-971106 (UNIX) (Linux/2.0.30 (i486))
User-Agent: Mozilla/4.02b7 (X11; I; en; HP-UX B.10.20 9000/712)
User-Agent: Microsoft-Internet-News/4.70.1161
User-Agent: Gnus/5.4.64 XEmacs/20.3beta17 ("Bucharest")
User-Agent: Pluto/1.05h (RISC-OS/3.1) NewsHound/1.30
User-Agent: inn/1.7.2
User-Agent: telnet
NOTE: This header supersedes the role performed redundantly by
experimental headers such as X-Newsreader, X-Mailer, X-Posting-
Agent, X-Http-User-Agent, and other headers previously used on
Usenet for this purpose. Use of these experimental headers
SHOULD be discontinued in favor of the single, standard User-
Agent-header which can be used freely both in Netnews and Email
(except that non-ASCII characters would be inappropriate in
email).
[New version]
NOTE: This header supersedes the role performed redundantly by
experimental headers such as X-Newsreader, X-Mailer, X-Posting-
Agent, X-Http-User-Agent, and other headers previously used on
Usenet and in Email for this purpose. Use of these experimental
headers SHOULD be discontinued in favor of the single, standard
User-Agent-header.
Charles H. Lindsey ---------At Home, doing my own thing------------------------
Tel: +44 161 436 6131 Fax: +44 161 436 6133 Web: http://www.cs.man.ac.uk/~chl
Email: chl@clw.cs.man.ac.uk Snail: 5 Clerewood Ave, CHEADLE, SK8 3JU, U.K.
PGP: 2C15F1A9 Fingerprint: 73 6D C2 51 93 A0 01 E7 65 E8 64 7E 14 A4 AB A5