Lines Matching full:up
70 /* type UE_FETCH -- look up in local database */
84 # define UDB_REMOTE 2 /* look up in remote database */
85 # define UDB_DBFETCH 3 /* look up in local database */
87 # define UDB_HESIOD 5 /* look up via hesiod */
105 ** UDBEXPAND -- look up user in database and expand
136 register struct udbent *up; local
185 for (up = UdbEnts; !breakout; up++)
214 switch (up->udb_type)
224 i = (*up->udb_dbp->seq)(up->udb_dbp, &key, &info, R_CURSOR);
229 (errno = (*up->udb_dbp->cursor)(up->udb_dbp,
232 (errno = (*up->udb_dbp->cursor)(up->udb_dbp,
308 i = (*up->udb_dbp->seq)(up->udb_dbp, &key, &info, R_NEXT);
366 i = (*up->udb_dbp->get)(up->udb_dbp, &key, &info, 0);
368 i = errno = (*up->udb_dbp->get)(up->udb_dbp, NULL,
397 /* look up the key via hesiod */
516 i = strlen(up->udb_fwdhost) + strlen(a->q_user) + 1;
523 a->q_user, "@", up->udb_fwdhost);
581 ** field -- the field to look up.
599 register struct udbent *up; local
642 for (up = UdbEnts; up->udb_type != UDB_EOLIST; up++)
648 switch (up->udb_type)
657 i = (*up->udb_dbp->get)(up->udb_dbp, &key, &info, 0);
659 i = errno = (*up->udb_dbp->get)(up->udb_dbp, NULL,
716 for (up = UdbEnts; up->udb_type != UDB_EOLIST; up++)
718 switch (up->udb_type)
723 if (up->udb_default == NULL)
730 i = (*up->udb_dbp->get)(up->udb_dbp,
733 i = errno = (*up->udb_dbp->get)(up->udb_dbp,
740 up->udb_default = "";
745 up->udb_default = sm_pmalloc_x(info.size + 1);
746 memmove(up->udb_default, info.data, info.size);
747 up->udb_default[info.size] = '\0';
749 else if (up->udb_default[0] == '\0')
758 i = (*up->udb_dbp->get)(up->udb_dbp, &key, &info, 0);
760 i = errno = (*up->udb_dbp->get)(up->udb_dbp, NULL,
770 i = strlen(user) + strlen(up->udb_default) + 2;
772 (void) sm_strlcpyn(p, i, 3, user, "@", up->udb_default);
781 if (up->udb_default == NULL)
790 up->udb_default = "";
795 up->udb_default = sm_pmalloc_x(info.size + 1);
796 memmove(up->udb_default, info.data, info.size);
797 up->udb_default[info.size] = '\0';
799 else if (up->udb_default[0] == '\0')
813 i = strlen(user) + strlen(up->udb_default) + 2;
815 (void) sm_strlcpyn(p, i, 3, user, "@", up->udb_default);
828 ** UDB_MAP_LOOKUP -- look up arbitrary entry in user database map
832 ** name -- the name to look up.
909 register struct udbent *up; local
920 up = UdbEnts;
965 up->udb_type = UDB_FORWARD;
966 up->udb_pid = CurrentPid;
967 up->udb_fwdhost = spec + 1;
969 up++;
977 up->udb_type = UDB_HESIOD;
978 up->udb_pid = CurrentPid;
980 up++;
985 case '/': /* look up remote name */
989 up->udb_dbname = spec;
993 up->udb_dbname = sm_pmalloc_x(l + 4);
994 (void) sm_strlcpyn(up->udb_dbname, l + 4, 2,
999 up->udb_dbp = dbopen(up->udb_dbname, O_RDONLY,
1009 up->udb_dbp = NULL;
1011 ret = db_create(&up->udb_dbp, NULL, 0);
1014 (void) up->udb_dbp->close(up->udb_dbp,
1016 up->udb_dbp = NULL;
1020 ret = up->udb_dbp->open(up->udb_dbp,
1022 up->udb_dbname,
1033 (void) up->udb_dbp->close(up->udb_dbp, 0);
1034 up->udb_dbp = NULL;
1039 errno = db_open(up->udb_dbname, DB_BTREE,
1041 NULL, &up->udb_dbp);
1045 if (up->udb_dbp == NULL)
1056 up->udb_dbname,
1069 up->udb_dbname,
1071 up->udb_type = UDB_EOLIST;
1072 if (up->udb_dbname != spec)
1073 sm_free(up->udb_dbname); /* XXX */
1076 if (up->udb_dbname != spec)
1077 sm_free(up->udb_dbname); /* XXX */
1087 up->udb_dbname);
1089 up->udb_type = UDB_DBFETCH;
1090 up->udb_pid = CurrentPid;
1092 up++;
1104 up->udb_type = UDB_EOLIST;
1108 for (up = UdbEnts; up->udb_type != UDB_EOLIST; up++)
1110 switch (up->udb_type)
1114 anynet_ntoa((SOCKADDR *) &up->udb_addr),
1115 up->udb_timeout);
1120 sm_dprintf("FETCH: file %s\n", up->udb_dbname);
1128 up->udb_fwdhost);
1152 for (up = UdbEnts; up->udb_type != UDB_EOLIST; up++)
1154 if (up->udb_type == UDB_DBFETCH)
1157 (*up->udb_dbp->close)(up->udb_dbp);
1159 errno = (*up->udb_dbp->close)(up->udb_dbp, 0);
1163 up->udb_dbname);
1211 struct udbent *up; in _udbx_close() local
1216 for (up = UdbEnts; up->udb_type != UDB_EOLIST; up++) in _udbx_close()
1218 if (up->udb_pid != CurrentPid) in _udbx_close()
1222 if (up->udb_type == UDB_DBFETCH) in _udbx_close()
1225 (*up->udb_dbp->close)(up->udb_dbp); in _udbx_close()
1227 errno = (*up->udb_dbp->close)(up->udb_dbp, 0); in _udbx_close()
1232 up->udb_dbname); in _udbx_close()