Comment 0 for bug 1878721

Revision history for this message
Anders Kaseorg (andersk) wrote :

[Impact]

memcached 1.5.22 in focal has a bug where it looks for its SASL configuration at /etc/sasl2/memcached.conf/memcached.conf instead of /etc/sasl2/memcached.conf. This causes a memcached setup with authentication that was working in bionic to fail in focal.

The bug was introduced upstream in 1.5.7~3:
https://github.com/memcached/memcached/commit/39151c870c5e598f039714bdb790bd46f614856e
https://github.com/memcached/memcached/pull/366
and fixed upstream in 1.6.0~15:
https://github.com/memcached/memcached/commit/6207330c2705fdb5f02de13b99a0d994f7c4f14a

[Test Case]

apt-get install memcached libmemcached-tools libsasl2-modules sasl2-bin
mkdir /etc/sasl2
echo 'mech_list: plain' > /etc/sasl2/memcached.conf
echo 'sasldb_path: /etc/sasl2/memcached-sasldb2' >> /etc/sasl2/memcached.conf
echo bar | saslpasswd2 -p -f /etc/sasl2/memcached-sasldb2 -a memcached foo
chown memcache: /etc/sasl2/memcached-sasldb2
systemctl restart memcached
memcping --servers=127.0.0.1 --binary --username=foo --password=bar

Works in bionic; fails in focal with “Failed to ping 127.0.0.1:11211 WRITE FAILURE”.

[Regression Potential]

Low risk. The upstream patch is targeted and applies cleanly to 1.5.22. It looks for the SASL configuration at both locations, so if someone worked around this bug by creating /etc/sasl2/memcached.conf/memcached.conf, that will continue to be respected.