Added missing linux/user.h structures.
Added equivalents for user_regs_struct and user_struct from linux/user.h for x86 and x86_64.
This commit is contained in:
parent
fda4049c11
commit
fbcd9df1cf
|
@ -19,6 +19,44 @@ s! {
|
|||
pub _st: [_libc_fpreg; 8],
|
||||
pub status: ::c_ulong,
|
||||
}
|
||||
|
||||
pub struct _libc_state {
|
||||
pub ebx: ::c_long,
|
||||
pub ecx: ::c_long,
|
||||
pub edx: ::c_long,
|
||||
pub esi: ::c_long,
|
||||
pub edi: ::c_long,
|
||||
pub ebp: ::c_long,
|
||||
pub eax: ::c_long,
|
||||
pub xds: ::c_long,
|
||||
pub xes: ::c_long,
|
||||
pub xfs: ::c_long,
|
||||
pub xgs: ::c_long,
|
||||
pub orig_eax: ::c_long,
|
||||
pub eip: ::c_long,
|
||||
pub xcs: ::c_long,
|
||||
pub eflags: u32,
|
||||
pub esp: ::c_long,
|
||||
pub xss: ::c_long,
|
||||
}
|
||||
|
||||
pub struct _libc_user {
|
||||
pub regs: _libc_state,
|
||||
pub u_fpvalid: i32,
|
||||
pub i387: _libc_fpstate,
|
||||
pub u_tsize: u32,
|
||||
pub u_dsize: u32,
|
||||
pub u_ssize: u32,
|
||||
pub start_code: u32,
|
||||
pub start_stack: u32,
|
||||
pub signal: i32,
|
||||
__reserved: i32,
|
||||
pub u_ar0: *mut _libc_state,
|
||||
pub u_fpstate: *mut _libc_fpstate,
|
||||
pub magic: u32,
|
||||
pub u_comm: [c_char; 32],
|
||||
pub u_debugreg: [i32; 8],
|
||||
}
|
||||
|
||||
pub struct mcontext_t {
|
||||
pub gregs: [greg_t; 19],
|
||||
|
|
|
@ -78,6 +78,54 @@ s! {
|
|||
__private: [u64; 12],
|
||||
}
|
||||
|
||||
pub struct _libc_state {
|
||||
pub r15: u64,
|
||||
pub r14: u64,
|
||||
pub r13: u64,
|
||||
pub r12: u64,
|
||||
pub rbp: u64,
|
||||
pub rbx: u64,
|
||||
pub r11: u64,
|
||||
pub r10: u64,
|
||||
pub r9: u64,
|
||||
pub r8: u64,
|
||||
pub rax: u64,
|
||||
pub rcx: u64,
|
||||
pub rdx: u64,
|
||||
pub rsi: u64,
|
||||
pub rdi: u64,
|
||||
pub orig_rax: u64,
|
||||
pub rip: u64,
|
||||
pub cs: u64,
|
||||
pub eflags: u64,
|
||||
pub rsp: u64,
|
||||
pub ss: u64,
|
||||
pub fs_base: u64,
|
||||
pub gs_base: u64,
|
||||
pub ds: u64,
|
||||
pub es: u64,
|
||||
pub fs: u64,
|
||||
pub gs: u64,
|
||||
}
|
||||
|
||||
pub struct _libc_user {
|
||||
pub regs: _libc_state,
|
||||
pub u_fpvalid: ::c_int,
|
||||
pub i387: _libc_fpstate,
|
||||
pub u_tsize: u64,
|
||||
pub u_dsize: u64,
|
||||
pub u_ssize: u64,
|
||||
pub start_code: u64,
|
||||
pub start_stack: u64,
|
||||
pub signal: i64,
|
||||
__reserved: ::c_int,
|
||||
pub u_ar0: *mut _libc_state,
|
||||
pub u_fpstate: *mut _libc_fpstate,
|
||||
pub magic: u64,
|
||||
pub u_comm: [::c_char; 32],
|
||||
pub u_debugreg: [u64; 8],
|
||||
}
|
||||
|
||||
pub struct mcontext_t {
|
||||
pub gregs: [greg_t; 23],
|
||||
pub fpregs: *mut _libc_fpstate,
|
||||
|
|
Loading…
Reference in a new issue