[Bug 1801227] Re: smbc_opendir returns EEXIST if login credentials are incorrect, breaking SMB shares in Kodi

Launchpad Bug Tracker 1801227 at bugs.launchpad.net
Tue Nov 27 09:20:46 UTC 2018


** Merge proposal linked:
   https://code.launchpad.net/~kstenerud/ubuntu/+source/samba/+git/samba/+merge/359602

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to samba in Ubuntu.
https://bugs.launchpad.net/bugs/1801227

Title:
  smbc_opendir returns EEXIST if login credentials are incorrect,
  breaking SMB shares in Kodi

Status in samba package in Ubuntu:
  Fix Released
Status in samba source package in Bionic:
  Triaged

Bug description:
  [Impact]

  A regression in Samba causes the wrong error message to be returned on
  an unsuccessful login, returning EEXIST instead of EACCESS or EPERM.

  [Tese Case]

  # lxc launch ubuntu:bionic tester && lxc exec tester bash
  # apt update && apt dist-upgrade -y && apt install -y samba gvfs libglib2.0-bin gvfs-bin gvfs-backends dbus-x11 &&
  echo "
  [global]
  workgroup = WORKGROUP
  security = user
  map to guest = bad user
  [test]
      path = /tmp
      browseable = yes
      read only = yes
      valid users = someone
  " >/etc/samba/smb.conf &&
  service smbd restart
  # su - -c "dbus-launch gio mount -a smb://localhost/test" ubuntu
  gio: smb://localhost/test/: Failed to mount Windows share: File exists

  [Regression Potential]

  The change reverts a regression in the closing order in certain cases
  from a previous version of samba, and should not cause further
  regressions in the fix.

  [Original Description]

  Target to milestone
  ​ 	Bionic Remove
  Triaged

  High

    Karl Stenerud

  Target to milestone
  Also affects project (?) Also affects distribution/package Nominate for series
  Edit
  Bug Description

  In Kodi, try to add a smb:// URL for a share that doesn't allow guest
  logins and you'll get a cryptic "File Exists" error. It never asks for
  login credentials. From online searching, this is most likely due to a
  bug in libsmbclient where smbc_opendir will return EEXIST instead of a
  more appropriate error code if invalid login credentials were
  provided.

  This was fixed in Samba 4.8:

  https://github.com/samba-
  team/samba/commit/7470b9b18af282a742929d3fc90f4be5520428a1

  But 18.04 is shipping 4.7.

  Trying to add a share where the hostname doesn't resolve results in
  some cryptic messages as well, but that may or may not be a different
  bug.

  ProblemType: Bug
  DistroRelease: Ubuntu 18.04
  Package: libsmbclient 2:4.7.6+dfsg~ubuntu-0ubuntu2.2
  ProcVersionSignature: Ubuntu 4.15.0-38.41-generic 4.15.18
  Uname: Linux 4.15.0-38-generic x86_64
  NonfreeKernelModules: nvidia_modeset nvidia
  ApportVersion: 2.20.9-0ubuntu7.4
  Architecture: amd64
  CurrentDesktop: ubuntu:GNOME
  Date: Thu Nov 1 21:15:29 2018
  InstallationDate: Installed on 2018-09-12 (51 days ago)
  InstallationMedia: Ubuntu 18.04.1 LTS "Bionic Beaver" - Release amd64 (20180725)
  ProcEnviron:
   TERM=xterm-256color
   PATH=(custom, no user)
   XDG_RUNTIME_DIR=<set>
   LANG=en_US.UTF-8
   SHELL=/bin/bash
  RelatedPackageVersions:
   nautilus 1:3.26.4-0~ubuntu18.04.2
   gvfs 1.36.1-0ubuntu1.1
  SambaClientRegression: Yes
  SourcePackage: samba
  UpgradeStatus: No upgrade log present (probably fresh install)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/samba/+bug/1801227/+subscriptions



More information about the foundations-bugs mailing list