manpagez: man pages & more
man DirectoryService(8)
Home | About | info | man | News  
DirectoryService(8)       BSD System Manager's Manual      DirectoryService(8)


NAME

     DirectoryService -- DirectoryService daemon (a part of Mac OS X's Open
     Directory architecture)


SYNOPSIS

     DirectoryService [-hv]


DESCRIPTION

     Apple's Open Directory architecture includes source code for both direc-
     tory client access and directory servers.  Open Directory forms the foun-
     dation of how Mac OS X accesses all authoritative configuration informa-
     tion (users, groups, mounts, managed desktop data, etc.). Mac OS X
     obtains this information via abstraction APIs, enabling use of virtually
     any directory system.  Configuration of Open Directory is done through
     the Directory Utility applications in /Applications/Utilities.  This
     application can configure plugin settings, including turning on/off vari-
     ous directory services.

     Open Directory Utility

     Directory Services is a core part of the Open Directory technology.
     Directory Services provides a client read/write/authentication API
     abstraction for accessing directory-based data. Directory Services con-
     sists of an access API, and an API daemon, and a plug-in API.

     More information can be accessed from the Darwin Open Directory Page:
     http://developer.apple.com/darwin/projects/opendirectory/

     Open Directory Servers

     Apple's Open Directory Server is OpenLDAP. OpenLDAP is included as part
     of Mac OS X Desktop and Server, and is also included with Darwin. OpenL-
     DAP provides a robust and scalable platform for serving directory based
     configuration information for both stand-alone and networked CPUs. OpenL-
     DAP consists of:

           o   Access API

           o   Server process

           o   Command line tools for displaying and modifying the contents of
               the Directory Server data.

     Documentation

     Directory Services Access API and Plug-in API is documented at:
     http://developer.apple.com/referencelibrary/Networking/

     The headers for the DirectoryService APIs can also be found in the fol-
     lowing location:

     /System/Library/Frameworks/DirectoryService.framework/Headers/


OPTIONS

     The options are as follows:

     -h       Display list of options

     -v       Display the release version.


PLUGINS

     The following plugins can be managed using the Directory Utility applica-
     tion.

           o   BSD (Flat File and NIS)

           o   LDAPv3

           o   Search

           o   SMB

           o   SLP

           o   Bonjour (zero-conf)

           o   Appletalk

           o   PasswordServer


DIAGNOSTICS

     There are two helpful signals you can send to the DirectoryService daemon
     to help diagnose problems you may be having.  (Example: % sudo killall
     -USR1 DirectoryService).  USR2 logging automatically turns off after 5
     minutes.

           o   USR1

               Turns Debug Logging (on/off)

               See /Library/Logs/DirectoryService/DirectoryService.debug.log

           o   USR2

               Turns API Logging (on/off)

               See /var/log/system.log


