Yes Micheal,
I have just tested your patch and I can confirm that it works.

Thank you very much,
Emanuele

2014-11-01 17:53 GMT+01:00 Michael Albinus <[email protected]>:

> Michael Albinus <[email protected]> writes:
>
> > Better suited seems to be stat, which returns "UNKNOWN":
> >
> > # stat -c "%U %G" xxx
> > UNKNOWN UNKNOWN
> >
> > So I will add this as alternative to `tramp-get-remote-uid' and
> > `tramp-get-remote-gid'.
>
> Well, I've committed the following patch to the repositories, which
> should fix this:
>
> --8<---------------cut here---------------start------------->8---
> ***
> /home/albinus/src/tramp/lisp/tramp-sh.el.~3b182d0b508308d40d07b14fff22f48e44c70465~
> 2014-11-01 17:50:08.706595545 +0100
> --- /home/albinus/src/tramp/lisp/tramp-sh.el    2014-11-01
> 17:24:57.668587920 +0100
> ***************
> *** 5289,5305 ****
>
>   (defun tramp-get-remote-uid (vec id-format)
>     (with-tramp-connection-property vec (format "uid-%s" id-format)
> !     (let ((res (cond
> !               ((tramp-get-remote-id vec)
> !                (tramp-get-remote-uid-with-id vec id-format))
> !               ((tramp-get-remote-perl vec)
> !                (tramp-get-remote-uid-with-perl vec id-format))
> !               ((tramp-get-remote-python vec)
> !                (tramp-get-remote-uid-with-python vec id-format))
> !               (t (tramp-error
> !                   vec 'file-error "Cannot determine remote uid")))))
> !       ;; The command might not always return a number.
> !       (if (and (equal id-format 'integer) (not (integerp res))) -1
> res))))
>
>   (defun tramp-get-remote-gid-with-id (vec id-format)
>     (tramp-send-command-and-read
> --- 5289,5308 ----
>
>   (defun tramp-get-remote-uid (vec id-format)
>     (with-tramp-connection-property vec (format "uid-%s" id-format)
> !     (let ((res
> !          (ignore-errors
> !            (cond
> !             ((tramp-get-remote-id vec)
> !              (tramp-get-remote-uid-with-id vec id-format))
> !             ((tramp-get-remote-perl vec)
> !              (tramp-get-remote-uid-with-perl vec id-format))
> !             ((tramp-get-remote-python vec)
> !              (tramp-get-remote-uid-with-python vec id-format))))))
> !       ;; Ensure there is a valid result.
> !       (cond
> !        ((and (equal id-format 'integer) (not (integerp res))) -1)
> !        ((and (equal id-format 'string) (not (stringp res))) "UNKNOWN")
> !        (t res)))))
>
>   (defun tramp-get-remote-gid-with-id (vec id-format)
>     (tramp-send-command-and-read
> ***************
> *** 5330,5346 ****
>
>   (defun tramp-get-remote-gid (vec id-format)
>     (with-tramp-connection-property vec (format "gid-%s" id-format)
> !     (let ((res (cond
> !               ((tramp-get-remote-id vec)
> !                (tramp-get-remote-gid-with-id vec id-format))
> !               ((tramp-get-remote-perl vec)
> !                (tramp-get-remote-gid-with-perl vec id-format))
> !               ((tramp-get-remote-python vec)
> !                (tramp-get-remote-gid-with-python vec id-format))
> !               (t (tramp-error
> !                   vec 'file-error "Cannot determine remote gid")))))
> !       ;; The command might not always return a number.
> !       (if (and (equal id-format 'integer) (not (integerp res))) -1
> res))))
>
>   ;; Some predefined connection properties.
>   (defun tramp-get-inline-compress (vec prop size)
> --- 5333,5352 ----
>
>   (defun tramp-get-remote-gid (vec id-format)
>     (with-tramp-connection-property vec (format "gid-%s" id-format)
> !     (let ((res
> !          (ignore-errors
> !            (cond
> !             ((tramp-get-remote-id vec)
> !              (tramp-get-remote-gid-with-id vec id-format))
> !             ((tramp-get-remote-perl vec)
> !              (tramp-get-remote-gid-with-perl vec id-format))
> !             ((tramp-get-remote-python vec)
> !              (tramp-get-remote-gid-with-python vec id-format))))))
> !       ;; Ensure there is a valid result.
> !       (cond
> !        ((and (equal id-format 'integer) (not (integerp res))) -1)
> !        ((and (equal id-format 'string) (not (stringp res))) "UNKNOWN")
> !        (t res)))))
>
>   ;; Some predefined connection properties.
>   (defun tramp-get-inline-compress (vec prop size)
> --8<---------------cut here---------------end--------------->8---
>
> Best regards, Michael.
>



-- 
20/04/2013 - Io volevo Rodotà
_______________________________________________
Tramp-devel mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/tramp-devel

Reply via email to