From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Vibhav Pant Newsgroups: gmane.emacs.devel Subject: [PATCH] Add support for custom user agent strings in url.el Date: Sun, 19 Jan 2014 13:40:35 +0530 Message-ID: <87k3dw5r44.fsf@cthulhu-p5kpl.lan> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1390119066 14553 80.91.229.3 (19 Jan 2014 08:11:06 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 19 Jan 2014 08:11:06 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Jan 19 09:11:13 2014 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1W4nTM-0002oS-Bb for ged-emacs-devel@m.gmane.org; Sun, 19 Jan 2014 09:11:12 +0100 Original-Received: from localhost ([::1]:45436 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W4nTL-0005A1-Qj for ged-emacs-devel@m.gmane.org; Sun, 19 Jan 2014 03:11:11 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:34245) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W4nTA-00059a-FH for emacs-devel@gnu.org; Sun, 19 Jan 2014 03:11:08 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1W4nT1-0000Rw-3T for emacs-devel@gnu.org; Sun, 19 Jan 2014 03:11:00 -0500 Original-Received: from mail-pb0-x22a.google.com ([2607:f8b0:400e:c01::22a]:44437) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W4nT0-0000Rq-Qn for emacs-devel@gnu.org; Sun, 19 Jan 2014 03:10:51 -0500 Original-Received: by mail-pb0-f42.google.com with SMTP id jt11so3731078pbb.29 for ; Sun, 19 Jan 2014 00:10:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:subject:user-agent:date:message-id:mime-version :content-type; bh=GdmOfufxfmvhCPruJuQ9S/L9zqQCpvWlZlGZE+Vcxio=; b=dBj/yQETE2jHbOAszAvjGh174bP6xi5CmUH0rMt8bt4vyfes2KDtvyVo1PjF6Is76w mi6uQoPHVFPWjKMG1TZHymfQupuJjQOw99jCOdS8yj9RawLeZTmtuuJWde6lFsdapZGf VSQ/vNYOAslW7MJm86CFZJT8SWUbtq6emVDRTz1cCyE4RuMCJsruaAUqSJLq7+obc6K3 wJaoaNtlxZA/lB4dTk+yeTsTkbKtCBuEDEXXhqmISxXhHoHecggHHTA+SKI8CeZarjUv HPDIL4yTx/CxCk9PgM57p+QdGgxMVCGIKuk6HnLDCZKdpaJwksrr3WdYZ2L7yBhgQCUg cuMg== X-Received: by 10.66.163.164 with SMTP id yj4mr11898962pab.91.1390119047927; Sun, 19 Jan 2014 00:10:47 -0800 (PST) Original-Received: from cthulhu-p5kpl.lan ([117.201.82.142]) by mx.google.com with ESMTPSA id vn10sm35219010pbc.21.2014.01.19.00.10.45 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 19 Jan 2014 00:10:47 -0800 (PST) User-agent: mu4e 0.9.9.5; emacs 24.3.50.1 X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2607:f8b0:400e:c01::22a X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:168724 Archived-At: -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 I added support to url.el for a custom user agent string by defining a variable url-custom-user-agent which contains a user-defined string. The variable is nil by default, in which case the function url-http-user-agent-string reutrns the default user agent. (Patch was created on a git repository) diff --git a/lisp/url/url-http.el b/lisp/url/url-http.el index ac2e140..1b63a25 100644 --- a/lisp/url/url-http.el +++ b/lisp/url/url-http.el @@ -214,11 +214,15 @@ request.") (and (listp url-privacy-level) (memq 'agent url-privacy-level))) "" - (format "User-Agent: %sURL/%s\r\n" - (if url-package-name - (concat url-package-name "/" url-package-version " ") - "") - url-version))) + + (if url-custom-user-agent + (format "User-Agent: %s\n" url-custom-user-agent) + + (format "User-Agent: %sURL/%s\r\n" + (if url-package-name + (concat url-package-name "/" url-package-version " ") + "") + url-version)))) (defun url-http-create-request (&optional ref-url) "Create an HTTP request for `url-http-target-url', referred to by REF-URL." diff --git a/lisp/url/url.el b/lisp/url/url.el index cbbcfd4..c54a94e 100644 --- a/lisp/url/url.el +++ b/lisp/url/url.el @@ -51,6 +51,10 @@ :type 'directory :group 'url) +(defvar url-custom-user-agent nil + "User Agent used by url-http-create-request to fetch pages. If nil, +the default user agent will be used.") + (defun url-do-setup () "Setup the URL package. This is to avoid conflict with user settings if URL is dumped with - -- Vibhav Pant vibhavp@gmail.com -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iQIcBAEBCgAGBQJS24fqAAoJEO86onTybWtcUdkP/2s5MGg3/zY/Xg8KmSxAU20x Ki0UamZHp5xNgr6UcN0SIseVGTTMBfJrwWL70LnslvvzRcPysRK0v+sOL4PjNcsT nkOU8BjsTt4HMFi48LPqhr+OacAFrMVT0E3vo0rtYoQSSw7tNgEprLUr3i2Yc1vY II23YllVdIqb6Ys6arYuMb5V5vP83GfnV9hm1jNSt3TGefSMsgDVggBRiw7NBk8Q pJqZ14rblX68V+b2cmw8JAzDkq7mWZ+s6CU/Ic4KI3a37k3kvoDwXwU8kCMVpP7Q aBK9VzSLlDzzLD+TZI7I7K5n6dA4He4BwwhFgQuUwOmoI5nF3W7y1gSOCL4sBOLF 5tqlRZFR+RJUDGabV6PoSux2K61sYegMN0NzzyrUCTPwqb9ISMNBfGfL0lp/QFuh ENxHmTnyO/J+FTIFAQ4Dbv4RYn5xxivgPp4UmYG3vin7b3E/+2jsOKdeQO/V5iBA 85XUKEdxH5JUergw0A9rsBvWkRw/iy89+edqg1hNJkWD8sSY+4H3QXGly63mQzdc 51QWCwAJ1ShPif8RI9yD1Eyvctoasv+WM42NakCZ7bDUOwuHqJfAAEVbQeg9ijn9 EynM7n5CmAAap6vrjdeNWJvxPWPXv32UHSsstOAN7MPgd9Cw6gZvfYY4DITHqWbe BykRZe2zqv4iIlgL87Rg =8VAL -----END PGP SIGNATURE-----