Blame SOURCES/smb-Rework-anonymous-handling-to-avoid-EINVAL.patch

0049b8
diff --git a/daemon/gvfsbackendsmb.c b/daemon/gvfsbackendsmb.c
0049b8
index 776b67bc..a1e3eacd 100644
0049b8
--- a/daemon/gvfsbackendsmb.c
0049b8
+++ b/daemon/gvfsbackendsmb.c
0049b8
@@ -80,7 +80,6 @@ struct _GVfsBackendSmb
0049b8
   int mount_try;
0049b8
   gboolean mount_try_again;
0049b8
   gboolean mount_cancelled;
0049b8
-  gboolean use_anonymous;
0049b8
 	
0049b8
   gboolean password_in_keyring;
0049b8
   GPasswordSave password_save;
0049b8
@@ -215,13 +214,6 @@ auth_callback (SMBCCTX *context,
0049b8
       backend->mount_try_again = TRUE;
0049b8
       g_debug ("auth_callback - kerberos pass\n");
0049b8
     }
0049b8
-  else if (backend->use_anonymous)
0049b8
-    {
0049b8
-      /* Try again if anonymous login fails */
0049b8
-      backend->use_anonymous = FALSE;
0049b8
-      backend->mount_try_again = TRUE;
0049b8
-      g_debug ("auth_callback - anonymous login pass\n");
0049b8
-    }
0049b8
   else
0049b8
     {
0049b8
       gboolean in_keyring = FALSE;
0049b8
@@ -304,10 +296,13 @@ auth_callback (SMBCCTX *context,
0049b8
       /* Try again if this fails */
0049b8
       backend->mount_try_again = TRUE;
0049b8
 
0049b8
+      smbc_setOptionNoAutoAnonymousLogin (backend->smb_context,
0049b8
+                                          !anonymous);
0049b8
+
0049b8
       if (anonymous)
0049b8
         {
0049b8
-          backend->use_anonymous = TRUE;
0049b8
           backend->password_save = FALSE;
0049b8
+          g_debug ("auth_callback - anonymous enabled\n");
0049b8
         }
0049b8
       else
0049b8
         {
0049b8
@@ -535,12 +530,6 @@ do_mount (GVfsBackend *backend,
0049b8
           smbc_setOptionFallbackAfterKerberos (op_backend->smb_context, 1);
0049b8
         }
0049b8
 
0049b8
-      /* If the AskPassword reply requested anonymous login, enable the
0049b8
-       * anonymous fallback and try again.
0049b8
-       */
0049b8
-      smbc_setOptionNoAutoAnonymousLogin (op_backend->smb_context,
0049b8
-                                          !op_backend->use_anonymous);
0049b8
-
0049b8
       op_backend->mount_try ++;
0049b8
     }
0049b8
   while (op_backend->mount_try_again);
0049b8
-- 
0049b8
2.36.0
0049b8