Mac OS X 10.5+和POSIX

时间:2010-04-19 09:02:08

标签: macos posix

我需要编写一个必须与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中,后者在这里提到:developer.apple.com/mac/library/DOCUMENTATION/Darwin/Reference/ManPages/man5/passwd.5.html

相反,它在两个文件中都说使用OpenDirectory Service,它应该是OpenLDAP 根据OpenDirectoryService手册页。

这仍然符合POSIX标准吗?我猜不会。我想知道Mac OS X将如何处理我的问题 100%符合POSIX标准的代码,取决于/ etc / passwd?

如果有人能够解释这对我有用的方式,我将不胜感激。

感谢您的时间和麻烦。

祝你好运

菲尔。

3 个答案:

答案 0 :(得分:2)

我不认为POSIX(或至少POSIX 1003.1)涵盖用户和密码的存储方式 - 请查看POSIX Wikipedia page以快速了解是什么覆盖。

答案 1 :(得分:1)

您可以使用getpwuid中的getpwnampwd.h个功能来搜索用户名/ ID。它是1003.1标准的一部分。

答案 2 :(得分:0)

看起来POSIX没有涵盖这一点,但大多数主要的Unices最近似乎使用PAM。您可以尝试使用PAM来验证如何对用户进行身份验证...