kio-extras5/0001-smb-kio_smb_browse-Check-error-code-EINVAL-to-prompt.patch
Christophe Giboudeaux 46badeeeae Accepting request 990490 from home:Vogtinator:boo1201737
- Add preliminary patch to fix smb connections with samba >= 4.16
  (boo#1201737, kde#453090):
  * 0001-smb-kio_smb_browse-Check-error-code-EINVAL-to-prompt.patch

OBS-URL: https://build.opensuse.org/request/show/990490
OBS-URL: https://build.opensuse.org/package/show/KDE:Applications/kio-extras5?expand=0&rev=180
2022-07-21 07:21:53 +00:00

36 lines
1.4 KiB
Diff

From 546c2b06e27f0e8460f5ddf1347d28aa0ec22979 Mon Sep 17 00:00:00 2001
From: Anthony Hung <anthonyhungck@gmail.com>
Date: Wed, 22 Jun 2022 17:37:51 +0800
Subject: [PATCH] smb/kio_smb_browse: Check error code `EINVAL` to prompt the
password dialog
With `samba-libs` >= 4.16, when user connect to the windows file sharing with incorrect user credential, the error code is `EINVAL`.
The user should get the password dialog to enter username and password if the error code is `EINVAL`.
Reference URL:
https://bugzilla.samba.org/show_bug.cgi?id=14983
https://gitlab.gnome.org/GNOME/gvfs/-/issues/611
BUG: 453090
---
smb/kio_smb_browse.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/smb/kio_smb_browse.cpp b/smb/kio_smb_browse.cpp
index 3bc25d83..a773befa 100644
--- a/smb/kio_smb_browse.cpp
+++ b/smb/kio_smb_browse.cpp
@@ -452,7 +452,7 @@ WorkerResult SMBWorker::listDir(const QUrl &kurl)
if (m_current_url.getType() != SMBURLTYPE_ENTIRE_NETWORK && smbc->error() != 0) {
// not smb:// and had an error -> handle it
const int err = smbc->error();
- if (err == EPERM || err == EACCES || workaroundEEXIST(err)) {
+ if (err == EPERM || err == EACCES || err == EINVAL || workaroundEEXIST(err)) {
qCDebug(KIO_SMB_LOG) << "trying checkPassword";
const int passwordError = checkPassword(m_current_url);
if (passwordError == KJob::NoError) {
--
2.36.1