patch for 1.0.0 pre3 under OS X

Andreas Wolf freeradius-devel@lists.freeradius.org
Fri, 9 Jul 2004 10:55:39 -0700


Hi,

I have posted a patch for pre3 to address some issues under Mac OS X:

http://homepage.mac.com/andreaswolf/public/freeradius-ssl-1.0.0- 
pre3.patch

It includes the following changes:

The sem_ API's (semaphore.h) are not supported on OS X. The patch  
replaces them by the MP* (Multiprocessing) API. This allows radiusd to  
run deamonized under OS X. It uses a pre-processor Macro (MAC_OS_X) to  
switch between sem_* and MP*. I could not figure out how to set this  
less 'intrusively', e.g. in the configure script. I am sure it will be  
very easy for freeRadius developers to incorporate that.

A symbol conflict with CoreServices was resolved (T_INVALID already  
defined). The CoreServices framework is required for the MP* APIs.

Since on MAC OS X the getpw* API does not reveal the crypt'ed passwords  
whatsoever, the rlm_unix module was tuned to use the DirectoryServices  
API. This will cause the rlm_unix module to call directly into OS X's  
ds* APIs to do the authentication when the getpw* APIs don't work. This  
could've been solved with a separate module (which I had originally)  
but I wanted minimal impact on the configuration.

-Andreas