]>
Commit | Line | Data |
---|---|---|
2023350e GKH |
1 | #ifdef __KLIBC__ |
2 | ||
3 | #ifndef KLIBC_FIXUPS_H | |
534c853d | 4 | #define KLIBC_FIXUPS_H |
2023350e | 5 | |
2023350e GKH |
6 | struct passwd { |
7 | char *pw_name; /* user name */ | |
8 | char *pw_passwd; /* user password */ | |
9 | uid_t pw_uid; /* user id */ | |
10 | gid_t pw_gid; /* group id */ | |
11 | char *pw_gecos; /* real name */ | |
12 | char *pw_dir; /* home directory */ | |
13 | char *pw_shell; /* shell program */ | |
14 | }; | |
15 | ||
82962619 KS |
16 | struct group { |
17 | char *gr_name; /* group name */ | |
18 | char *gr_passwd; /* group password */ | |
19 | gid_t gr_gid; /* group id */ | |
20 | char **gr_mem; /* group members */ | |
21 | }; | |
2023350e | 22 | |
82962619 KS |
23 | struct passwd *getpwnam(const char *name); |
24 | struct group *getgrnam(const char *name); | |
2023350e | 25 | |
2023350e | 26 | |
534c853d KS |
27 | #define UT_LINESIZE 32 |
28 | #define UT_NAMESIZE 32 | |
29 | #define UT_HOSTSIZE 256 | |
30 | #define USER_PROCESS 7 /* normal process */ | |
31 | #define ut_time ut_tv.tv_sec | |
32 | ||
33 | ||
34 | extern int ufd; | |
35 | ||
36 | struct exit_status { | |
37 | short int e_termination; /* process termination status */ | |
38 | short int e_exit; /* process exit status */ | |
39 | }; | |
40 | ||
41 | struct utmp | |
42 | { | |
43 | short int ut_type; /* type of login */ | |
44 | pid_t ut_pid; /* pid of login process */ | |
45 | char ut_line[UT_LINESIZE]; /* devicename */ | |
46 | char ut_id[4]; /* Inittab id */ | |
47 | char ut_user[UT_NAMESIZE]; /* username */ | |
48 | char ut_host[UT_HOSTSIZE]; /* hostname for remote login */ | |
49 | struct exit_status ut_exit; /* exit status of a process marked as DEAD_PROCESS */ | |
50 | /* The ut_session and ut_tv fields must be the same size for 32 and 64-bit */ | |
51 | #if __WORDSIZE == 64 && defined __WORDSIZE_COMPAT32 | |
52 | int32_t ut_session; /* sid used for windowing */ | |
53 | struct { | |
54 | int32_t tv_sec; /* seconds */ | |
55 | int32_t tv_usec; /* microseconds */ | |
56 | } ut_tv; | |
57 | #else | |
58 | long int ut_session; | |
59 | struct timeval ut_tv; | |
2023350e | 60 | #endif |
534c853d KS |
61 | int32_t ut_addr_v6[4]; /* internet address of remote host */ |
62 | char __unused[20]; /* reserved for future use */ | |
63 | }; | |
64 | ||
65 | struct utmp *getutent(void); | |
66 | void setutent(void); | |
67 | void endutent(void); | |
68 | ||
69 | ||
70 | #endif /* KLIBC_FIXUPS_H */ | |
71 | #endif /* __KLIBC__ */ |