From: Matt Benjamin Date: Fri, 4 Jan 2019 20:31:56 +0000 (-0500) Subject: rgw ldap: safe_read_file can return < 0 X-Git-Tag: v14.1.0~304^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=65cd8accc127c6765f083a389455ce73b7517e11;p=ceph.git rgw ldap: safe_read_file can return < 0 Avoid invalid string access when LDAP auth is enabled, but LDAP secret is not set. This is Casey's fix for the problem. Fixes: https://tracker.ceph.com/issues/24228 Signed-off-by: Matt Benjamin --- diff --git a/src/rgw/rgw_ldap.cc b/src/rgw/rgw_ldap.cc index 9c1e69476aae..ffb82b9e2e69 100644 --- a/src/rgw/rgw_ldap.cc +++ b/src/rgw/rgw_ldap.cc @@ -27,7 +27,7 @@ std::string parse_rgw_ldap_bindpw(CephContext* ctx) memset(bindpw, 0, 1024); int pwlen = safe_read_file("" /* base */, ldap_secret.c_str(), bindpw, 1023); - if (pwlen) { + if (pwlen > 0) { ldap_bindpw = bindpw; boost::algorithm::trim(ldap_bindpw); if (ldap_bindpw.back() == '\n')