ERRORS

     From <DirectoryService/DirServiceTypes.h>

          eDSNoErr                           =    0

          eDSOpenFailed                      =    -14000

          eDSCloseFailed                     =    -14001

          eDSOpenNodeFailed                  =    -14002

          eDSBadDirRefences                  =    -14003

          eDSNullRecordReference             =    -14004

          eDSMaxSessionsOpen                 =    -14005

          eDSCannotAccessSession             =    -14006

          eDSDirSrvcNotOpened                =    -14007

          eDSNodeNotFound                    =    -14008

          eDSUnknownNodeName                 =    -14009

          eDSRegisterCustomFailed            =    -14010

          eDSGetCustomFailed                 =    -14011

          eDSUnRegisterFailed                =    -14012

          eDSLocalDSDaemonInUse              =    -14015

          eDSNormalDSDaemonInUse             =    -14016

          eDSAllocationFailed                =    -14050

          eDSDeAllocateFailed                =    -14051

          eDSCustomBlockFailed               =    -14052

          eDSCustomUnblockFailed             =    -14053

          eDSCustomYieldFailed               =    -14054

          eDSCorruptBuffer                   =    -14060

          eDSInvalidIndex                    =    -14061

          eDSIndexOutOfRange                 =    -14062

          eDSIndexNotFound                   =    -14063

          eDSCorruptRecEntryData             =    -14065

          eDSRefSpaceFull                    =    -14069

          eDSRefTableAllocError              =    -14070

          eDSInvalidReference                =    -14071

          eDSInvalidRefType                  =    -14072

          eDSInvalidDirRef                   =    -14073

          eDSInvalidNodeRef                  =    -14074

          eDSInvalidRecordRef                =    -14075

          eDSInvalidAttrListRef              =    -14076

          eDSInvalidAttrValueRef             =    -14077

          eDSInvalidContinueData             =    -14078

          eDSInvalidBuffFormat               =    -14079

          eDSInvalidPatternMatchType         =    -14080

          eDSRefTableError                   =    -14081

          eDSRefTableNilError                =    -14082,

          eDSRefTableIndexOutOfBoundsError   =    -14083,

          eDSRefTableEntryNilError           =    -14084,

          eDSRefTableCSBPAllocError          =    -14085,

          eDSRefTableFWAllocError            =    -14086,

          eDSAuthFailed                      =    -14090

          eDSAuthMethodNotSupported          =    -14091

          eDSAuthResponseBufTooSmall         =    -14092

          eDSAuthParameterError              =    -14093

          eDSAuthInBuffFormatError           =    -14094

          eDSAuthNoSuchEntity                =    -14095

          eDSAuthBadPassword                 =    -14096

          eDSAuthContinueDataBad             =    -14097

          eDSAuthUnknownUser                 =    -14098

          eDSAuthInvalidUserName             =    -14099

          eDSAuthCannotRecoverPasswd         =    -14100

          eDSAuthFailedClearTextOnly         =    -14101

          eDSAuthNoAuthServerFound           =    -14102

          eDSAuthServerError                 =    -14103

          eDSInvalidContext                  =    -14104

          eDSBadContextData                  =    -14105

          eDSPermissionError                 =    -14120

          eDSReadOnly                        =    -14121

          eDSInvalidDomain                   =    -14122

          eNetInfoError                      =    -14123

          eDSInvalidRecordType               =    -14130

          eDSInvalidAttributeType            =    -14131

          eDSInvalidRecordName               =    -14133

          eDSAttributeNotFound               =    -14134

          eDSRecordAlreadyExists             =    -14135

          eDSRecordNotFound                  =    -14136

          eDSAttributeDoesNotExist           =    -14137

          eDSNoStdMappingAvailable           =    -14140

          eDSInvalidNativeMapping            =    -14141

          eDSSchemaError                     =    -14142

          eDSAttributeValueNotFound          =    -14143

          eDSVersionMismatch                 =    -14149

          eDSPlugInConfigFileError           =    -14150

          eDSInvalidPlugInConfigData         =    -14151

          eDSAuthNewPasswordRequired         =    -14161

          eDSAuthPasswordExpired             =    -14162

          eDSAuthPasswordQualityCheckFailed  =    -14165

          eDSAuthAccountDisabled             =    -14167

          eDSAuthAccountExpired              =    -14168

          eDSAuthAccountInactive             =    -14169

          eDSAuthPasswordTooShort            =    -14170

          eDSAuthPasswordTooLong             =    -14171

          eDSAuthPasswordNeedsLetter         =    -14172

          eDSAuthPasswordNeedsDigit          =    -14173

          eDSNullParameter                   =    -14200

          eDSNullDataBuff                    =    -14201

          eDSNullNodeName                    =    -14202

          eDSNullRecEntryPtr                 =    -14203

          eDSNullRecName                     =    -14204

          eDSNullRecNameList                 =    -14205

          eDSNullRecType                     =    -14206

          eDSNullRecTypeList                 =    -14207

          eDSNullAttribute                   =    -14208

          eDSNullAttributeAccess             =    -14209

          eDSNullAttributeValue              =    -14210

          eDSNullAttributeType               =    -14211

          eDSNullAttributeTypeList           =    -14212

          eDSNullAttributeControlPtr         =    -14213

          eDSNullAttributeRequestList        =    -14214

          eDSNullDataList                    =    -14215

          eDSNullDirNodeTypeList             =    -14216

          eDSNullAutMethod                   =    -14217

          eDSNullAuthStepData                =    -14218

          eDSNullAuthStepDataResp            =    -14219

          eDSNullNodeInfoTypeList            =    -14220

          eDSNullPatternMatch                =    -14221

          eDSNullNodeNamePattern             =    -14222

          eDSNullTargetArgument              =    -14223

          eDSEmptyParameter                  =    -14230

          eDSEmptyBuffer                     =    -14231

          eDSEmptyNodeName                   =    -14232

          eDSEmptyRecordName                 =    -14233

          eDSEmptyRecordNameList             =    -14234

          eDSEmptyRecordType                 =    -14235

          eDSEmptyRecordTypeList             =    -14236

          eDSEmptyRecordEntry                =    -14237

          eDSEmptyPatternMatch               =    -14238

          eDSEmptyNodeNamePattern            =    -14239

          eDSEmptyAttribute                  =    -14240

          eDSEmptyAttributeType              =    -14241

          eDSEmptyAttributeTypeList          =    -14242

          eDSEmptyAttributeValue             =    -14243

          eDSEmptyAttributeRequestList       =    -14244

          eDSEmptyDataList                   =    -14245

          eDSEmptyNodeInfoTypeList           =    -14246

          eDSEmptyAuthMethod                 =    -14247

          eDSEmptyAuthStepData               =    -14248

          eDSEmptyAuthStepDataResp           =    -14249

          eDSEmptyPattern2Match              =    -14250

          eDSBadDataNodeLength               =    -14255

          eDSBadDataNodeFormat               =    -14256

          eDSBadSourceDataNode               =    -14257

          eDSBadTargetDataNode               =    -14258

          eDSBufferTooSmall                  =    -14260

          eDSUnknownMatchType                =    -14261

          eDSUnSupportedMatchType            =    -14262

          eDSInvalDataList                   =    -14263

          eDSAttrListError                   =    -14264

          eServerNotRunning                  =    -14270

          eUnknownAPICall                    =    -14271

          eUnknownServerError                =    -14272

          eUnknownPlugIn                     =    -14273

          ePlugInDataError                   =    -14274

          ePlugInNotFound                    =    -14275

          ePlugInError                       =    -14276

          ePlugInInitError                   =    -14277

          ePlugInNotActive                   =    -14278

          ePlugInFailedToInitialize          =    -14279

          ePlugInCallTimedOut                =    -14280

          eNoSearchNodesFound                =    -14290

          eSearchPathNotDefined              =    -14291

          eNotHandledByThisNode              =    -14292

          eIPCSendError                      =    -14330

          eIPCReceiveError                   =    -14331

          eServerReplyError                  =    -14332

          eDSTCPSendError                    =    -14350

          eDSTCPReceiveError                 =    -14351

          eDSTCPVersionMismatch              =    -14352

          eDSIPUnreachable                   =    -14353

          eDSUnknownHost                     =    -14354

          ePluginHandlerNotLoaded            =    -14400

          eNoPluginsLoaded                   =    -14402

          ePluginAlreadyLoaded               =    -14404

          ePluginVersionNotFound             =    -14406

          ePluginNameNotFound                =    -14408

          eNoPluginFactoriesFound            =    -14410

          ePluginConfigAvailNotFound         =    -14412

          ePluginConfigFileNotFound          =    -14414

          eCFMGetFileSysRepErr               =    -14450

          eCFPlugInGetBundleErr              =    -14452

          eCFBndleGetInfoDictErr             =    -14454

          eCFDictGetValueErr                 =    -14456

     Authentication Errors

          eDSServerTimeout                   =    -14470

          eDSContinue                        =    -14471

          eDSInvalidHandle                   =    -14472

          eDSSendFailed                      =    -14473

          eDSReceiveFailed                   =    -14474

          eDSBadPacket                       =    -14475

          eDSInvalidTag                      =    -14476

          eDSInvalidSession                  =    -14477

          eDSInvalidName                     =    -14478

          eDSUserUnknown                     =    -14479

          eDSUnrecoverablePassword           =    -14480

          eDSAuthenticationFailed            =    -14481

          eDSBogusServer                     =    -14482

          eDSOperationFailed                 =    -14483

          eDSNotAuthorized                   =    -14484

          eDSNetInfoError                    =    -14485

          eDSContactMaster                   =    -14486

          eDSServiceUnavailable              =    -14487

          eDSInvalidFilePath                 =    -14488

          eFWGetDirNodeNameErr1              =    -14501

          eFWGetDirNodeNameErr2              =    -14502

          eFWGetDirNodeNameErr3              =    -14503

          eFWGetDirNodeNameErr4              =    -14504

     Errors received in the range -14700: -14780 denote specific server
     errors.

     Contact Directory Services Server support when these errors are
     encountered

          eParameterSendError                =    -14700

          eParameterReceiveError             =    -14720

          eServerSendError                   =    -14740

          eServerReceiveError                =    -14760

          eMemoryError                       =    -14900

          eMemoryAllocError                  =    -14901

          eServerError                       =    -14910

          eParameterError                    =    -14915

     Server response errors

     (These errors indicate that the plug-in or server did not return the
     required data)

          eDataReceiveErr_NoDirRef           =    -14950

          // No tDirReference returned

          eDataReceiveErr_NoRecRef           =    -14951

          // No tRecordReference returned

          eDataReceiveErr_NoAttrListRef      =    -14952

          // No tAttributeListRef returned

          eDataReceiveErr_NoAttrValueListRef =    -14953

          // No tAttributeValueListRef returned

          eDataReceiveErr_NoAttrEntry        =    -14954

          // No tAttributeEntry returned

          eDataReceiveErr_NoAttrValueEntry   =    -14955

          // No tAttributeValueEntry returned

          eDataReceiveErr_NoNodeCount        =    -14956

          // No node Count returned

          eDataReceiveErr_NoAttrCount        =    -14957

          // No attribute count returned

          eDataReceiveErr_NoRecEntry         =    -14958

          // No tRecordEntry returned

          eDataReceiveErr_NoRecEntryCount    =    -14959

          // No record entry count returned

          eDataReceiveErr_NoRecMatchCount    =    -14960

          // No record match count returned

          eDataReceiveErr_NoDataBuff         =    -14961

          // No tDataBuffer returned

          eDataReceiveErr_NoContinueData     =    -14962

          // No continue data returned

          eDataReceiveErr_NoNodeChangeToken  =    -14963

          // No node Change Token returned

          eNoLongerSupported                 =    -14986

          eUndefinedError                    =    -14987

          eNotYetImplemented                 =    -14988


OPEN SOURCE

     The source code for DirectoryService is available as part of Apple's Dar-
     win open source initiative.  DirectoryService is part of the Directory-
     Service project.  More information on Darwin may be found on the Web at

           http://developer.apple.com/darwin/projects/opendirectory/

     Directory Services Access API and Plug-in API is documented at

           http://developer.apple.com/referencelibrary/Networking/

     The headers for the DirectoryService APIs can also be found in the fol-
     lowing location:

           /System/Library/Frameworks/DirectoryService.framework/Headers/


FILES

     /usr/sbin/DirectoryService

     /Library/Logs/DirectoryService/DirectoryService.debug.log

     /Library/Logs/DirectoryService/DirectoryService.error.log

     /Library/Logs/DirectoryService/DirectoryService.server.log


SEE ALSO

     DirectoryServiceAttributes(7), dscl(1), dsmemberutil(1), dscacheutil(1),
     dseditgroup(8), dsenableroot(8), dserr(8), pwpolicy(8)

MacOSX                           Feb 21, 2003                           MacOSX

Mac OS X 10.5 - Generated Sun Oct 28 21:45:47 EDT 2007