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] ERC: support for IRCv3.1 CAP Date: Tue, 21 Jun 2016 12:56:06 +0530 Message-ID: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=001a1147af520f13f90535c4bc76 X-Trace: ger.gmane.org 1466494035 7554 80.91.229.3 (21 Jun 2016 07:27:15 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 21 Jun 2016 07:27:15 +0000 (UTC) To: "emacs-devel@gnu.org" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jun 21 09:27:14 2016 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 1bFG5V-0007K8-7m for ged-emacs-devel@m.gmane.org; Tue, 21 Jun 2016 09:27:09 +0200 Original-Received: from localhost ([::1]:49370 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bFG5U-0002wt-Bg for ged-emacs-devel@m.gmane.org; Tue, 21 Jun 2016 03:27:08 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:55281) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bFG4Y-0002v4-Pb for emacs-devel@gnu.org; Tue, 21 Jun 2016 03:26:11 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bFG4X-0006zK-Cm for emacs-devel@gnu.org; Tue, 21 Jun 2016 03:26:10 -0400 Original-Received: from mail-qk0-x22a.google.com ([2607:f8b0:400d:c09::22a]:35851) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bFG4X-0006ym-7Y for emacs-devel@gnu.org; Tue, 21 Jun 2016 03:26:09 -0400 Original-Received: by mail-qk0-x22a.google.com with SMTP id p10so9502723qke.3 for ; Tue, 21 Jun 2016 00:26:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:from:date:message-id:subject:to; bh=+vW596BjJ5lJgSL/0ffzV9Fh70rgT37H3Wdy3lTkpSE=; b=jSGLd/XHVOuEHVRQcV/klDeGNRv1QMtEjGTwQGExCGDFp6e7BWVNoUSH6PUijXUfba /VsVK7mjPZ+86MsiJjmQhLffrfFSpuj+3DHknw2oyL5STAXe77p+dQDA5SigHgfA2hrC U/kn7xW0aoUu6ub3GB+xSn78veTcxHXKhqvSC4W/7TOA+EUHKlBTuJCgg1fmUciCkdop a3YmI+LyzjApOYBr6Cr6Cbj/c7guKbl7wEg6nVdjiKz0yQeL0WgBZuDNtZTlrSAkaI4J 5NptiZp3YjNJroGvCMK/ZTlCKDFOdqCXOel77uZvP4xw/6nm5PJVsrTCpqeb6gYLFYPn QoIQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=+vW596BjJ5lJgSL/0ffzV9Fh70rgT37H3Wdy3lTkpSE=; b=D0nWcq18eh5xI3greH4JyZiAvFhl7WN0HnrPLtp7+qRSr1K3Q6dfqOObevvjLrVlqR 3Mb7ZgelOw2rwO0CqNSr7vo4j0kdVrGCjboOThq6v3gmP1ftGlmIBrjKmJIP8+aW18sD I7mdMFjr5zN/CbM1oX7Sr5U/t+KWziCeZAyMfjTSuOPZEd38N3jX/zDscb6nQVxuxeKF rGwPtd7zYl/A7/NjwovJGQGmR8Wd+UZLVNsRpfynDiPeJIQGm/2CD9O0sIINrmHIuUZ8 MnyzNlWmM1Gag8/BH9P2ZkNVVW9RdntlG1A7qYwO9C7ainysixUdX6oUP8q3emUZfOgf iCuw== X-Gm-Message-State: ALyK8tKaBG3OFcWNTM1ZgpPKK8OUTKwrdpCs6+IpZK8FikZpAB3d4a1TprEgcwOdNdPvXG84rMApOyrMMU89dg== X-Received: by 10.55.41.79 with SMTP id p76mr25975961qkh.120.1466493968508; Tue, 21 Jun 2016 00:26:08 -0700 (PDT) Original-Received: by 10.140.81.179 with HTTP; Tue, 21 Jun 2016 00:26:06 -0700 (PDT) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2607:f8b0:400d:c09::22a X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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" Xref: news.gmane.org gmane.emacs.devel:204635 Archived-At: --001a1147af520f13f90535c4bc76 Content-Type: text/plain; charset=UTF-8 The IRCv3.1 specification adds the CAP command, allowing client/servers to enable/disable certain capabilities. The following patch adds the CAP command, and the response handler for CAP LS, LIST, REQ, ACK, NAK and error 410 (ERR_INVALIDCAPCMD) messages. Thanks, Vibhav -- Vibhav Pant vibhavp@gmail.com --001a1147af520f13f90535c4bc76 Content-Type: text/plain; charset=US-ASCII; name="cap.diff" Content-Disposition: attachment; filename="cap.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_ipp4muem0 ZGlmZiAtLWdpdCBhL2xpc3AvZXJjL2VyYy1iYWNrZW5kLmVsIGIvbGlzcC9lcmMvZXJjLWJhY2tl bmQuZWwKaW5kZXggYmJiN2NjYi4uM2ZlMjUyYSAxMDA2NDQKLS0tIGEvbGlzcC9lcmMvZXJjLWJh Y2tlbmQuZWwKKysrIGIvbGlzcC9lcmMvZXJjLWJhY2tlbmQuZWwKQEAgLTE1MjgsNiArMTUyOCwz MSBAQCBlcmMtaGFuZGxlLXVua25vd24tc2VydmVyLXJlc3BvbnNlCiAgICAgICAgcGFyc2VkICdu b3RpY2UgbmlsCiAgICAgICAgJ1dBTExPUFMgP24gbmljayA/bSBtZXNzYWdlKSkpKQogCisoZGVm aW5lLWVyYy1yZXNwb25zZS1oYW5kbGVyIChDQVApCisgICJjYXBhYmlsaXRpZXMiIG5pbAorICAo bGV0ICgoc3ViY21kIChudGggMSAoZXJjLXJlc3BvbnNlLmNvbW1hbmQtYXJncyBwYXJzZWQpKSkp CisgICAgKGNvbmQKKyAgICAgKChzdHJpbmctZXF1YWwgc3ViY21kICJMUyIpCisgICAgICAoZXJj LWRpc3BsYXktbWVzc2FnZQorICAgICAgIHBhcnNlZCAnbm90aWNlIG5pbAorICAgICAgICdDQVBM UyA/YyAoc3RyaW5nLWpvaW4KKyAgICAgICAgICAgICAgICAgIChjZGRyIChlcmMtcmVzcG9uc2Uu Y29tbWFuZC1hcmdzIHBhcnNlZCkpICIgIikpKQorICAgICAoKHN0cmluZy1lcXVhbCBzdWJjbWQg IkxJU1QiKQorICAgICAgKGVyYy1kaXNwbGF5LW1lc3NhZ2UKKyAgICAgICBwYXJzZWQgJ25vdGlj ZSBuaWwKKyAgICAgICAnQ0FQTElTVCA/YyAoc3RyaW5nLWpvaW4KKyAgICAgICAgICAgICAgICAg ICAgKGNkZHIgKGVyYy1yZXNwb25zZS5jb21tYW5kLWFyZ3MgcGFyc2VkKSkgIiAiKSkpCisgICAg ICgoc3RyaW5nLWVxdWFsIHN1YmNtZCAiQUNLIikKKyAgICAgIChlcmMtZGlzcGxheS1tZXNzYWdl CisgICAgICAgcGFyc2VkICdub3RpY2UgbmlsCisgICAgICAgJ0NBUEFDSyA/YyAoc3RyaW5nLWpv aW4KKyAgICAgICAgICAgICAgICAgICAoY2RkciAoZXJjLXJlc3BvbnNlLmNvbW1hbmQtYXJncyBw YXJzZWQpKSAiICIpKSkKKyAgICAgKChzdHJpbmctZXF1YWwgc3ViY21kICJOQUsiKQorICAgICAg KGVyYy1kaXNwbGF5LW1lc3NhZ2UKKyAgICAgICBwYXJzZWQgJyhub3RpY2UgZXJyb3IpIG5pbAor ICAgICAgICdDQVBOQUsgP2MgKHN0cmluZy1qb2luCisgICAgICAgICAgICAgICAgICAgKGNkZHIg KGVyYy1yZXNwb25zZS5jb21tYW5kLWFyZ3MgcGFyc2VkKSkgIiAiKSkpKSkpCisKIChkZWZpbmUt ZXJjLXJlc3BvbnNlLWhhbmRsZXIgKDAwMSkKICAgIlNldCBgZXJjLXNlcnZlci1jdXJyZW50LW5p Y2snIHRvIHJlZmxlY3Qgc2VydmVyIHNldHRpbmdzIGFuZCBkaXNwbGF5IHRoZSB3ZWxjb21lIG1l c3NhZ2UuIgogICBuaWwKQEAgLTIwMTIsNiArMjAzNywxMSBAQCBlcmMtc2VydmVyLTMyMi1tZXNz YWdlCiAgICAgKGVyYy1kaXNwbGF5LW1lc3NhZ2UgcGFyc2VkICdub3RpY2UgJ2FjdGl2ZSAnczY3 MQogICAgICAgICAgICAgICAgICAgICAgICAgID9uIG5pY2sgP2Egc2VjdXJlbXNnKSkpCiAKKyhk ZWZpbmUtZXJjLXJlc3BvbnNlLWhhbmRsZXIgKDQxMCkKKyAgIkludmFsaWQgQ0FQIHN1YmNvbW1h bmQiIG5pbAorICAoZXJjLWRpc3BsYXktbWVzc2FnZSBwYXJzZWQgJyhub3RpY2UgZXJyb3IpIG5p bCAnczQxMAorICAgICAgICAgICAgICAgICAgICAgICA/YyAobnRoIDEgKGVyYy1yZXNwb25zZS5j b21tYW5kLWFyZ3MgcGFyc2VkKSkpKQorCiAoZGVmaW5lLWVyYy1yZXNwb25zZS1oYW5kbGVyICg0 MzEgNDQ1IDQ0NiA0NTEgNDYyIDQ2MyA0NjQgNDgxIDQ4MyA0ODQgNDg1CiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgNDkxIDUwMSA1MDIpCiAgIDs7IDQzMSAtIE5vIG5pY2tuYW1l IGdpdmVuCmRpZmYgLS1naXQgYS9saXNwL2VyYy9lcmMuZWwgYi9saXNwL2VyYy9lcmMuZWwKaW5k ZXggODUwMWUyYy4uNzJiNTJkMCAxMDA2NDQKLS0tIGEvbGlzcC9lcmMvZXJjLmVsCisrKyBiL2xp c3AvZXJjL2VyYy5lbApAQCAtMzgzMiw2ICszODMyLDM1IEBAIGVyYy1jbWQtTUFTU1VOQkFOCiAK IChkZWZhbGlhcyAnZXJjLWNtZC1NVUIgJ2VyYy1jbWQtTUFTU1VOQkFOKQogCisoZGVmdW4gZXJj LWNhcC1jb21tYW5kIChjbWQgcGFyYW0pCisgIChlcmMtc2VydmVyLXNlbmQKKyAgIChmb3JtYXQg IkNBUCAlcyAlcyIgY21kCisgICAgICAgICAgIChpZiAoPSAobGVuZ3RoIHBhcmFtKSAwKSAobnRo IDAgcGFyYW0pCisgICAgICAgICAgICAgKGNvbmNhdCAiOiIgKHN0cmluZy1qb2luIHBhcmFtICIg IikpKSkpCisgIChlcmMtc2VydmVyLXNlbmQgIkNBUCBFTkQiKSkKKworKGRlZnVuIGVyYy1jbWQt Q0FQIChzdWJjbWQgJnJlc3QgcGFyYW1zKQorICAiSVJDdjMgQ2FwYWJpbGl0eSBuZWdvdGF0aW9u LgorCisvY2FwIFJFUSBQQVJBTVMgcmVxdWVzdHMgYSB0aGUgc2VydmVyIHRvIGVuYWJsZSBjYXBh YmlsaXRpZXMgUEFSQU1TLgorQ2FwYWJpbGl0aWVzIHByZWZpeGVkIHdpdGggJy0nIGFyZSBkaXNh YmxlZC4KKworL2NhcCBBQ0sgUEFSQU1TIGFja25vd2xlZGdlcyBhIGNoYW5nZSBmb3IgY2FwYWJp bGl0aWVzIFBBUkFNUy4gIENhcGFiaWxpdGllcworcHJlZml4ZWQgd2l0aCAnLScgYXJlIGFja25v d2xlZGdlZCBhcyBkaXNhYmxlZC4KKworL2NhcCBMUyBsaXN0cyBjYXBhYmlsaXRpZXMgc3VwcG9y dGVkIGJ5IHRoZSBzZXJ2ZXIuCisKKy9jYXAgTElTVCBsaXN0cyBjYXBhYmlsaXRpZXMgYXNzb2Np YXRlZCB3aXRoIHRoaXMgY29ubmVjdGlvbi4KKworL2NhcCBFTkQgZW5kcyBjYXBhYmlsaXR5IG5l Z290aWF0aW9uLiIKKyAgKGNvbmQKKyAgICgoc3RyaW5nPSAiUkVRIiAodXBjYXNlIHN1YmNtZCkp CisgICAgKGVyYy1jYXAtY29tbWFuZCAiUkVRIiBwYXJhbXMpKQorICAgKChzdHJpbmc9ICJBQ0si ICh1cGNhc2Ugc3ViY21kKSkKKyAgICAoZXJjLWNhcC1jb21tYW5kICJBQ0siIHBhcmFtcykpCisg ICAodCAoZXJjLXNlcnZlci1zZW5kIChmb3JtYXQgIkNBUCAlcyAlcyIgKHVwY2FzZSBzdWJjbWQp CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHN0cmluZy1qb2luIHBhcmFtcyAiICIp KSkpKSkKKwogOzs7OyBFbmQgb2YgSVJDIGNvbW1hbmRzCiAKIChkZWZ1biBlcmMtZW5zdXJlLWNo YW5uZWwtbmFtZSAoY2hhbm5lbCkKQEAgLTY1NDQsNiArNjU3MywxMCBAQCBlcmMtZGVmaW5lLWNh dGFsb2cKICAgICh1bmRlZmluZWQtY3RjcCAuICJVbmRlZmluZWQgQ1RDUCBxdWVyeSByZWNlaXZl ZC4gU2lsZW50bHkgaWdub3JlZCIpCiAgICAodmFyaWFibGUtbm90LWJvdW5kIC4gIlZhcmlhYmxl IG5vdCBib3VuZCEiKQogICAgKEFDVElPTiAuICIqICVuICVhIikKKyAgIChDQVBBQ0sgLiAiQ2Fw YWJpbGl0eSBjaGFuZ2UgYWNrbm93bGVkZ2VkOiAlYyIpCisgICAoQ0FQTFMgLiAiQ2FwYWJpbGl0 aWVzIHN1cHBvcnRlZCBieSB0aGUgc2VydmVyOiAlYyIpCisgICAoQ0FQTElTVCAuICJDYXBhYmls aXRpZXMgYWN0aXZlIG9uIHRoaXMgY29ubmVjdGlvbjogJWMiKQorICAgKENBUE5BSyAuICJDYXBh YmlsaXR5IGNoYW5nZSB3YXMgcmVqZWN0ZWQgZm9yOiAlYyIpCiAgICAoQ1RDUC1DTElFTlRJTkZP IC4gIkNsaWVudCBpbmZvIGZvciAlbjogJW0iKQogICAgKENUQ1AtRUNITyAuICJFY2hvICVuOiAl bSIpCiAgICAoQ1RDUC1GSU5HRVIgLiAiRmluZ2VyIGluZm8gZm9yICVuOiAlbSIpCkBAIC02NjA5 LDYgKzY2NDIsNyBAQCBlcmMtZGVmaW5lLWNhdGFsb2cKICAgIChzNDA0ICAgLiAiJWM6IENhbm5v dCBzZW5kIHRvIGNoYW5uZWwiKQogICAgKHM0MDUgICAuICIlYzogWW91IGhhdmUgam9pbmVkIHRv byBtYW55IGNoYW5uZWxzIikKICAgIChzNDA2ICAgLiAiJW46IFRoZXJlIHdhcyBubyBzdWNoIG5p Y2tuYW1lIikKKyAgIChzNDEwICAgLiAiSW52YWxpZCBDQVAgc3ViY29tbWFuZDogJWMiKQogICAg KHM0MTIgICAuICJObyB0ZXh0IHRvIHNlbmQiKQogICAgKHM0MjEgICAuICIlYzogVW5rbm93biBj b21tYW5kIikKICAgIChzNDMxICAgLiAiTm8gbmlja25hbWUgZ2l2ZW4iKQo= --001a1147af520f13f90535c4bc76--