Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=12362285561c899f0f389640ca75c457af4732b5

commit 12362285561c899f0f389640ca75c457af4732b5
Author: bouleetbil <bouleet...@frogdev.info>
Date:   Tue Sep 21 21:14:06 2010 +0200

gvfs-1.6.3-2-i686
*added gdu support
*fixes ssh support

diff --git a/source/xapps/gvfs/FrugalBuild b/source/xapps/gvfs/FrugalBuild
index 5a11e66..2c85c95 100644
--- a/source/xapps/gvfs/FrugalBuild
+++ b/source/xapps/gvfs/FrugalBuild
@@ -3,19 +3,20 @@

pkgname=gvfs
pkgver=1.6.3
-pkgrel=1
+pkgrel=2
pkgdesc="gvfs is a userspace virtual filesystem designed to work with the i/o 
abstractions of gio."
url="http://www.gnome.org/";
depends=('glib2>=2.20.1' 'dbus' 'avahi-glib' 'avahi' 'hal')
makedepends=('intltool' 'gnome-doc-utils' 'samba' 'fuse' 'libsoup>=2.29.0' 
'gconf' \
'gnome-keyring>=2.30.0' 'libcdio' 'gphoto2' 'obexftp>=0.23-2' \
-               'bluez>=4.61' 'expat' 'openssh')
+               'bluez>=4.61' 'expat' 'openssh>=5.6p1' 'gnome-disk-utility')
groups=('xapps')
archs=('i686' 'x86_64' 'ppc')
Finclude gnome
-source=($source gvfs-libsoup.diff)
+source=($source gvfs-libsoup.diff ssh.diff)
sha1sums=('152d84a605465fb8065ae6796a6a28112c5e8847' \
-          '1eb9391f6bf3716ddc8fbf75340257e537c61199')
+          '1eb9391f6bf3716ddc8fbf75340257e537c61199' \
+          '261a0ef299cabb5c494fd0115f0d6895ef30192d')

subpkgs=("gvfs-gconf")
subdescs=('gvfs with gconf support for Gnome')
@@ -32,22 +33,23 @@ subgroups=("${subgrou...@]}" "xapps-extra")
subarchs=("${subarc...@]}" "i686 x86_64 ppc")

Fconfopts="$Fconfopts \
-  --enable-http \
-  --enable-avahi \
-  --enable-udev \
-  --enable-fuse \
-  --enable-gconf \
-  --enable-gdu \
-  --enable-hal \
-  --enable-gudev \
-  --enable-cdda \
-  --enable-afc \
-  --enable-obexftp \
-  --enable-gphoto2 \
-  --enable-keyring \
-  --enable-samba \
-  --enable-archive \
-  --enable-bash-completion"
+       --enable-http \
+       --enable-avahi \
+       --enable-udev \
+       --enable-fuse \
+       --enable-gconf \
+       --enable-gdu \
+       --enable-hal \
+       --enable-gudev \
+       --enable-cdda \
+       --enable-afc \
+       --enable-obexftp \
+       --enable-gphoto2 \
+       --enable-keyring \
+       --enable-samba \
+       --enable-archive \
+       --enable-bash-completion \
+       --enable-gdu"

build(){
Fcd
diff --git a/source/xapps/gvfs/ssh.diff b/source/xapps/gvfs/ssh.diff
new file mode 100644
index 0000000..e6e89d3
--- /dev/null
+++ b/source/xapps/gvfs/ssh.diff
@@ -0,0 +1,59 @@
+https://bugzilla.gnome.org/show_bug.cgi?id=629184
+diff --git a/daemon/gvfsbackendsftp.c b/daemon/gvfsbackendsftp.c
+index 401484d..e5c5aec 100644
+--- a/daemon/gvfsbackendsftp.c
++++ b/daemon/gvfsbackendsftp.c
+@@ -24,6 +24,7 @@
+ #include <config.h>
+
+ #include <stdlib.h>
++#include <sys/poll.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <sys/time.h>
+@@ -852,6 +853,9 @@ handle_login (GVfsBackend *backend,
+   const gchar *authtype = NULL;
+   gchar *object = NULL;
+   char *prompt;
++  /*
++   * TODO: compare this with sshfs.c where the prompt appears on stdin_fd
++   */
+
+   if (op_backend->client_vendor == SFTP_VENDOR_SSH)
+     prompt_fd = stderr_fd;
+@@ -864,14 +868,13 @@ handle_login (GVfsBackend *backend,
+   ret_val = TRUE;
+   while (1)
+     {
+-      FD_ZERO (&ifds);
+-      FD_SET (stdout_fd, &ifds);
+-      FD_SET (prompt_fd, &ifds);
+-
+-      tv.tv_sec = SFTP_READ_TIMEOUT;
+-      tv.tv_usec = 0;
++      struct pollfd fds[2];
++      fds[0].fd = stdout_fd;
++      fds[0].events = POLLIN;
++      fds[1].fd = prompt_fd;
++      fds[1].events = POLLIN;
+
+-      ret = select (MAX (stdout_fd, prompt_fd)+1, &ifds, NULL, NULL, &tv);
++      ret = poll(fds, 2, SFTP_READ_TIMEOUT);
+
+       if (ret <= 0)
+         {
+@@ -882,11 +885,11 @@ handle_login (GVfsBackend *backend,
+           break;
+         }
+
+-      if (FD_ISSET (stdout_fd, &ifds))
++      if (fds[0].revents)
+         break; /* Got reply to initial INIT request */
+
+-      g_assert (FD_ISSET (prompt_fd, &ifds));
+-
++      if (!(fds[1].revents & POLLIN))
++        continue;
+
+       len = g_input_stream_read (prompt_stream,
+                                  buffer, sizeof (buffer) - 1,
_______________________________________________
Frugalware-git mailing list
Frugalware-git@frugalware.org
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to