witam, w złączniku patch na speca i łata poprawiająca błąd

Aug 22 11:12:58 XXX passwd[15409]: PAM unable to dlopen(/lib64/security/pam_mysql.so): /lib64/security/pam_mysql.so: undefined symbol: make_scrambled_password

występujący podczas próby zalogowania na konto znajdujące się w bazie mysql (wykorzystując moduł libnss-mysql lub nss_mysql) - łata pożyczona od fedory, buduje się i działa na x86_64 (na i686 nie mam możliwości sprawdzenia), jeśli jest wszystko ok to proszę o dodanie do repo, jeśli nie to proszę o uwagi, pozdrawiam
diff -u pam-pam_mysql.old/pam-pam_mysql.spec pam-pam_mysql/pam-pam_mysql.spec
--- pam-pam_mysql.old/pam-pam_mysql.spec	2011-08-22 13:15:52.000000000 +0200
+++ pam-pam_mysql/pam-pam_mysql.spec	2011-08-22 13:16:19.000000000 +0200
@@ -13,6 +13,7 @@
 Source0:	http://dl.sourceforge.net/pam-mysql/%{modulename}-%{version}%{subver}.tar.gz
 # Source0-md5:	6177183d7e98dc12f2e444c9fbd4f13c
 Patch0:		ac.patch
+Patch1:		pam-%{modulename}-scrambled.patch
 URL:		http://sourceforge.net/projects/pam-mysql/
 BuildRequires:	autoconf >= 2.57
 BuildRequires:	automake
@@ -37,6 +38,7 @@
 %prep
 %setup -q -n %{modulename}-%{version}%{subver}
 %patch0 -p1
+%patch1 -p1
 %{__sed} -i -e 's/sinclude(.*)//' configure.in
 
 %build
diff -u pam_mysql-0.7RC1/pam_mysql.c pam_mysql-0.7RC1.scrambled/pam_mysql.c
--- pam_mysql-0.7RC1/pam_mysql.c	2006-01-09 11:35:59.000000000 +0100
+++ pam_mysql-0.7RC1.scrambled/pam_mysql.c	2011-06-09 20:20:46.346658126 +0200
@@ -2554,6 +2554,11 @@
 }
 /* }}} */
 
+void my_make_scrambled_password(
+     char *to,
+     const char *password,
+     size_t pass_len);
+
 /* {{{ pam_mysql_check_passwd
  */
 static pam_mysql_err_t pam_mysql_check_passwd(pam_mysql_ctx_t *ctx,
@@ -2655,7 +2660,7 @@
 						make_scrambled_password(buf, passwd);
 					}
 #else
-					make_scrambled_password(buf, passwd);
+					my_make_scrambled_password(buf, passwd, strlen(passwd));
 #endif
 
 					vresult = strcmp(row[0], buf);
@@ -2846,7 +2851,7 @@
 					make_scrambled_password(encrypted_passwd, new_passwd);
 				}
 #else
-				make_scrambled_password(encrypted_passwd, new_passwd);
+				my_make_scrambled_password(encrypted_passwd, new_passwd, strlen(new_passwd));
 #endif
 				break;
 
_______________________________________________
pld-devel-pl mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-devel-pl

Odpowiedź listem elektroniczym