summaryrefslogtreecommitdiff
path: root/gvfs/gvfs.c
diff options
context:
space:
mode:
authorTomas Bzatek <tbzatek@tbzatek.englab.brq.redhat.com>2008-10-22 18:06:32 +0200
committerTomas Bzatek <tbzatek@tbzatek.englab.brq.redhat.com>2008-10-22 18:06:32 +0200
commit0f7bc5aa0395856a875a3f2e7dc5bce7b5cf612f (patch)
tree448781717d4e9dc4e10c3293a7fa92529b52387d /gvfs/gvfs.c
parent9cee7228b47fd363599e9228a4c312512f8f3302 (diff)
downloadtuxcmd-modules-0f7bc5aa0395856a875a3f2e7dc5bce7b5cf612f.tar.xz
GVFS plugin: catch abort flag from SMB backends
Diffstat (limited to 'gvfs/gvfs.c')
-rw-r--r--gvfs/gvfs.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/gvfs/gvfs.c b/gvfs/gvfs.c
index af85a8a..2e42bea 100644
--- a/gvfs/gvfs.c
+++ b/gvfs/gvfs.c
@@ -151,6 +151,14 @@ ask_password_cb (GMountOperation *op,
/* Ask user for password */
g_print ("(WW) ask_password_cb: mount_try = %d, message = '%s'\n", globs->mount_try, message);
+ /* Handle abort message from certain backends properly */
+ /* - e.g. SMB backends use this to mask multiple auth callbacks from smbclient */
+ if (default_user && strcmp (default_user, "ABORT") == 0) {
+ g_print ("(WW) default_user == \"ABORT\", aborting\n");
+ g_mount_operation_reply (op, G_MOUNT_OPERATION_ABORTED);
+ return;
+ }
+
username = NULL;
domain = NULL;
password = NULL;