Lines Matching refs:pwd
31 #include <pwd.h>
77 struct passwd *pwd;
106 nis_to_pwd(char *nis, struct passwd *pwd)
108 pwd->pw_name = strsep(&nis, ":");
109 pwd->pw_passwd = strsep(&nis, ":");
110 pwd->pw_uid = atoi(strsep(&nis, ":"));
111 pwd->pw_gid = atoi(strsep(&nis, ":"));
112 pwd->pw_gecos = strsep(&nis, ":");
113 pwd->pw_dir = strsep(&nis, ":");
114 pwd->pw_shell = nis;
115 if (pwd->pw_shell[0])
116 pwd->pw_shell[strlen(pwd->pw_shell)-1] = '\0';
157 if (uid == 0 || uid == buf->pwd->pw_uid) {
178 free(buf->pwd);
202 pw = nisbuf->pwd;
238 w->data.val_i = nisbuf->pwd->pw_uid;
241 w->data.val_i = nisbuf->pwd->pw_gid;
271 free(nisbuf->pwd);
294 nisbuf->pwd = malloc(sizeof (struct passwd));
295 if (nisbuf->pwd == NULL) {
309 free(nisbuf->pwd);
319 free(nisbuf->pwd);
328 (void) free(nisbuf->pwd);
337 nis_to_pwd(nisbuf->scratch, nisbuf->pwd);
347 if (nisbuf->pwd->pw_passwd[0] == '#' &&
348 nisbuf->pwd->pw_passwd[1] == '#') {
349 char *key = &nisbuf->pwd->pw_passwd[2];
363 nisbuf->pwd->pw_passwd = strsep(&p, ":");
397 nisbuf->pwd->pw_passwd, nisbuf->pwd);
410 nisbuf->pwd->pw_passwd = crypt(p->data.val_s, salt);
414 nisbuf->pwd->pw_uid = (uid_t)p->data.val_i;
417 nisbuf->pwd->pw_gid = (gid_t)p->data.val_i;
420 nisbuf->pwd->pw_age = p->data.val_s;
423 nisbuf->pwd->pw_comment = p->data.val_s;
426 nisbuf->pwd->pw_gecos = p->data.val_s;
429 nisbuf->pwd->pw_dir = p->data.val_s;
432 nisbuf->pwd->pw_shell = p->data.val_s;
471 yppasswd.newpw = *nisbuf->pwd;
508 if (nisbuf->pwd)
509 (void) free(nisbuf->pwd);