2
0

mod.rs 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. #[cfg(target_arch = "aarch64")]
  2. use crate::header::arch_aarch64_user::*;
  3. #[cfg(target_arch = "x86_64")]
  4. use crate::header::arch_x64_user::*;
  5. pub const ELF_PRARGSZ: ::size_t = 80;
  6. #[repr(C)]
  7. pub struct elf_siginfo {
  8. pub si_signo: ::c_int,
  9. pub si_code: ::c_int,
  10. pub si_errno: ::c_int,
  11. }
  12. #[repr(C)]
  13. pub struct time {
  14. pub tv_sec: ::c_long,
  15. pub tv_usec: ::c_long,
  16. }
  17. #[repr(C)]
  18. pub struct elf_prstatus {
  19. pub pr_info: elf_siginfo,
  20. pub pr_cursig: ::c_short,
  21. pub pr_sigpend: ::c_ulong,
  22. pub pr_sighold: ::c_ulong,
  23. pub pr_pid: ::pid_t,
  24. pub pr_ppid: ::pid_t,
  25. pub pr_pgrp: ::pid_t,
  26. pub pr_sid: ::pid_t,
  27. pub pr_utime: time,
  28. pub pr_stime: time,
  29. pub pr_cutime: time,
  30. pub pr_cstime: time,
  31. pub pr_reg: elf_gregset_t,
  32. pub pr_fpvalid: ::c_int,
  33. }
  34. #[repr(C)]
  35. pub struct elf_prpsinfo {
  36. pub pr_state: ::c_char,
  37. pub pr_sname: ::c_char,
  38. pub pr_zomb: ::c_char,
  39. pub pr_nice: ::c_char,
  40. pub pr_flag: ::c_uint,
  41. pub pr_uid: ::c_uint,
  42. pub pr_gid: ::c_uint,
  43. pub pr_pid: ::c_int,
  44. pub pr_ppid: ::c_int,
  45. pub pr_pgrp: ::c_int,
  46. pub pr_sid: ::c_int,
  47. pub pr_fname: [::c_char; 16],
  48. pub pr_psargs: [::c_char; ELF_PRARGSZ],
  49. }
  50. pub type psaddr_t = *mut ::c_void;
  51. pub type prgregset_t = elf_gregset_t;
  52. pub type prfpregset_t = elf_fpregset_t;
  53. pub type lwpid_t = ::pid_t;
  54. pub type prstatus_t = elf_prstatus;
  55. pub type prpsinfo_t = elf_prpsinfo;
  56. #[no_mangle]
  57. pub extern "C" fn _cbindgen_only_generates_structs_if_they_are_mentioned_which_is_dumb_procfs(
  58. _a: psaddr_t,
  59. _b: *mut prgregset_t,
  60. _c: prfpregset_t,
  61. _d: lwpid_t,
  62. _e: prstatus_t,
  63. _f: prpsinfo_t,
  64. ) {
  65. }