Print this page
10366 ld(1) should support GNU-style linker sets
10581 ld(1) should know kernel modules are a thing

Split Close
Expand all
Collapse all
          --- old/usr/src/cmd/sgs/rtld/common/globals.c
          +++ new/usr/src/cmd/sgs/rtld/common/globals.c
↓ open down ↓ 109 lines elided ↑ open up ↑
 110  110  
 111  111  const char      *procname = NULL;
 112  112  const char      *rtldname = MSG_ORIG(MSG_FIL_RTLD);
 113  113  
 114  114  char            *lasterr = NULL;        /* string describing last error */
 115  115                                          /*    cleared by each dlerror() */
 116  116  Interp          *interp = NULL;         /* ELF interpreter info */
 117  117  APlist          *hdl_alp[HDLIST_SZ+2];  /* dlopen() handle list */
 118  118  size_t          syspagsz = 0;           /* system page size */
 119  119  ulong_t         at_flags = 0;           /* machine specific file flags */
 120      -Uts_desc        *uts = NULL;            /* utsname descriptor */
      120 +Uts_desc        *uts = NULL;            /* utsname descriptor */
 121  121  Isa_desc        *isa = NULL;            /* isalist descriptor */
 122  122  
 123  123  uint_t          audit_argcnt = 64;      /* no. of stack args to copy (default */
 124  124                                          /*    is all) */
 125  125  Audit_desc      *auditors = NULL;       /* global auditors (LD_AUDIT) */
 126  126  APlist          *aud_preinit = NULL;    /* list of objects defining local */
 127  127  APlist          *aud_activity = NULL;   /*    preinit and activity auditors */
 128  128  
 129  129  const char      *rpl_audit = NULL;      /* replaceable LD_AUDIT string */
 130  130  const char      *rpl_debug = NULL;      /* replaceable LD_DEBUG string */
