Re: Andreas Jochens 2004-09-28 <[EMAIL PROTECTED]> > With the attached patch 'libnss-pgsql' can be compiled with both > linuxthreads and nptl.
Hi,
the diff for the NMU I've just uploaded is attached below.
debdiff libnss-pgsql_1.3.dsc /srv/pbuilder/result/libnss-pgsql_1.3-0.1.dsc
debian/changelog | 7 +++++++
src/interface.c | 50 ++++++++++++++++++++++++--------------------------
2 files changed, 31 insertions(+), 26 deletions(-)
diff -Nru /srv/tmp/A6vK5HIiHX/libnss-pgsql-1.3/debian/changelog
/srv/tmp/pe9MU98woq/libnss-pgsql-1.3/debian/changelog
--- /srv/tmp/A6vK5HIiHX/libnss-pgsql-1.3/debian/changelog 2005-03-25
23:25:41.000000000 +0100
+++ /srv/tmp/pe9MU98woq/libnss-pgsql-1.3/debian/changelog 2006-03-14
15:21:03.000000000 +0100
@@ -1,3 +1,10 @@
+libnss-pgsql (1.3-0.1) unstable; urgency=low
+
+ * Non-maintainer upload.
+ * Apply patch to fix FTBFS on amd64 (Closes: #273800).
+
+ -- Christian Bayle <[EMAIL PROTECTED]> Tue, 14 Mar 2006 15:20:16 +0100
+
libnss-pgsql (1.3) unstable; urgency=low
* Applied a patch to remove SIGBUS error on sparc (Closes: Bug#285431)
diff -Nru /srv/tmp/A6vK5HIiHX/libnss-pgsql-1.3/src/interface.c
/srv/tmp/pe9MU98woq/libnss-pgsql-1.3/src/interface.c
--- /srv/tmp/A6vK5HIiHX/libnss-pgsql-1.3/src/interface.c 2005-02-19
16:12:32.000000000 +0100
+++ /srv/tmp/pe9MU98woq/libnss-pgsql-1.3/src/interface.c 2006-03-14
15:20:05.000000000 +0100
@@ -11,11 +11,9 @@
#include "nss-pgsql.h"
#include <stdio.h>
#include <stdlib.h>
-#define _LIBC
-#define NOT_IN_libc
-#include <bits/libc-lock.h>
+#include <pthread.h>
-static __libc_lock_t lock;
+static pthread_mutex_t lock;
/*
* passwd functions
@@ -25,14 +23,14 @@
{
enum nss_status retval = NSS_STATUS_UNAVAIL;
- __libc_lock_lock(lock);
+ pthread_mutex_lock(&lock);
if(!backend_isopen()) {
backend_open();
}
if(backend_isopen()) {
retval = backend_prepare_passwd();
}
- __libc_lock_unlock(lock);
+ pthread_mutex_unlock(&lock);
return retval;
}
@@ -40,9 +38,9 @@
enum nss_status
_nss_pgsql_endpwent(void)
{
- __libc_lock_lock(lock);
+ pthread_mutex_lock(&lock);
backend_close();
- __libc_lock_unlock(lock);
+ pthread_mutex_unlock(&lock);
return NSS_STATUS_SUCCESS;
}
@@ -55,7 +53,7 @@
{
enum nss_status retval = NSS_STATUS_UNAVAIL;
- __libc_lock_lock(lock);
+ pthread_mutex_lock(&lock);
// Make sure the database is opened in case no one has called
setpwent()
if(!backend_isopen())
@@ -64,7 +62,7 @@
if(backend_isopen())
retval = backend_getpwent(result, buffer, buflen, errnop);
- __libc_lock_unlock(lock);
+ pthread_mutex_unlock(&lock);
return retval;
}
@@ -78,12 +76,12 @@
{
enum nss_status retval = NSS_STATUS_UNAVAIL;
- __libc_lock_lock(lock);
+ pthread_mutex_lock(&lock);
if(backend_open()) {
retval = backend_getpwnam(pwnam, result, buffer, buflen,
errnop);
backend_close();
}
- __libc_lock_unlock(lock);
+ pthread_mutex_unlock(&lock);
return retval;
}
@@ -97,12 +95,12 @@
{
enum nss_status retval = NSS_STATUS_UNAVAIL;
- __libc_lock_lock(lock);
+ pthread_mutex_lock(&lock);
if(backend_open()) {
retval = backend_getpwuid(uid, result, buffer, buflen, errnop);
backend_close();
}
- __libc_lock_unlock(lock);
+ pthread_mutex_unlock(&lock);
return retval;
}
@@ -115,7 +113,7 @@
{
enum nss_status retval = NSS_STATUS_UNAVAIL;
- __libc_lock_lock(lock);
+ pthread_mutex_lock(&lock);
if(!backend_isopen()) {
backend_open();
}
@@ -123,7 +121,7 @@
retval = backend_prepare_group();
retval = NSS_STATUS_SUCCESS;
}
- __libc_lock_unlock(lock);
+ pthread_mutex_unlock(&lock);
return NSS_STATUS_SUCCESS;
}
@@ -131,9 +129,9 @@
enum nss_status
_nss_pgsql_endgrent(void)
{
- __libc_lock_lock(lock);
+ pthread_mutex_lock(&lock);
backend_close();
- __libc_lock_unlock(lock);
+ pthread_mutex_unlock(&lock);
return NSS_STATUS_SUCCESS;
}
@@ -146,7 +144,7 @@
{
enum nss_status retval = NSS_STATUS_UNAVAIL;
- __libc_lock_lock(lock);
+ pthread_mutex_lock(&lock);
// Make sure the database is opened in case no one has called
setpwent()
if(!backend_isopen())
@@ -155,7 +153,7 @@
if(backend_isopen())
retval = backend_getgrent(result, buffer, buflen, errnop);
- __libc_lock_unlock(lock);
+ pthread_mutex_unlock(&lock);
return retval;
}
@@ -169,12 +167,12 @@
{
enum nss_status retval = NSS_STATUS_UNAVAIL;
- __libc_lock_lock(lock);
+ pthread_mutex_lock(&lock);
if(backend_open()) {
retval = backend_getgrnam(grnam, result, buffer, buflen,
errnop);
backend_close();
}
- __libc_lock_unlock(lock);
+ pthread_mutex_unlock(&lock);
return retval;
}
@@ -188,12 +186,12 @@
{
enum nss_status retval = NSS_STATUS_UNAVAIL;
- __libc_lock_lock(lock);
+ pthread_mutex_lock(&lock);
if(backend_open()) {
retval = backend_getgrgid(gid, result, buffer, buflen, errnop);
backend_close();
}
- __libc_lock_unlock(lock);
+ pthread_mutex_unlock(&lock);
return retval;
}
@@ -210,14 +208,14 @@
enum nss_status retval = NSS_STATUS_UNAVAIL;
size_t numgroups;
- __libc_lock_lock(lock);
+ pthread_mutex_lock(&lock);
if(backend_open()) {
numgroups = backend_initgroups_dyn(user, group, start, size,
groupsp,
limit, errnop);
retval = (numgroups > 0) ? NSS_STATUS_SUCCESS :
NSS_STATUS_NOTFOUND;
backend_close();
}
- __libc_lock_unlock(lock);
+ pthread_mutex_unlock(&lock);
return retval;
}
Christoph
--
[EMAIL PROTECTED] | http://www.df7cb.de/
signature.asc
Description: Digital signature

