Start reading users from /etc/passwd
This commit is contained in:
parent
ceb629a90a
commit
d7840e0ccf
|
@ -135,10 +135,27 @@ ssize_t writeall(int fd, const char *buf, size_t amount) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void handle_userlist(int sock) {
|
void handle_userlist(int sock) {
|
||||||
const char *response = "Who do you want to finger?\r\n";
|
// Go over users' home dirs and see if .finger-response is present
|
||||||
if(writeall(sock, response, strlen(response)) < 0) {
|
FILE *passwd = fopen("/etc/passwd", "r");
|
||||||
log_perror("write");
|
|
||||||
|
while(!feof(passwd)) {
|
||||||
|
char *line = NULL;
|
||||||
|
size_t line_length;
|
||||||
|
|
||||||
|
// FIXME: Funkiness with eof
|
||||||
|
if(getline(&line, &line_length, passwd) < 0) {
|
||||||
|
// Bail out on error
|
||||||
|
perror("getline");
|
||||||
|
free(line);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
printf("%s", line); //debg
|
||||||
|
|
||||||
|
free(line);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fclose(passwd);
|
||||||
}
|
}
|
||||||
|
|
||||||
void handle_query(int sock, const char *username) {
|
void handle_query(int sock, const char *username) {
|
||||||
|
|
Loading…
Reference in New Issue