↓ open down ↓ 93 lines elided ↑ open up ↑
 224  224                  MSG_LDD_REJ_HAL,        /* MSG_INTL(MSG_LDD_REJ_HAL) */
 225  225                  MSG_LDD_REJ_US3,        /* MSG_INTL(MSG_LDD_REJ_US3) */
 226  226                  MSG_LDD_REJ_STR,        /* MSG_INTL(MSG_LDD_REJ_STR) */
 227  227                  MSG_LDD_REJ_UNKFILE,    /* MSG_INTL(MSG_LDD_REJ_UNKFILE) */
 228  228                  MSG_LDD_REJ_UNKCAP,     /* MSG_INTL(MSG_LDD_REJ_UNKCAP) */
 229  229                  MSG_LDD_REJ_HWCAP_1,    /* MSG_INTL(MSG_LDD_REJ_HWCAP_1) */
 230  230                  MSG_LDD_REJ_SFCAP_1,    /* MSG_INTL(MSG_LDD_REJ_SFCAP_1) */
 231  231                  MSG_LDD_REJ_MACHCAP,    /* MSG_INTL(MSG_LDD_REJ_MACHCAP) */
 232  232                  MSG_LDD_REJ_PLATCAP,    /* MSG_INTL(MSG_LDD_REJ_PLATCAP) */
 233  233                  MSG_LDD_REJ_HWCAP_2,    /* MSG_INTL(MSG_LDD_REJ_HWCAP_2) */
 234      -                MSG_LDD_REJ_ARCHIVE     /* MSG_INTL(MSG_LDD_REJ_ARCHIVE) */
      234 +                MSG_LDD_REJ_ARCHIVE,    /* MSG_INTL(MSG_LDD_REJ_ARCHIVE) */
      235 +                MSG_LDD_REJ_KMOD        /* MSG_INTL(MSG_LDD_REJ_KMOD) */
 235  236          };
 236      -#if SGS_REJ_NUM != (SGS_REJ_ARCHIVE + 1)
      237 +#if SGS_REJ_NUM != (SGS_REJ_KMOD + 1)
 237  238  #error SGS_REJ_NUM has changed
 238  239  #endif
 239  240  
 240  241  const Msg
 241  242  err_reject[SGS_REJ_NUM] = {
 242  243                  MSG_STR_EMPTY,
 243  244                  MSG_ERR_REJ_MACH,       /* MSG_INTL(MSG_ERR_REJ_MACH) */
 244  245                  MSG_ERR_REJ_CLASS,      /* MSG_INTL(MSG_ERR_REJ_CLASS) */
 245  246                  MSG_ERR_REJ_DATA,       /* MSG_INTL(MSG_ERR_REJ_DATA) */
 246  247                  MSG_ERR_REJ_TYPE,       /* MSG_INTL(MSG_ERR_REJ_TYPE) */
↓ open down ↓ 4 lines elided ↑ open up ↑
 251  252                  MSG_ERR_REJ_US3,        /* MSG_INTL(MSG_ERR_REJ_US3) */
 252  253                  MSG_ERR_REJ_STR,        /* MSG_INTL(MSG_ERR_REJ_STR) */
 253  254                  MSG_ERR_REJ_UNKFILE,    /* MSG_INTL(MSG_ERR_REJ_UNKFILE) */
 254  255                  MSG_ERR_REJ_UNKCAP,     /* MSG_INTL(MSG_ERR_REJ_UNKCAP) */
 255  256                  MSG_ERR_REJ_HWCAP_1,    /* MSG_INTL(MSG_ERR_REJ_HWCAP_1) */
 256  257                  MSG_ERR_REJ_SFCAP_1,    /* MSG_INTL(MSG_ERR_REJ_SFCAP_1) */
 257  258                  MSG_ERR_REJ_MACHCAP,    /* MSG_INTL(MSG_ERR_REJ_MACHCAP) */
 258  259                  MSG_ERR_REJ_PLATCAP,    /* MSG_INTL(MSG_ERR_REJ_PLATCAP) */
 259  260                  MSG_ERR_REJ_HWCAP_2,    /* MSG_INTL(MSG_ERR_REJ_HWCAP_2) */
 260  261                  MSG_ERR_REJ_ARCHIVE,    /* MSG_INTL(MSG_ERR_REJ_ARCHIVE) */
      262 +                MSG_ERR_REJ_KMOD,       /* MSG_INTL(MSG_ERR_REJ_KMOD) */
 261  263          };
 262      -#if SGS_REJ_NUM != (SGS_REJ_ARCHIVE + 1)
      264 +#if SGS_REJ_NUM != (SGS_REJ_KMOD + 1)
 263  265  #error SGS_REJ_NUM has changed
 264  266  #endif
 265  267  
 266  268  const Msg
 267  269  ldd_warn[SGS_REJ_NUM] = {
 268  270                  MSG_STR_EMPTY,
 269  271                  MSG_STR_EMPTY,
 270  272                  MSG_STR_EMPTY,
 271  273                  MSG_STR_EMPTY,
 272  274                  MSG_STR_EMPTY,
↓ open down ↓ 3 lines elided ↑ open up ↑
 276  278                  MSG_STR_EMPTY,
 277  279                  MSG_STR_EMPTY,
 278  280                  MSG_STR_EMPTY,
 279  281                  MSG_STR_EMPTY,
 280  282                  MSG_LDD_WARN_UNKCAP,    /* MSG_INTL(MSG_LDD_WARN_UNKCAP) */
 281  283                  MSG_LDD_WARN_HWCAP_1,   /* MSG_INTL(MSG_LDD_WARN_HWCAP_1) */
 282  284                  MSG_LDD_WARN_SFCAP_1,   /* MSG_INTL(MSG_LDD_WARN_SFCAP_1) */
 283  285                  MSG_LDD_WARN_MACHCAP,   /* MSG_INTL(MSG_LDD_WARN_MACHCAP) */
 284  286                  MSG_LDD_WARN_PLATCAP,   /* MSG_INTL(MSG_LDD_WARN_PLATCAP) */
 285  287                  MSG_LDD_WARN_HWCAP_2,   /* MSG_INTL(MSG_LDD_WARN_HWCAP_2) */
 286      -                MSG_STR_EMPTY
      288 +                MSG_STR_EMPTY,
      289 +                MSG_STR_EMPTY,
 287  290          };
 288      -#if SGS_REJ_NUM != (SGS_REJ_ARCHIVE + 1)
      291 +#if SGS_REJ_NUM != (SGS_REJ_KMOD + 1)
 289  292  #error SGS_REJ_NUM has changed
 290  293  #endif
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX