X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/become/blobdiff_plain/b40be44ec9ffc760989b302d85a96f13cb95c1f2..a340752b9da6b63515d164fd5bb025b2be551a7a:/src/userdb.c diff --git a/src/userdb.c b/src/userdb.c index 2db8ee5..05ace82 100644 --- a/src/userdb.c +++ b/src/userdb.c @@ -1,6 +1,6 @@ /* -*-c-*- * - * $Id: userdb.c,v 1.6 1998/01/12 16:46:33 mdw Exp $ + * $Id: userdb.c,v 1.7 1998/04/23 13:27:46 mdw Exp $ * * User database management * @@ -29,6 +29,9 @@ /*----- Revision history --------------------------------------------------* * * $Log: userdb.c,v $ + * Revision 1.7 1998/04/23 13:27:46 mdw + * Switch to using the ypstuff interface to YP server. + * * Revision 1.6 1998/01/12 16:46:33 mdw * Fix copyright date. * @@ -68,12 +71,6 @@ #include -#ifdef HAVE_YP -# include -# include -# include -#endif - #include #include #include @@ -84,6 +81,7 @@ #include "sym.h" #include "userdb.h" #include "utils.h" +#include "ypstuff.h" /*----- Type definitions --------------------------------------------------*/ @@ -683,12 +681,10 @@ static int userdb__foreachGroup(int st, char *k, int ksz, void userdb_yp(void) { - char *ypdom; - /* --- Bind to a server --- */ - if (yp_get_default_domain(&ypdom) || - yp_bind(ypdom)) + ypstuff_bind(); + if (!yp_domain) return; T( trace(TRACE_DEBUG, "debug: adding NIS users"); ) @@ -697,17 +693,15 @@ void userdb_yp(void) { static struct ypall_callback ucb = { userdb__foreachUser, 0 }; - yp_all(ypdom, "passwd.byuid", &ucb); + yp_all(yp_domain, "passwd.byuid", &ucb); } /* --- Fetch the groups map --- */ { static struct ypall_callback gcb = { userdb__foreachGroup, 0 }; - yp_all(ypdom, "group.bygid", &gcb); + yp_all(yp_domain, "group.bygid", &gcb); } - - yp_unbind(ypdom); } #else @@ -816,20 +810,21 @@ void dumpit(const char *msg) int main(void) { ego("userdb-test"); -/* traceon(stdout, TRACE_ALL); */ + traceon(stdout, TRACE_ALL); userdb_init(); userdb_local(); userdb_yp(); - printf("loaded (%lu)\n", track_memused()); + dumpit("spong"); +/* printf("loaded (%lu)\n", track_memused()); */ getchar(); for (;;) { userdb_end(); - printf("cleared (%lu)\n", track_memused()); +/* printf("cleared (%lu)\n", track_memused()); */ /* track_memlist(); */ userdb_init(); userdb_local(); userdb_yp(); - printf("reloaded (%lu)\n", track_memused()); +/* printf("reloaded (%lu)\n", track_memused()); */ getchar(); } return (0);