On Sat, 2013-11-02 at 11:27 +0100, Ivo De Decker wrote:
> Hi Steve,

> I added the code from samba-libs.preinst to libpam-smbpass.preinst as well.
> Given that Jelmer convinced me yesterday to add a link instead of doing a
> simple move, the code is idempotent, so it doesn't matter if it runs multiple
> times in multiple maintainer scripts.
> 
> When the preinst fails, libpam-smbpass will not be upgraded, and the old
> version will stay on the system. In samba 3.6, libpam-smbpass was
> self-contained and didn't need any shared libraries from other samba packages.
> This means that the old libpam-smbpass module will keep working, even when the
> upgrade fails: users are still able to login to pam-enabled services (like
> ssh) using credentials that are only stored in passdb.tdb.
> 
> The only scenario where this is relevant, is when the tdb-files in
> /var/lib/samba/private already exist before the upgrade. This is only
> possible if we broke something in some older version of samba (I still haven't
> found any evidence of anything referencing /var/lib/samba/private in our old
> packages). In that case, the only thing we can do is fail with a clear
> message, instead of silently using the wrong user data. With these latest
> changes, the pam module will keep working, even in this case.
> 
> That said, given that a race condition during the upgrade is easily
> reproducible, I am pretty convinced that the problem in the original
> submission of this bug was caused by such a race condition. That case should
> be fixed by the earlier changes.

Thank you so much for you diligent attention to this difficult problem. 

Andrew Bartlett

-- 
Andrew Bartlett                                http://samba.org/~abartlet/
Authentication Developer, Samba Team           http://samba.org


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to