Compile fixes for Linux

This commit is contained in:
Damien Miller 2002-03-13 13:46:44 +11:00
parent ec960955e9
commit c33566fef3
3 changed files with 10 additions and 1 deletions

View File

@ -366,7 +366,11 @@ mm_answer_pwnamallow(int socket, Buffer *m)
buffer_put_cstring(m, pwent->pw_name);
buffer_put_cstring(m, "*");
buffer_put_cstring(m, pwent->pw_gecos);
#if defined(HAVE_PW_CLASS_IN_PASSWD)
buffer_put_cstring(m, pwent->pw_class);
#else
#warning XXX - put an empty string instead to preserve protocol?
#endif
buffer_put_cstring(m, pwent->pw_dir);
buffer_put_cstring(m, pwent->pw_shell);

View File

@ -25,7 +25,7 @@
#ifndef _MM_H_
#define _MM_H_
#include <sys/tree.h>
#include <openbsd-compat/fake-tree.h>
struct mm_share {
RB_ENTRY(mm_share) next;

View File

@ -186,7 +186,10 @@ mm_getpwnamallow(int socket, const char *login, int *allowed)
pw->pw_name = buffer_get_string(&m, NULL);
pw->pw_passwd = buffer_get_string(&m, NULL);
pw->pw_gecos = buffer_get_string(&m, NULL);
#if defined(HAVE_PW_CLASS_IN_PASSWD)
#error XXX - get an empty string instead to preserve protocol?
pw->pw_class = buffer_get_string(&m, NULL);
#endif
pw->pw_dir = buffer_get_string(&m, NULL);
pw->pw_shell = buffer_get_string(&m, NULL);
buffer_free(&m);
@ -200,7 +203,9 @@ pwfree(struct passwd *pw)
xfree(pw->pw_name);
xfree(pw->pw_passwd);
xfree(pw->pw_gecos);
#if defined(HAVE_PW_CLASS_IN_PASSWD)
xfree(pw->pw_class);
#endif
xfree(pw->pw_dir);
xfree(pw->pw_shell);
xfree(pw);