41 #include <string.h>
42 #include <_conv.h>
43 #include <corenote_msg.h>
44
45 const char *
46 conv_cnote_type(Word type, Conv_fmt_flags_t fmt_flags,
47 Conv_inv_buf_t *inv_buf)
48 {
49 static const Msg types[] = {
50 MSG_NT_PRSTATUS, MSG_NT_PRFPREG,
51 MSG_NT_PRPSINFO, MSG_NT_PRXREG,
52 MSG_NT_PLATFORM, MSG_NT_AUXV,
53 MSG_NT_GWINDOWS, MSG_NT_ASRS,
54 MSG_NT_LDT, MSG_NT_PSTATUS,
55 0, 0,
56 MSG_NT_PSINFO, MSG_NT_PRCRED,
57 MSG_NT_UTSNAME, MSG_NT_LWPSTATUS,
58 MSG_NT_LWPSINFO, MSG_NT_PRPRIV,
59 MSG_NT_PRPRIVINFO, MSG_NT_CONTENT,
60 MSG_NT_ZONENAME, MSG_NT_FDINFO,
61 MSG_NT_SPYMASTER, MSG_NT_SECFLAGS
62 };
63 #if NT_NUM != NT_SECFLAGS
64 #error "NT_NUM has grown. Update core note types[]"
65 #endif
66 static const conv_ds_msg_t ds_types = {
67 CONV_DS_MSG_INIT(NT_PRSTATUS, types) };
68 static const conv_ds_t *ds[] = { CONV_DS_ADDR(ds_types), NULL };
69
70
71 return (conv_map_ds(ELFOSABI_NONE, EM_NONE, type, ds, fmt_flags,
72 inv_buf));
73 }
74
75
76 const char *
77 conv_cnote_auxv_type(Word type, Conv_fmt_flags_t fmt_flags,
78 Conv_inv_buf_t *inv_buf)
79 {
80 static const Msg types_0_22[] = {
81 MSG_AUXV_AT_NULL, MSG_AUXV_AT_IGNORE,
82 MSG_AUXV_AT_EXECFD, MSG_AUXV_AT_PHDR,
83 MSG_AUXV_AT_PHENT, MSG_AUXV_AT_PHNUM,
|
41 #include <string.h>
42 #include <_conv.h>
43 #include <corenote_msg.h>
44
45 const char *
46 conv_cnote_type(Word type, Conv_fmt_flags_t fmt_flags,
47 Conv_inv_buf_t *inv_buf)
48 {
49 static const Msg types[] = {
50 MSG_NT_PRSTATUS, MSG_NT_PRFPREG,
51 MSG_NT_PRPSINFO, MSG_NT_PRXREG,
52 MSG_NT_PLATFORM, MSG_NT_AUXV,
53 MSG_NT_GWINDOWS, MSG_NT_ASRS,
54 MSG_NT_LDT, MSG_NT_PSTATUS,
55 0, 0,
56 MSG_NT_PSINFO, MSG_NT_PRCRED,
57 MSG_NT_UTSNAME, MSG_NT_LWPSTATUS,
58 MSG_NT_LWPSINFO, MSG_NT_PRPRIV,
59 MSG_NT_PRPRIVINFO, MSG_NT_CONTENT,
60 MSG_NT_ZONENAME, MSG_NT_FDINFO,
61 MSG_NT_SPYMASTER, MSG_NT_SECFLAGS,
62 MSG_NT_LWPNAME,
63 };
64 #if NT_NUM != NT_LWPNAME
65 #error "NT_NUM has grown. Update core note types[]"
66 #endif
67 static const conv_ds_msg_t ds_types = {
68 CONV_DS_MSG_INIT(NT_PRSTATUS, types) };
69 static const conv_ds_t *ds[] = { CONV_DS_ADDR(ds_types), NULL };
70
71
72 return (conv_map_ds(ELFOSABI_NONE, EM_NONE, type, ds, fmt_flags,
73 inv_buf));
74 }
75
76
77 const char *
78 conv_cnote_auxv_type(Word type, Conv_fmt_flags_t fmt_flags,
79 Conv_inv_buf_t *inv_buf)
80 {
81 static const Msg types_0_22[] = {
82 MSG_AUXV_AT_NULL, MSG_AUXV_AT_IGNORE,
83 MSG_AUXV_AT_EXECFD, MSG_AUXV_AT_PHDR,
84 MSG_AUXV_AT_PHENT, MSG_AUXV_AT_PHNUM,
|