Print this page
8158 Want named threads API
9857 proc manpages should have LIBRARY section


  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,