Print this page
use memset, for Albert
4075 nscd spuriously thinks all databases are privileged

Split Close
Expand all
Collapse all
          --- old/usr/src/cmd/nscd/nscd_switch.c
          +++ new/usr/src/cmd/nscd/nscd_switch.c
↓ open down ↓ 197 lines elided ↑ open up ↑
 198  198  {
 199  199  
 200  200          nscd_rc_t       rc = NSCD_SUCCESS;
 201  201          nss_db_params_t *p;
 202  202          int             j;
 203  203          char            *dbn;
 204  204          const char      *n;
 205  205          char            *me = "getparams";
 206  206  
 207  207          p = &params->p;
 208      -        (void) memset(p, 0, sizeof (*p));
      208 +        (void) memset(params, 0, sizeof (nscd_nsw_params_t));
 209  209          (*initf)(p);
 210  210          params->dbi = -1;
 211  211          params->cfgdbi = -1;
 212  212          params->compati = -1;
 213  213          params->dnsi = -1;
 214  214  
 215  215          /* map database name to index */
 216  216          n = p->name;
 217  217          for (j = 0; j < NSCD_NUM_DB; j++) {
 218  218                  dbn = NSCD_NSW_DB_NAME(j);
↓ open down ↓ 13 lines elided ↑ open up ↑
 232  232                                  params->privdb = 1;
 233  233                          break;
 234  234                  }
 235  235          }
 236  236  
 237  237          /*
 238  238           * use the switch policy for passwd_compat or
 239  239           * group_compat?
 240  240           */
 241  241          if (p->config_name != NULL) {
 242      -
 243  242                  n = p->config_name;
 244  243                  for (j = 0; j < NSCD_NUM_DB; j++) {
 245  244                          dbn = NSCD_NSW_DB_NAME(j);
 246  245                          if (*n == *dbn) {
 247  246                                  if (strcmp(n, dbn) == 0) {
 248  247                                          params->cfgdbi = j;
 249  248                                          break;
 250  249                                  }
 251  250                          }
 252  251                  }
↓ open down ↓ 1548 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX