summaryrefslogtreecommitdiff
path: root/greet.h
diff options
context:
space:
mode:
authorAlan Coopersmith <Alan.Coopersmith@sun.com>2006-06-27 01:25:40 +0000
committerAlan Coopersmith <Alan.Coopersmith@sun.com>2006-06-27 01:25:40 +0000
commit6329bf48b0f775335e552967622bf53912131edb (patch)
treea9be1138f850ad1f4c33628aaec674e05f74091a /greet.h
parent6bf94d0ed871db12e8e5aa48200ce3b548895b8f (diff)
Bugzilla #7318 <https://bugs.freedesktop.org/show_bug.cgi?id=7318> Patch
#6032 <https://bugs.freedesktop.org/attachment.cgi?id=6032> xdm crashes on Hurd because of incongruity in dlfuncs (J.P. Larocque)
Diffstat (limited to 'greet.h')
-rw-r--r--greet.h24
1 files changed, 16 insertions, 8 deletions
diff --git a/greet.h b/greet.h
index ca0d882..3854328 100644
--- a/greet.h
+++ b/greet.h
@@ -78,10 +78,12 @@ struct dlfuncs {
void (*_endgrent)(void); /* no longer used */
#ifdef USESHADOW
struct spwd *(*_getspnam)(GETSPNAM_ARGS);
+# ifndef QNX4
void (*_endspent)(void);
+# endif /* QNX4 doesn't use endspent */
#endif
struct passwd *(*_getpwnam)(GETPWNAM_ARGS);
-#ifdef linux
+#if defined(linux) || defined(__GLIBC__)
void (*_endpwent)(void);
#endif
char *(*_crypt)(CRYPT_ARGS);
@@ -160,10 +162,12 @@ extern struct group *(*__xdm_getgrent)(void);
extern void (*__xdm_endgrent)(void);
#ifdef USESHADOW
extern struct spwd *(*__xdm_getspnam)(GETSPNAM_ARGS);
+# ifndef QNX4
extern void (*__xdm_endspent)(void);
+# endif /* QNX4 doesn't use endspent */
#endif
extern struct passwd *(*__xdm_getpwnam)(GETPWNAM_ARGS);
-#ifdef linux
+#if defined(linux) || defined(__GLIBC__)
extern void (*__xdm_endpwent)(void);
#endif
extern char *(*__xdm_crypt)(CRYPT_ARGS);
@@ -199,14 +203,18 @@ extern pam_handle_t **(*__xdm_thepamhp)(void);
#define getgrent (*__xdm_getgrent)
#define endgrent (*__xdm_endgrent)
#ifdef USESHADOW
-#define getspnam (*__xdm_getspnam)
-#define endspent (*__xdm_endspent)
-#endif
-#ifdef linux
-#define endpwent (*__xdm_endpwent)
+# define getspnam (*__xdm_getspnam)
+# ifndef QNX4
+# define endspent (*__xdm_endspent)
+# endif /* QNX4 doesn't use endspent */
#endif
#define getpwnam (*__xdm_getpwnam)
+#if defined(linux) || defined(__GLIBC__)
+# define endpwent (*__xdm_endpwent)
+#endif
#define crypt (*__xdm_crypt)
-#define thepamhp (*__xdm_thepamhp)
+#ifdef USE_PAM
+# define thepamhp (*__xdm_thepamhp)
+#endif
#endif /* GREET_LIB */