Function: network-stream-open-shell

network-stream-open-shell is a byte-compiled function defined in network-stream.el.gz.

Signature

(network-stream-open-shell NAME BUFFER HOST SERVICE PARAMETERS)

Source Code

;; Defined in /usr/src/emacs/lisp/net/network-stream.el.gz
(defun network-stream-open-shell (name buffer host service parameters)
  (let* ((capability-command (plist-get parameters :capability-command))
	 (eoc                (plist-get parameters :end-of-command))
	 (start (with-current-buffer buffer (point)))
         (coding (plist-get parameters :coding))
	 (stream (let ((process-connection-type nil))
		   (start-process name buffer shell-file-name
				  shell-command-switch
				  (format-spec
				   (plist-get parameters :shell-command)
                                   `((?s . ,host)
                                     (?p . ,service))))))
         greeting)
    (when coding (if (consp coding)
                     (set-process-coding-system stream
                                                (car coding)
                                                (cdr coding))
                   (set-process-coding-system stream
                                              coding
                                              coding)))
    (list stream
	  (setq greeting (network-stream-get-response stream start eoc))
	  (network-stream-command
           stream
           (network-stream--capability-command capability-command greeting)
	   (or (plist-get parameters :end-of-capability)
	       eoc))
	  'plain)))