summaryrefslogtreecommitdiff
path: root/src/pwd/getpwnam.c
blob: f880aedc725b7f6a00fe378f5a4f4f5396b33849 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <sys/types.h>
#include <pwd.h>
#include <string.h>
#include "_pwd.h"

struct passwd * getpwnam(const char * name)
{
	struct passwd *pwd = NULL;
	setpwent();

	while ((pwd = getpwent()) != NULL) {
		if (strcmp(name, pwd->pw_name) == 0) {
			endpwent();
			return pwd;
		}
	}
	
	endpwent();
	return NULL;
}

/*
POSIX(1)
*/