Mac OS X 10.5+ и POSIX - PullRequest
       4

Mac OS X 10.5+ и POSIX

4 голосов
/ 19 апреля 2010

Мне нужно запрограммировать модуль аутентификации, который должен работать с Mac OS X 10.6 Snow Leopard и в то же время должен быть POSIX-совместимым.

Я читаю здесь: developer.apple.com/leopard/overview/osfoundations.html

что, начиная с Mac OS X 10.5 Leopard, Mac OS X совместима с POSIX (для POSIX 1003.1), но работая под MAC OS X 10.5 Leopard сам, я не могу найти никаких следов моего имени пользователя ни в / etc / passwd, ни в его преемнике /etc/master.passwd, о котором здесь говорится:

Вместо этого говорится, что в обоих файлах используется служба OpenDirectory, которая должна быть OpenLDAP в соответствии с man-страницей OpenDirectoryService.

Это все еще POSIX-совместимый? Я думаю, нет. Интересно, как Mac OS X справится с моим 100% POSIX-совместимый код, который зависит от / etc / passwd?

Буду признателен, если кто-нибудь сможет объяснить мне, как это работает.

Спасибо за ваше время и проблемы.

С наилучшими пожеланиями

Фил.

Ответы [ 3 ]

2 голосов
/ 19 апреля 2010

Я не думаю, что способ хранения пользователей и паролей охватывается POSIX (или, по крайней мере, POSIX 1003.1) - посмотрите на страницу POSIX Wikipedia , чтобы получить краткий обзор того, что покрыто.

1 голос
/ 19 апреля 2010

Вы можете использовать функции getpwuid или getpwnam из pwd.h для поиска имени пользователя / идентификатора.Он является частью стандарта 1003.1.

0 голосов
/ 23 мая 2010

Похоже, что POSIX не покрывает это, но большинство основных юнитов, похоже, используют PAM в наши дни. Вы можете попробовать проверить, как аутентифицировать пользователей, используя PAM ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...