Print this page
ld should reject kernel modules as input


  61 const Msg
  62 reject[SGS_REJ_NUM] = {
  63                 MSG_STR_EMPTY,
  64                 MSG_REJ_MACH,           /* MSG_INTL(MSG_REJ_MACH) */
  65                 MSG_REJ_CLASS,          /* MSG_INTL(MSG_REJ_CLASS) */
  66                 MSG_REJ_DATA,           /* MSG_INTL(MSG_REJ_DATA) */
  67                 MSG_REJ_TYPE,           /* MSG_INTL(MSG_REJ_TYPE) */
  68                 MSG_REJ_BADFLAG,        /* MSG_INTL(MSG_REJ_BADFLAG) */
  69                 MSG_REJ_MISFLAG,        /* MSG_INTL(MSG_REJ_MISFLAG) */
  70                 MSG_REJ_VERSION,        /* MSG_INTL(MSG_REJ_VERSION) */
  71                 MSG_REJ_HAL,            /* MSG_INTL(MSG_REJ_HAL) */
  72                 MSG_REJ_US3,            /* MSG_INTL(MSG_REJ_US3) */
  73                 MSG_REJ_STR,            /* MSG_INTL(MSG_REJ_STR) */
  74                 MSG_REJ_UNKFILE,        /* MSG_INTL(MSG_REJ_UNKFILE) */
  75                 MSG_REJ_UNKCAP,         /* MSG_INTL(MSG_REJ_UNKCAP) */
  76                 MSG_REJ_HWCAP_1,        /* MSG_INTL(MSG_REJ_HWCAP_1) */
  77                 MSG_REJ_SFCAP_1,        /* MSG_INTL(MSG_REJ_SFCAP_1) */
  78                 MSG_REJ_MACHCAP,        /* MSG_INTL(MSG_REJ_MACHCAP) */
  79                 MSG_REJ_PLATCAP,        /* MSG_INTL(MSG_REJ_PLATCAP) */
  80                 MSG_REJ_HWCAP_2,        /* MSG_INTL(MSG_REJ_HWCAP_2) */
  81                 MSG_REJ_ARCHIVE         /* MSG_INTL(MSG_REJ_ARCHIVE) */

  82         };
  83 #if SGS_REJ_NUM != (SGS_REJ_ARCHIVE + 1)
  84 #error SGS_REJ_NUM has changed
  85 #endif
  86 
  87 /*
  88  * Symbol types that we include in .SUNW_ldynsym sections
  89  * (indexed by STT_ values).
  90  */
  91 const int
  92 ldynsym_symtype[] = {
  93                 0,                      /* STT_NOTYPE (not counting 1st slot) */
  94                 0,                      /* STT_OBJECT */
  95                 1,                      /* STT_FUNC */
  96                 0,                      /* STT_SECTION */
  97                 1,                      /* STT_FILE */
  98                 0,                      /* STT_COMMON */
  99                 0,                      /* STT_TLS */
 100                 0,                      /* 7 */
 101                 0,                      /* 8 */
 102                 0,                      /* 9 */
 103                 0,                      /* 10 */




  61 const Msg
  62 reject[SGS_REJ_NUM] = {
  63                 MSG_STR_EMPTY,
  64                 MSG_REJ_MACH,           /* MSG_INTL(MSG_REJ_MACH) */
  65                 MSG_REJ_CLASS,          /* MSG_INTL(MSG_REJ_CLASS) */
  66                 MSG_REJ_DATA,           /* MSG_INTL(MSG_REJ_DATA) */
  67                 MSG_REJ_TYPE,           /* MSG_INTL(MSG_REJ_TYPE) */
  68                 MSG_REJ_BADFLAG,        /* MSG_INTL(MSG_REJ_BADFLAG) */
  69                 MSG_REJ_MISFLAG,        /* MSG_INTL(MSG_REJ_MISFLAG) */
  70                 MSG_REJ_VERSION,        /* MSG_INTL(MSG_REJ_VERSION) */
  71                 MSG_REJ_HAL,            /* MSG_INTL(MSG_REJ_HAL) */
  72                 MSG_REJ_US3,            /* MSG_INTL(MSG_REJ_US3) */
  73                 MSG_REJ_STR,            /* MSG_INTL(MSG_REJ_STR) */
  74                 MSG_REJ_UNKFILE,        /* MSG_INTL(MSG_REJ_UNKFILE) */
  75                 MSG_REJ_UNKCAP,         /* MSG_INTL(MSG_REJ_UNKCAP) */
  76                 MSG_REJ_HWCAP_1,        /* MSG_INTL(MSG_REJ_HWCAP_1) */
  77                 MSG_REJ_SFCAP_1,        /* MSG_INTL(MSG_REJ_SFCAP_1) */
  78                 MSG_REJ_MACHCAP,        /* MSG_INTL(MSG_REJ_MACHCAP) */
  79                 MSG_REJ_PLATCAP,        /* MSG_INTL(MSG_REJ_PLATCAP) */
  80                 MSG_REJ_HWCAP_2,        /* MSG_INTL(MSG_REJ_HWCAP_2) */
  81                 MSG_REJ_ARCHIVE,        /* MSG_INTL(MSG_REJ_ARCHIVE) */
  82                 MSG_REJ_KMOD            /* MSG_INTL(MSG_REJ_KMOD) */
  83         };
  84 #if SGS_REJ_NUM != (SGS_REJ_KMOD + 1)
  85 #error SGS_REJ_NUM has changed
  86 #endif
  87 
  88 /*
  89  * Symbol types that we include in .SUNW_ldynsym sections
  90  * (indexed by STT_ values).
  91  */
  92 const int
  93 ldynsym_symtype[] = {
  94                 0,                      /* STT_NOTYPE (not counting 1st slot) */
  95                 0,                      /* STT_OBJECT */
  96                 1,                      /* STT_FUNC */
  97                 0,                      /* STT_SECTION */
  98                 1,                      /* STT_FILE */
  99                 0,                      /* STT_COMMON */
 100                 0,                      /* STT_TLS */
 101                 0,                      /* 7 */
 102                 0,                      /* 8 */
 103                 0,                      /* 9 */
 104                 0,                      /* 10 */