Lines Matching defs:ids
1 /* $OpenBSD: ids.c,v 1.15 2021/06/30 13:10:04 claudio Exp $ */
53 const struct ident *ids, size_t idsz)
63 if ((int32_t)fl[i].st.gid == ids[j].id)
66 fl[i].st.gid = ids[j].mapped;
75 const struct ident *ids, size_t idsz)
85 if ((int32_t)fl[i].st.uid == ids[j].id)
88 fl[i].st.uid = ids[j].mapped;
101 idents_remap(struct sess *sess, int isgid, struct ident *ids, size_t idsz)
112 assert(ids[i].id != 0);
118 grp = getgrnam(ids[i].name);
124 usr = getpwnam(ids[i].name);
138 if (ids[i].name[0] == '\0')
139 ids[i].mapped = ids[i].id;
141 ids[i].mapped = ids[i].id;
143 ids[i].mapped = id;
146 ids[i].name, ids[i].id, ids[i].mapped);
158 idents_add(int isgid, struct ident **ids, size_t *idsz, int32_t id)
170 if ((*ids)[i].id == id)
204 pp = reallocarray(*ids, *idsz + 1, sizeof(struct ident));
209 *ids = pp;
210 (*ids)[*idsz].id = id;
211 (*ids)[*idsz].name = strdup(name);
212 if ((*ids)[*idsz].name == NULL) {
218 (*ids)[*idsz].name, (*ids)[*idsz].id);
231 int fd, const struct ident *ids, size_t idsz)
236 assert(ids[i].name != NULL);
237 assert(ids[i].id != 0);
238 sz = strlen(ids[i].name);
240 if (!io_write_uint(sess, fd, ids[i].id)) {
246 } else if (!io_write_buf(sess, fd, ids[i].name, sz)) {
268 int fd, struct ident **ids, size_t *idsz)
281 pp = reallocarray(*ids,
287 *ids = pp;
288 memset(&(*ids)[*idsz], 0, sizeof(struct ident));
303 (*ids)[*idsz].id = id;
304 (*ids)[*idsz].name = calloc(sz + 1, 1);
305 if ((*ids)[*idsz].name == NULL) {
309 if (!io_read_buf(sess, fd, (*ids)[*idsz].name, sz)) {