@@ -17,6 +17,17 @@ pub type sem_t = _sem;
17
17
pub enum timezone { }
18
18
19
19
s ! {
20
+ pub struct utmpx {
21
+ pub ut_type: :: c_short,
22
+ pub ut_tv: :: timeval,
23
+ pub ut_id: [ :: c_char; 8 ] ,
24
+ pub ut_pid: :: pid_t,
25
+ pub ut_user: [ :: c_char; 32 ] ,
26
+ pub ut_line: [ :: c_char; 16 ] ,
27
+ pub ut_host: [ :: c_char; 128 ] ,
28
+ pub __ut_spare: [ :: c_char; 64 ] ,
29
+ }
30
+
20
31
pub struct glob_t {
21
32
pub gl_pathc: :: size_t,
22
33
__unused1: :: size_t,
@@ -158,6 +169,16 @@ s! {
158
169
}
159
170
}
160
171
172
+ pub const EMPTY : :: c_short = 0 ;
173
+ pub const BOOT_TIME : :: c_short = 1 ;
174
+ pub const OLD_TIME : :: c_short = 2 ;
175
+ pub const NEW_TIME : :: c_short = 3 ;
176
+ pub const USER_PROCESS : :: c_short = 4 ;
177
+ pub const INIT_PROCESS : :: c_short = 5 ;
178
+ pub const LOGIN_PROCESS : :: c_short = 6 ;
179
+ pub const DEAD_PROCESS : :: c_short = 7 ;
180
+ pub const SHUTDOWN_TIME : :: c_short = 8 ;
181
+
161
182
pub const LC_COLLATE_MASK : :: c_int = ( 1 << 0 ) ;
162
183
pub const LC_CTYPE_MASK : :: c_int = ( 1 << 1 ) ;
163
184
pub const LC_MESSAGES_MASK : :: c_int = ( 1 << 2 ) ;
@@ -701,6 +722,17 @@ f! {
701
722
}
702
723
}
703
724
725
+ extern {
726
+ pub fn endutxent ( ) ;
727
+ pub fn getutxent ( ) -> * mut utmpx ;
728
+ pub fn getutxid ( ut : * const utmpx ) -> * mut utmpx ;
729
+ pub fn getutxline ( ut : * const utmpx ) -> * mut utmpx ;
730
+ pub fn pututxline ( ut : * const utmpx ) -> * mut utmpx ;
731
+ pub fn setutxent ( ) ;
732
+ pub fn getutxuser ( user : * const :: c_char ) -> * mut utmpx ;
733
+ pub fn setutxdb ( _type : :: c_int , file : * const :: c_char ) -> :: c_int ;
734
+ }
735
+
704
736
#[ link( name = "util" ) ]
705
737
extern {
706
738
pub fn getnameinfo ( sa : * const :: sockaddr ,
0 commit comments