emacs-devel
[Top][All Lists]
Advanced

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

Re: Tramp Mode not working connecting to OpenSolaris


From: Michael Albinus
Subject: Re: Tramp Mode not working connecting to OpenSolaris
Date: Wed, 10 Mar 2010 21:20:05 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.93 (gnu/linux)

address@hidden (Randal L. Schwartz) writes:

> Michael> The following patch shall remove the right "exec":
>
> I did that (by hand) already, similar result.  Do you want the trace?

Nope, I believe you. It does not go this way. Please revert the previous
patch.

Let's assume, the default shell in OpenSolaris is buggy. It's not the
first time, Tramp is confronted by this. Consequently, we shall use
another shell like bash, instead of applying several workarounds for
those bugs. The appended patch does exactly this. Note that I couldn't
test it with a remote OpenSolaris machine ...

Before you test this, you must call "M-x tramp-cleanup-all-connections".
This flushes Tramp's caches, which is necessary.

--8<---------------cut here---------------start------------->8---
*** /tmp/ediff3714iRe   2010-03-10 21:07:27.054171338 +0100
--- /home/albinus/src/emacs/lisp/net/tramp.el   2010-03-10 21:06:13.924172486 
+0100
***************
*** 6403,6414 ****
        (with-current-buffer (tramp-get-buffer vec)
        (tramp-send-command vec "echo ~root" t)
        (cond
!        ((string-match "^~root$" (buffer-string))
          (setq shell
                (or (tramp-find-executable
!                    vec "bash" (tramp-get-remote-path vec) t)
                    (tramp-find-executable
!                    vec "ksh" (tramp-get-remote-path vec) t)))
          (unless shell
            (tramp-error
             vec 'file-error
--- 6403,6417 ----
        (with-current-buffer (tramp-get-buffer vec)
        (tramp-send-command vec "echo ~root" t)
        (cond
!        ((or (string-match "^~root$" (buffer-string))
!             ;; The default shell (ksh93) of OpenSolaris is buggy.
!             (string-equal (tramp-get-connection-property vec "uname" "")
!                           "SunOS 5.11"))
          (setq shell
                (or (tramp-find-executable
!                    vec "bash" (tramp-get-remote-path vec) t t)
                    (tramp-find-executable
!                    vec "ksh" (tramp-get-remote-path vec) t t)))
          (unless shell
            (tramp-error
             vec 'file-error
***************
*** 6851,6858 ****
    ;; On OpenSolaris, there is a bug when HISTFILE is changed in place
    ;; <http://bugs.opensolaris.org/view_bug.do?bug_id=6834184>.  We
    ;; apply the workaround.
!   (if (string-equal (tramp-get-connection-property vec "uname" "") "SunOS 
5.11")
!       (tramp-send-command vec "unset HISTFILE" t))
  
    (let ((env (copy-sequence tramp-remote-process-environment))
        unset item)
--- 6854,6861 ----
    ;; On OpenSolaris, there is a bug when HISTFILE is changed in place
    ;; <http://bugs.opensolaris.org/view_bug.do?bug_id=6834184>.  We
    ;; apply the workaround.
!   ;(if (string-equal (tramp-get-connection-property vec "uname" "") "SunOS 
5.11")
!   ;(tramp-send-command vec "unset HISTFILE" t))
  
    (let ((env (copy-sequence tramp-remote-process-environment))
        unset item)
--8<---------------cut here---------------end--------------->8---

Best regards, Michael.




reply via email to

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