all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* rcirc update: allow sending a server password when connecting
@ 2010-05-06  1:02 Ryan Yeske
  2010-05-06  6:51 ` Deniz Dogan
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Ryan Yeske @ 2010-05-06  1:02 UTC (permalink / raw)
  To: emacs-devel


2010-05-01  Ryan Yeske  <rcyeske@gmail.com>

	* net/rcirc.el (rcirc-default-user-name): Change to "user".
	(rcirc-default-full-name): Change to "unknown".
	(rcirc-user-name-history): Add variable.
	(rcirc): When prompting for connection paramaters, also prompt for
	username and password.
	(rcirc-connect): Take a PASS argument.  If PASS is non-nil, send
	value to server when connecting.




=== modified file 'lisp/net/rcirc.el'
--- lisp/net/rcirc.el	2010-01-13 08:35:10 +0000
+++ lisp/net/rcirc.el	2010-05-06 00:59:16 +0000
@@ -85,6 +85,10 @@
 VALUE must be a string.  If absent, `rcirc-default-full-name' is
 used.
 
+`:pass'
+
+VALUE must be a string.
+
 `:channels'
 
 VALUE must be a list of strings describing which channels to join
@@ -95,6 +99,7 @@
 					     (:port integer)
 					     (:user-name string)
 					     (:full-name string)
+					     (:pass string)
 					     (:channels (repeat string)))))
   :group 'rcirc)
 
@@ -108,14 +113,12 @@
   :type 'string
   :group 'rcirc)
 
-(defcustom rcirc-default-user-name (user-login-name)
+(defcustom rcirc-default-user-name "user"
   "Your user name sent to the server when connecting."
   :type 'string
   :group 'rcirc)
 
-(defcustom rcirc-default-full-name (if (string= (user-full-name) "")
-				       rcirc-default-user-name
-				     (user-full-name))
+(defcustom rcirc-default-full-name "unknown"
   "The full name sent to the server when connecting."
   :type 'string
   :group 'rcirc)
@@ -369,6 +372,9 @@
 (defvar rcirc-nick-name-history nil
   "History variable for \\[rcirc] call.")
 
+(defvar rcirc-user-name-history nil
+  "History variable for \\[rcirc] call.")
+
 ;;;###autoload
 (defun rcirc (arg)
   "Connect to all servers in `rcirc-server-alist'.
@@ -393,6 +399,12 @@
 				(or (plist-get server-plist :nick)
 				    rcirc-default-nick)
 				'rcirc-nick-name-history))
+	     (user-name (read-string "IRC Username: "
+                                     (or (plist-get server-plist :user-name)
+                                         rcirc-default-user-name)
+                                     'rcirc-user-name-history))
+	     (pass (read-passwd "IRC Password: " nil
+				(plist-get server-plist :pass)))
 	     (channels (split-string
 			(read-string "IRC Channels: "
 				     (mapconcat 'identity
@@ -400,7 +412,7 @@
 							   :channels)
 						" "))
 			"[, ]+" t)))
-	(rcirc-connect server port nick rcirc-default-user-name
+	(rcirc-connect server port nick user-name pass
 		       rcirc-default-full-name
 		       channels))
     ;; connect to servers in `rcirc-server-alist'
@@ -411,6 +423,7 @@
 	      (port (or (plist-get (cdr c) :port) rcirc-default-port))
 	      (user-name (or (plist-get (cdr c) :user-name)
 			     rcirc-default-user-name))
+              (pass (plist-get (cdr c) :pass))
 	      (full-name (or (plist-get (cdr c) :full-name)
 			     rcirc-default-full-name))
 	      (channels (plist-get (cdr c) :channels)))
@@ -421,7 +434,7 @@
 		  (setq connected p)))
 	      (if (not connected)
 		  (condition-case e
-		      (rcirc-connect server port nick user-name
+		      (rcirc-connect server port nick user-name pass
 				     full-name channels)
 		    (quit (message "Quit connecting to %s" server)))
 		(with-current-buffer (process-buffer connected)
@@ -453,8 +466,8 @@
 (defvar rcirc-process nil)
 
 ;;;###autoload
-(defun rcirc-connect (server &optional port nick user-name full-name
-			     startup-channels)
+(defun rcirc-connect (server &optional port nick user-name pass
+                             full-name startup-channels)
   (save-excursion
     (message "Connecting to %s..." server)
     (let* ((inhibit-eol-conversion)
@@ -503,10 +516,11 @@
       (add-hook 'auto-save-hook 'rcirc-log-write)
 
       ;; identify
+      (when pass
+        (rcirc-send-string process (concat "PASS " pass)))
       (rcirc-send-string process (concat "NICK " nick))
       (rcirc-send-string process (concat "USER " user-name
-                                      " hostname servername :"
-                                      full-name))
+                                         " 0 * :" full-name))
 
       ;; setup ping timer if necessary
       (unless rcirc-keepalive-timer





^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2010-05-26 19:30 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-05-06  1:02 rcirc update: allow sending a server password when connecting Ryan Yeske
2010-05-06  6:51 ` Deniz Dogan
2010-05-25  3:39 ` Glenn Morris
2010-05-25  4:43   ` Ryan Yeske
2010-05-25  8:22     ` Glenn Morris
2010-05-25 10:26       ` Juanma Barranquero
2010-05-25 19:33 ` Michael Albinus
2010-05-26 16:21   ` Ryan Yeske
2010-05-26 19:30     ` Michael Albinus

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.