+2009-04-26 Nicolas François <nicolas.francois@centraliens.net>
+
+ * src/newgrp.c: Close the databases before changing the UDI and
+ GID.
+
2009-04-26 Nicolas François <nicolas.francois@centraliens.net>
* libmisc/myname.c: Updated splint annotations.
}
#endif
+ /*
+ * Close all files before changing the user/group IDs.
+ *
+ * The needed structure should have been copied before, or
+ * permission to read the database will be required.
+ */
+ endspent ();
+#ifdef SHADOWGRP
+ endsgent ();
+#endif
+ endpwent ();
+ endgrent ();
+
/*
* Set the effective GID to the new group id and the effective UID
* to the real UID. For root, this also sets the real GID to the
*/
cp = Basename ((char *) prog);
- endspent ();
-#ifdef SHADOWGRP
- endsgent ();
-#endif
- endpwent ();
- endgrent ();
-
/*
* Switch back to her home directory if i am doing login
* initialization.