tramp-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: old problem popping up again


From: Michael Albinus
Subject: Re: old problem popping up again
Date: Mon, 17 Jun 2013 11:11:33 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux)

Gilles Pion <address@hidden> writes:

> Hello,

Hi Gilles,

> I'm having the same problem as the one described here:
>
> http://lists.gnu.org/archive/html/tramp-devel/2010-10/msg00010.html
>
> Tramp-version: 2.2.6-24.3
> Emacs-version GNU Emacs 24.3.1 (i686-pc-cygwin) 
>
> The target system is a Synology NAS running under busybox based Linux OS
>
> Link to tramp debug buffer contents
> https://www.box.com/s/joyrwdjd6h9lt7wp0z81

Hmm, yes. There was a report that the fix for that problem caused
problems on busyboxes. See <http://thread.gmane.org/gmane.emacs.tramp/7937>.

I have debugged that back in 2011, but I don't remember the details what
happened with that busybox. Somehow, it didn't accept the extended
command for here-documents as used in `tramp-send-command'. That's why I
have blacklisted busyboxes for this fix, see the change related to

--8<---------------cut here---------------start------------->8---
2011-12-29  Michael Albinus  <address@hidden>

* tramp-sh.el (tramp-find-shell): Set "remote-shell" property also
for alternative shells.
(tramp-open-connection-setup-interactive-shell): Check, whether
the shell is a busybox.
(tramp-send-command): Don't suppress multiple prompts for 
busyboxes, it hurts.
--8<---------------cut here---------------end--------------->8---

Maybe busyboxes implementations vary. The one I have debugged was
located on an n800, which sounds very limited.

What happens on your NAS, if you suppress the busybox blacklisting in
tramp-sh.el, like this (line numbers might vary):

--8<---------------cut here---------------start------------->8---
*** /home/albinus/src/tramp/lisp/tramp-sh.el.orig       2013-06-17 
11:06:26.546446032 +0200
--- /home/albinus/src/tramp/lisp/tramp-sh.el    2013-06-17 09:53:19.890305083 
+0200
***************
*** 4517,4524 ****
        ;; We mark the command string that it can be erased in the output 
buffer.
        (tramp-set-connection-property p "check-remote-echo" t)
        (setq command (format "%s%s%s" tramp-echo-mark command 
tramp-echo-mark)))
!     (when (and (string-match "<<'EOF'" command)
!              (not (tramp-get-connection-property vec "busybox" nil)))
        ;; Unset $PS1 when using here documents, in order to avoid
        ;; multiple prompts.
        (setq command (concat "(PS1= ; " command "\n)")))
--- 4517,4524 ----
        ;; We mark the command string that it can be erased in the output 
buffer.
        (tramp-set-connection-property p "check-remote-echo" t)
        (setq command (format "%s%s%s" tramp-echo-mark command 
tramp-echo-mark)))
!     (when (and (string-match "<<'EOF'" command) t)
! ;            (not (tramp-get-connection-property vec "busybox" nil)))
        ;; Unset $PS1 when using here documents, in order to avoid
        ;; multiple prompts.
        (setq command (concat "(PS1= ; " command "\n)")))
--8<---------------cut here---------------end--------------->8---

Best regards, Michael.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]