patches for NeXT weirdness
diff --git a/Modules/grpmodule.c b/Modules/grpmodule.c
index ecb9ade..cff9d83 100644
--- a/Modules/grpmodule.c
+++ b/Modules/grpmodule.c
@@ -49,7 +49,13 @@
 	v = mkvalue("(sslO)",
 		       p->gr_name,
 		       p->gr_passwd,
+#if defined(NeXT) && defined(_POSIX_SOURCE) && defined(__LITTLE_ENDIAN__)
+/* Correct a bug present on Intel machines in NextStep 3.2 and 3.3;
+   for later versions you may have to remove this */
+		       (long)p->gr_short_pad, /* ugh-NeXT broke the padding */
+#else
 		       (long)p->gr_gid,
+#endif
 		       w);
 	DECREF(w);
 	return v;
diff --git a/Modules/pwdmodule.c b/Modules/pwdmodule.c
index a9253c2..ec0e848 100644
--- a/Modules/pwdmodule.c
+++ b/Modules/pwdmodule.c
@@ -36,8 +36,15 @@
 	return mkvalue("(ssllsss)",
 		       p->pw_name,
 		       p->pw_passwd,
+#if defined(NeXT) && defined(_POSIX_SOURCE) && defined(__LITTLE_ENDIAN__)
+/* Correct a bug present on Intel machines in NextStep 3.2 and 3.3;
+   for later versions you may have to remove this */
+		       (long)p->pw_short_pad1, /* ugh-NeXT broke the padding */
+		       (long)p->pw_short_pad2,
+#else
 		       (long)p->pw_uid,
 		       (long)p->pw_gid,
+#endif
 		       p->pw_gecos,
 		       p->pw_dir,
 		       p->pw_shell);