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);
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);
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);