From 94b43021ffcee15f132ba8cb58e20e3261191170 Mon Sep 17 00:00:00 2001 From: "Michael Kaufmann (d00p)" Date: Mon, 21 Sep 2015 10:26:18 +0200 Subject: [PATCH] sort libnss-result by length of name to always return the 'base'user instead of a ftp-user (because select does not have a default order), fixes #1556 Signed-off-by: Michael Kaufmann (d00p) --- lib/configfiles/gentoo.xml | 3 +++ lib/configfiles/jessie.xml | 3 +++ lib/configfiles/precise.xml | 3 +++ lib/configfiles/rhel_centos.xml | 3 +++ lib/configfiles/trusty.xml | 3 +++ lib/configfiles/wheezy.xml | 3 +++ 6 files changed, 18 insertions(+) diff --git a/lib/configfiles/gentoo.xml b/lib/configfiles/gentoo.xml index 252c0691..297f7c3f 100644 --- a/lib/configfiles/gentoo.xml +++ b/lib/configfiles/gentoo.xml @@ -3116,16 +3116,19 @@ getpwnam SELECT username,'x',uid,gid,'Froxlor Customer',homedir,shell \ FROM ftp_users \ WHERE username='%1$s' \ AND login_enabled = 'Y' \ + ORDER BY LENGTH(username) \ LIMIT 1 getpwuid SELECT username,'x',uid,gid,'Froxlor Customer',homedir,shell \ FROM ftp_users \ WHERE uid='%1$u' \ AND login_enabled = 'Y' \ + ORDER BY LENGTH(username) \ LIMIT 1 getspnam SELECT username,password,FLOOR(UNIX_TIMESTAMP()/86400-1),'1','99999','7','-1','-1','0' \ FROM ftp_users \ WHERE username='%1$s' \ AND login_enabled = 'Y' \ + ORDER BY LENGTH(username) \ LIMIT 1 getpwent SELECT username,'x',uid,gid,'Froxlor Customer',homedir,shell \ FROM ftp_users diff --git a/lib/configfiles/jessie.xml b/lib/configfiles/jessie.xml index 8b4c2b3e..e8506f07 100644 --- a/lib/configfiles/jessie.xml +++ b/lib/configfiles/jessie.xml @@ -3887,16 +3887,19 @@ getpwnam SELECT username,'x',uid,gid,'Froxlor Customer',homedir,shell \ FROM ftp_users \ WHERE username='%1$s' \ AND login_enabled = 'Y' \ + ORDER BY LENGTH(username) \ LIMIT 1 getpwuid SELECT username,'x',uid,gid,'Froxlor Customer',homedir,shell \ FROM ftp_users \ WHERE uid='%1$u' \ AND login_enabled = 'Y' \ + ORDER BY LENGTH(username) \ LIMIT 1 getspnam SELECT username,password,FLOOR(UNIX_TIMESTAMP()/86400-1),'1','99999','7','-1','-1','0' \ FROM ftp_users \ WHERE username='%1$s' \ AND login_enabled = 'Y' \ + ORDER BY LENGTH(username) \ LIMIT 1 getpwent SELECT username,'x',uid,gid,'Froxlor Customer',homedir,shell \ FROM ftp_users diff --git a/lib/configfiles/precise.xml b/lib/configfiles/precise.xml index 6745dd43..b932ba45 100644 --- a/lib/configfiles/precise.xml +++ b/lib/configfiles/precise.xml @@ -1447,16 +1447,19 @@ getpwnam SELECT username,'x',uid,gid,'Froxlor Customer',homedir,shell \ FROM ftp_users \ WHERE username='%1$s' \ AND login_enabled = 'Y' \ + ORDER BY LENGTH(username) \ LIMIT 1 getpwuid SELECT username,'x',uid,gid,'Froxlor Customer',homedir,shell \ FROM ftp_users \ WHERE uid='%1$u' \ AND login_enabled = 'Y' \ + ORDER BY LENGTH(username) \ LIMIT 1 getspnam SELECT username,password,FLOOR(UNIX_TIMESTAMP()/86400-1),'1','99999','7','-1','-1','0' \ FROM ftp_users \ WHERE username='%1$s' \ AND login_enabled = 'Y' \ + ORDER BY LENGTH(username) \ LIMIT 1 getpwent SELECT username,'x',uid,gid,'Froxlor Customer',homedir,shell \ FROM ftp_users diff --git a/lib/configfiles/rhel_centos.xml b/lib/configfiles/rhel_centos.xml index 800dc845..f86d2a3c 100644 --- a/lib/configfiles/rhel_centos.xml +++ b/lib/configfiles/rhel_centos.xml @@ -2309,16 +2309,19 @@ getpwnam SELECT username,'x',uid,gid,'Froxlor Customer',homedir,shell \ FROM ftp_users \ WHERE username='%1$s' \ AND login_enabled = 'Y' \ + ORDER BY LENGTH(username) \ LIMIT 1 getpwuid SELECT username,'x',uid,gid,'Froxlor Customer',homedir,shell \ FROM ftp_users \ WHERE uid='%1$u' \ AND login_enabled = 'Y' \ + ORDER BY LENGTH(username) \ LIMIT 1 getspnam SELECT username,password,FLOOR(UNIX_TIMESTAMP()/86400-1),'1','99999','7','-1','-1','0' \ FROM ftp_users \ WHERE username='%1$s' \ AND login_enabled = 'Y' \ + ORDER BY LENGTH(username) \ LIMIT 1 getpwent SELECT username,'x',uid,gid,'Froxlor Customer',homedir,shell \ FROM ftp_users diff --git a/lib/configfiles/trusty.xml b/lib/configfiles/trusty.xml index 7da3e553..55a478c5 100644 --- a/lib/configfiles/trusty.xml +++ b/lib/configfiles/trusty.xml @@ -1441,16 +1441,19 @@ getpwnam SELECT username,'x',uid,gid,'Froxlor Customer',homedir,shell \ FROM ftp_users \ WHERE username='%1$s' \ AND login_enabled = 'Y' \ + ORDER BY LENGTH(username) \ LIMIT 1 getpwuid SELECT username,'x',uid,gid,'Froxlor Customer',homedir,shell \ FROM ftp_users \ WHERE uid='%1$u' \ AND login_enabled = 'Y' \ + ORDER BY LENGTH(username) \ LIMIT 1 getspnam SELECT username,password,FLOOR(UNIX_TIMESTAMP()/86400-1),'1','99999','7','-1','-1','0' \ FROM ftp_users \ WHERE username='%1$s' \ AND login_enabled = 'Y' \ + ORDER BY LENGTH(username) \ LIMIT 1 getpwent SELECT username,'x',uid,gid,'Froxlor Customer',homedir,shell \ FROM ftp_users diff --git a/lib/configfiles/wheezy.xml b/lib/configfiles/wheezy.xml index 27c20553..4c9904fe 100644 --- a/lib/configfiles/wheezy.xml +++ b/lib/configfiles/wheezy.xml @@ -4954,16 +4954,19 @@ getpwnam SELECT username,'x',uid,gid,'Froxlor Customer',homedir,shell \ FROM ftp_users \ WHERE username='%1$s' \ AND login_enabled = 'Y' \ + ORDER BY LENGTH(username) \ LIMIT 1 getpwuid SELECT username,'x',uid,gid,'Froxlor Customer',homedir,shell \ FROM ftp_users \ WHERE uid='%1$u' \ AND login_enabled = 'Y' \ + ORDER BY LENGTH(username) \ LIMIT 1 getspnam SELECT username,password,FLOOR(UNIX_TIMESTAMP()/86400-1),'1','99999','7','-1','-1','0' \ FROM ftp_users \ WHERE username='%1$s' \ AND login_enabled = 'Y' \ + ORDER BY LENGTH(username) \ LIMIT 1 getpwent SELECT username,'x',uid,gid,'Froxlor Customer',homedir,shell \ FROM ftp_users