Путь к Linux. Руководство по установке и настройке


           

Тщательный анализ кода позволяет заметить


          return (UPAP_AUTHNAK);
      }
  #else
      epasswd = crypt(passwd, pw->pw_passwd);
      if (strcmp(epasswd, pw->pw_passwd)) {
          return (UPAP_AUTHNAK);
      }
  #endif
      syslog(LOG_INFO, "user %s logged in", user);
      /*
       * Формируем запись wtmp.
       */
      tty = strrchr(devname, '/');
      if (tty == NULL) tty = devname;
          else tty++;
      logwtmp(tty, user, "");             /* Добавляем запись wtmp */
      logged_in = TRUE;
      return (UPAP_AUTHACK);
  }
Тщательный анализ кода позволяет заметить еще одно важное изменение. Если в первоначальной версии программы разрешался доступ к системе пользователю, для которого не был введен пароль в файле /etc/passwd, то теперь такой безответственный пользователь в систему просто допущен не будет.
Теперь нам необходимо модифицировать сборочный файл Makefile, таким образом, чтобы учитывались следующие два фактора:
·
наличие условной переменной USE_SHADOW;
·
подключение библиотеки libshadow.a на этапе компоновки.
Для этого при редактировании Makefile вы должны добавить:
LIBS = -lshadow
а затем найти строку:
       COMPILE_FLAGS = -I.. -D_linux_=1 -DGIDSET_TYPE=gid_t
и изменнить ее на:
COMPILE_FLAGS=-I.. -D_linux_=1 -DGIDSET_TYPE=gid_t -DUSE_SHADOW
Все, теперь для запуска примера достаточно запустить make install.

Содержание  Назад  Вперед