Sujit K M kmsujit at
Thu May 28 04:33:09 UTC 2009

The Source code licensing show two license information.
One the Apple license and Other the BSD License.

The BSD License is to the Mach code that is present in the
source code, presumably I assume. And this includes the
pthread_setugid_np, but with some amount of rework with
the apple OS X implementation.

Are you sure that this feature was never present in any of
the BSD. Or has it been moved out due to some performance

As far I see if present in OS X, It is an high performance piece
of code. But it need to be checked whether the code was
present in earlier version of BSD. Which might make it easier
for you to have it in your internal version.

On Thu, May 28, 2009 at 9:42 AM, Zachary Loafman <zml at> wrote:
> On Thu, May 28, 2009 at 09:09:28AM +0530, Sujit K M wrote:
>> These are posix unix standards that you are going to be implementing.
>> So if you are talking of only taking the interfaces, why is there any need
>> to have objections.
> pthread_setugid_np is a non-portable pthread extension for per-thread
> user/group impersonation on OS X. The _np on the function name is to
> indicate its lack of portability to other OSes - it is not part of any
> standard. There is no posix standard way to impersonate a user/group on
> a per-thread basis - and, in fact, the OS X pthread_setugid_np interface
> is the only one I know of in common use.
> I'm proposing introducing the same API and semantics to FreeBSD, thereby
> vaguely pushing it further towards a standard. I don't really claim it's
> the most elegant interface, though.
> --
> Zach Loafman | Staff Engineer | Isilon Systems

More information about the freebsd-arch mailing list