projects
/
riece
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Added comment.
[riece]
/
lisp
/
riece-ndcc.el
diff --git
a/lisp/riece-ndcc.el
b/lisp/riece-ndcc.el
index
dd0553a
..
3dd90d6
100644
(file)
--- a/
lisp/riece-ndcc.el
+++ b/
lisp/riece-ndcc.el
@@
-25,7
+25,6
@@
(require 'riece-globals)
(require 'riece-options)
(require 'riece-globals)
(require 'riece-options)
-(require 'riece-display)
(require 'calc)
(require 'calc)
@@
-45,6
+44,11
@@
Only used for sending files."
(defvar riece-ndcc-request-user nil)
(defvar riece-ndcc-request-size nil)
(defvar riece-ndcc-request-user nil)
(defvar riece-ndcc-request-size nil)
+(defvar riece-ndcc-enabled nil)
+
+(defconst riece-ndcc-description
+ "DCC file sending extension implemented with `make-network-process'")
+
(defun riece-ndcc-encode-address (address)
(unless (string-match
"^\\([0-9]+\\)\\.\\([0-9]+\\)\\.\\([0-9]+\\)\\.\\([0-9]+\\)$"
(defun riece-ndcc-encode-address (address)
(unless (string-match
"^\\([0-9]+\\)\\.\\([0-9]+\\)\\.\\([0-9]+\\)\\.\\([0-9]+\\)$"
@@
-92,9
+96,9
@@
Only used for sending files."
(let ((completion-ignore-case t))
(unless riece-ndcc-server-address
(error "Set riece-ndcc-server-address to your host"))
(let ((completion-ignore-case t))
(unless riece-ndcc-server-address
(error "Set riece-ndcc-server-address to your host"))
- (list (
completing-read
+ (list (
riece-completing-read-identity
"User: "
"User: "
- (
mapcar #'list (riece-get-users-on-server
)))
+ (
riece-get-users-on-server (riece-current-server-name
)))
(expand-file-name (read-file-name "File: ")))))
(let* (selective-display
(coding-system-for-read 'binary)
(expand-file-name (read-file-name "File: ")))))
(let* (selective-display
(coding-system-for-read 'binary)
@@
-111,7
+115,8
@@
Only used for sending files."
:sentinel 'riece-ndcc-server-sentinel))
(riece-send-string
(format "PRIVMSG %s :\1DCC SEND %s %s %d %d\1\r\n"
:sentinel 'riece-ndcc-server-sentinel))
(riece-send-string
(format "PRIVMSG %s :\1DCC SEND %s %s %d %d\1\r\n"
- user (file-name-nondirectory file)
+ (riece-identity-prefix user)
+ (file-name-nondirectory file)
(riece-ndcc-encode-address riece-ndcc-server-address)
(nth 1 (process-contact process))
(nth 7 (file-attributes file))))))
(riece-ndcc-encode-address riece-ndcc-server-address)
(nth 1 (process-contact process))
(nth 7 (file-attributes file))))))
@@
-187,9
+192,10
@@
Only used for sending files."
(defun riece-handle-dcc-request (prefix target message)
(let ((case-fold-search t))
(defun riece-handle-dcc-request (prefix target message)
(let ((case-fold-search t))
- (when (string-match
- "SEND \\([^ ]+\\) \\([^ ]+\\) \\([^ ]+\\) \\([^ ]+\\)"
- message)
+ (when (and riece-ndcc-enabled
+ (string-match
+ "SEND \\([^ ]+\\) \\([^ ]+\\) \\([^ ]+\\) \\([^ ]+\\)"
+ message))
(let ((file (match-string 1 message))
(address (match-string 2 message))
(port (string-to-number (match-string 3 message)))
(let ((file (match-string 1 message))
(address (match-string 2 message))
(port (string-to-number (match-string 3 message)))
@@
-222,10
+228,16
@@
Only used for sending files."
(defvar riece-dialogue-mode-map)
(defun riece-ndcc-insinuate ()
(defvar riece-dialogue-mode-map)
(defun riece-ndcc-insinuate ()
- (add-hook 'riece-ctcp-dcc-request-hook 'riece-handle-dcc-request)
+ (add-hook 'riece-ctcp-dcc-request-hook 'riece-handle-dcc-request))
+
+(defun riece-ndcc-enable ()
(define-key riece-dialogue-mode-map "\C-ds" 'riece-command-dcc-send)
(define-key riece-dialogue-mode-map "\C-dr" 'riece-command-dcc-receive))
(define-key riece-dialogue-mode-map "\C-ds" 'riece-command-dcc-send)
(define-key riece-dialogue-mode-map "\C-dr" 'riece-command-dcc-receive))
+(defun riece-ndcc-disable ()
+ (define-key riece-dialogue-mode-map "\C-ds" nil)
+ (define-key riece-dialogue-mode-map "\C-dr" nil))
+
(provide 'riece-ndcc)
;;; riece-ndcc.el ends here
(provide 'riece-ndcc)
;;; riece-ndcc.el ends here