568
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
1 /* vi: set sw=4 ts=4:
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
2 *
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
3 * logname.c - Print user's login name.
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
4 *
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
5 * Copyright 2012 Elie De Brauwer <eliedebrauwer@gmail.com>
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
6 *
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
7 * See http://pubs.opengroup.org/onlinepubs/9699919799/utilities/logname.html
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
8
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
9 USE_LOGNAME(NEWTOY(logname, ">0", TOYFLAG_BIN))
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
10
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
11 config LOGNAME
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
12 bool "logname"
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
13 default y
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
14 help
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
15 usage: logname
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
16
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
17 Prints the calling user's name or an error when this cannot be
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
18 determined.
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
19 */
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
20
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
21 #include "toys.h"
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
22
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
23 void logname_main(void)
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
24 {
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
25 if (getlogin_r(toybuf, sizeof(toybuf))){
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
26 error_exit("no login name");
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
27 }
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
28 xputs(toybuf);
|
Elie De Brauwer <eliedebrauwer@gmail.com>
parents:
diff
changeset
|
29 }
|