View | Details | Raw Unified | Return to bug 2086 | Differences between
and this patch

Collapse All | Expand All

(-)auth.c (+2 lines)
Lines 721-727 fakepw(void) Link Here
721
	fake.pw_name = "NOUSER";
721
	fake.pw_name = "NOUSER";
722
	fake.pw_passwd =
722
	fake.pw_passwd =
723
	    "$2a$06$r3.juUaHZDlIbQaO2dS9FuYxL1W9M81R1Tc92PoSNmzvpEqLkLGrK";
723
	    "$2a$06$r3.juUaHZDlIbQaO2dS9FuYxL1W9M81R1Tc92PoSNmzvpEqLkLGrK";
724
#ifdef HAVE_PW_GECOS_IN_PASSWD
724
	fake.pw_gecos = "NOUSER";
725
	fake.pw_gecos = "NOUSER";
726
#endif
725
	fake.pw_uid = privsep_pw == NULL ? (uid_t)-1 : privsep_pw->pw_uid;
727
	fake.pw_uid = privsep_pw == NULL ? (uid_t)-1 : privsep_pw->pw_uid;
726
	fake.pw_gid = privsep_pw == NULL ? (gid_t)-1 : privsep_pw->pw_gid;
728
	fake.pw_gid = privsep_pw == NULL ? (gid_t)-1 : privsep_pw->pw_gid;
727
#ifdef HAVE_PW_CLASS_IN_PASSWD
729
#ifdef HAVE_PW_CLASS_IN_PASSWD
(-)configure.ac (+7 lines)
Lines 3302-3307 OSSH_CHECK_HEADER_FOR_FIELD([ut_time], [ Link Here
3302
OSSH_CHECK_HEADER_FOR_FIELD([ut_tv], [utmpx.h], [HAVE_TV_IN_UTMPX])
3302
OSSH_CHECK_HEADER_FOR_FIELD([ut_tv], [utmpx.h], [HAVE_TV_IN_UTMPX])
3303
3303
3304
AC_CHECK_MEMBERS([struct stat.st_blksize])
3304
AC_CHECK_MEMBERS([struct stat.st_blksize])
3305
AC_CHECK_MEMBER([struct passwd.pw_gecos], [AC_DEFINE(
3306
	[HAVE_PW_GECOS_IN_PASSWD], [1],
3307
	[Define if struct passwd has a pw_gecos member])], [], [
3308
#include <sys/types.h>
3309
#include <pwd.h>
3310
])
3311
3305
AC_CHECK_MEMBER([struct __res_state.retrans], [], [AC_DEFINE([__res_state], [state],
3312
AC_CHECK_MEMBER([struct __res_state.retrans], [], [AC_DEFINE([__res_state], [state],
3306
	[Define if we don't have struct __res_state in resolv.h])],
3313
	[Define if we don't have struct __res_state in resolv.h])],
3307
[
3314
[
(-)misc.c (+2 lines)
Lines 206-212 pwcopy(struct passwd *pw) Link Here
206
206
207
	copy->pw_name = xstrdup(pw->pw_name);
207
	copy->pw_name = xstrdup(pw->pw_name);
208
	copy->pw_passwd = xstrdup(pw->pw_passwd);
208
	copy->pw_passwd = xstrdup(pw->pw_passwd);
209
#ifdef HAVE_PW_GECOS_IN_PASSWD
209
	copy->pw_gecos = xstrdup(pw->pw_gecos);
210
	copy->pw_gecos = xstrdup(pw->pw_gecos);
211
#endif
210
	copy->pw_uid = pw->pw_uid;
212
	copy->pw_uid = pw->pw_uid;
211
	copy->pw_gid = pw->pw_gid;
213
	copy->pw_gid = pw->pw_gid;
212
#ifdef HAVE_PW_EXPIRE_IN_PASSWD
214
#ifdef HAVE_PW_EXPIRE_IN_PASSWD
(-)monitor.c (+2 lines)
Lines 778-784 mm_answer_pwnamallow(int sock, Buffer *m Link Here
778
	buffer_put_string(m, pwent, sizeof(struct passwd));
778
	buffer_put_string(m, pwent, sizeof(struct passwd));
779
	buffer_put_cstring(m, pwent->pw_name);
779
	buffer_put_cstring(m, pwent->pw_name);
780
	buffer_put_cstring(m, "*");
780
	buffer_put_cstring(m, "*");
781
#ifdef HAVE_PW_GECOS_IN_PASSWD
781
	buffer_put_cstring(m, pwent->pw_gecos);
782
	buffer_put_cstring(m, pwent->pw_gecos);
783
#endif
782
#ifdef HAVE_PW_CLASS_IN_PASSWD
784
#ifdef HAVE_PW_CLASS_IN_PASSWD
783
	buffer_put_cstring(m, pwent->pw_class);
785
	buffer_put_cstring(m, pwent->pw_class);
784
#endif
786
#endif
(-)monitor_wrap.c (+2 lines)
Lines 259-265 mm_getpwnamallow(const char *username) Link Here
259
		fatal("%s: struct passwd size mismatch", __func__);
259
		fatal("%s: struct passwd size mismatch", __func__);
260
	pw->pw_name = buffer_get_string(&m, NULL);
260
	pw->pw_name = buffer_get_string(&m, NULL);
261
	pw->pw_passwd = buffer_get_string(&m, NULL);
261
	pw->pw_passwd = buffer_get_string(&m, NULL);
262
#ifdef HAVE_PW_GECOS_IN_PASSWD
262
	pw->pw_gecos = buffer_get_string(&m, NULL);
263
	pw->pw_gecos = buffer_get_string(&m, NULL);
264
#endif
263
#ifdef HAVE_PW_CLASS_IN_PASSWD
265
#ifdef HAVE_PW_CLASS_IN_PASSWD
264
	pw->pw_class = buffer_get_string(&m, NULL);
266
	pw->pw_class = buffer_get_string(&m, NULL);
265
#endif
267
#endif

Return to bug 2086