Commits

Ronald Oussoren committed d12b2d4

Update metadata and implement tests for the metadata

Comments (0)

Files changed (24)

pyobjc-framework-OpenDirectory/Lib/CFOpenDirectory/_metadata.py

 # This file is generated by objective.metadata
 #
-# Last update: Fri May 25 17:46:58 2012
+# Last update: Mon Sep 24 10:17:48 2012
 
 import objc, sys
 
 
 misc = {
 }
-constants = '''$kODAttributeTypeAccessControlEntry$kODAttributeTypeAddressLine1$kODAttributeTypeAddressLine2$kODAttributeTypeAddressLine3$kODAttributeTypeAdminLimits$kODAttributeTypeAdvertisedServices$kODAttributeTypeAlias$kODAttributeTypeAllAttributes$kODAttributeTypeAllTypes$kODAttributeTypeAltSecurityIdentities$kODAttributeTypeAreaCode$kODAttributeTypeAttrListRefCount$kODAttributeTypeAttrListRefs$kODAttributeTypeAttrListValueRefCount$kODAttributeTypeAttrListValueRefs$kODAttributeTypeAuthCredential$kODAttributeTypeAuthMethod$kODAttributeTypeAuthenticationAuthority$kODAttributeTypeAuthenticationHint$kODAttributeTypeAuthorityRevocationList$kODAttributeTypeAutomaticSearchPath$kODAttributeTypeAutomountInformation$kODAttributeTypeBirthday$kODAttributeTypeBootParams$kODAttributeTypeBuildVersion$kODAttributeTypeBuilding$kODAttributeTypeCACertificate$kODAttributeTypeCapacity$kODAttributeTypeCertificateRevocationList$kODAttributeTypeCity$kODAttributeTypeComment$kODAttributeTypeCompany$kODAttributeTypeComputers$kODAttributeTypeConfigAvailable$kODAttributeTypeConfigFile$kODAttributeTypeContactGUID$kODAttributeTypeContactPerson$kODAttributeTypeCopyTimestamp$kODAttributeTypeCoreFWVersion$kODAttributeTypeCountry$kODAttributeTypeCreationTimestamp$kODAttributeTypeCrossCertificatePair$kODAttributeTypeCustomSearchPath$kODAttributeTypeDNSDomain$kODAttributeTypeDNSName$kODAttributeTypeDNSNameServer$kODAttributeTypeDataStamp$kODAttributeTypeDateRecordCreated$kODAttributeTypeDepartment$kODAttributeTypeDirRefCount$kODAttributeTypeDirRefs$kODAttributeTypeEMailAddress$kODAttributeTypeEMailContacts$kODAttributeTypeENetAddress$kODAttributeTypeExpire$kODAttributeTypeFWVersion$kODAttributeTypeFaxNumber$kODAttributeTypeFirstName$kODAttributeTypeFullName$kODAttributeTypeFunctionalState$kODAttributeTypeGUID$kODAttributeTypeGroup$kODAttributeTypeGroupMembers$kODAttributeTypeGroupMembership$kODAttributeTypeGroupServices$kODAttributeTypeHTML$kODAttributeTypeHardwareUUID$kODAttributeTypeHomeDirectory$kODAttributeTypeHomeDirectoryQuota$kODAttributeTypeHomeDirectorySoftQuota$kODAttributeTypeHomeLocOwner$kODAttributeTypeHomePhoneNumber$kODAttributeTypeIMHandle$kODAttributeTypeIPAddress$kODAttributeTypeIPAddressAndENetAddress$kODAttributeTypeIPv6Address$kODAttributeTypeInternetAlias$kODAttributeTypeJPEGPhoto$kODAttributeTypeJobTitle$kODAttributeTypeKDCAuthKey$kODAttributeTypeKDCConfigData$kODAttributeTypeKerberosRealm$kODAttributeTypeKerberosServices$kODAttributeTypeKeywords$kODAttributeTypeLDAPReadReplicas$kODAttributeTypeLDAPSearchBaseSuffix$kODAttributeTypeLDAPWriteReplicas$kODAttributeTypeLastName$kODAttributeTypeLocalOnlySearchPath$kODAttributeTypeLocaleRelay$kODAttributeTypeLocaleSubnets$kODAttributeTypeLocation$kODAttributeTypeMCXFlags$kODAttributeTypeMCXSettings$kODAttributeTypeMIME$kODAttributeTypeMailAttribute$kODAttributeTypeMapCoordinates$kODAttributeTypeMapGUID$kODAttributeTypeMapURI$kODAttributeTypeMetaAmbiguousName$kODAttributeTypeMetaAugmentedAttributes$kODAttributeTypeMetaAutomountMap$kODAttributeTypeMetaNodeLocation$kODAttributeTypeMetaRecordName$kODAttributeTypeMiddleName$kODAttributeTypeMobileNumber$kODAttributeTypeModificationTimestamp$kODAttributeTypeNFSHomeDirectory$kODAttributeTypeNTDomainComputerAccount$kODAttributeTypeNamePrefix$kODAttributeTypeNameSuffix$kODAttributeTypeNativeOnly$kODAttributeTypeNestedGroups$kODAttributeTypeNetGroupTriplet$kODAttributeTypeNetGroups$kODAttributeTypeNetworkInterfaces$kODAttributeTypeNetworkNumber$kODAttributeTypeNickName$kODAttributeTypeNodePath$kODAttributeTypeNodeRefCount$kODAttributeTypeNodeRefs$kODAttributeTypeNote$kODAttributeTypeNumTableList$kODAttributeTypeOperatingSystem$kODAttributeTypeOperatingSystemVersion$kODAttributeTypeOrganizationInfo$kODAttributeTypeOrganizationName$kODAttributeTypeOriginalHomeDirectory$kODAttributeTypeOriginalNFSHomeDirectory$kODAttributeTypeOriginalNodeName$kODAttributeTypeOwner$kODAttributeTypeOwnerGUID$kODAttributeTypePGPPublicKey$kODAttributeTypePIDValue$kODAttributeTypePagerNumber$kODAttributeTypeParentLocales$kODAttributeTypePassword$kODAttributeTypePasswordPlus$kODAttributeTypePasswordPolicyOptions$kODAttributeTypePasswordServerList$kODAttributeTypePasswordServerLocation$kODAttributeTypePhoneContacts$kODAttributeTypePhoneNumber$kODAttributeTypePicture$kODAttributeTypePlugInInfo$kODAttributeTypePluginIndex$kODAttributeTypePort$kODAttributeTypePostalAddress$kODAttributeTypePostalAddressContacts$kODAttributeTypePostalCode$kODAttributeTypePresetUserIsAdmin$kODAttributeTypePrimaryComputerGUID$kODAttributeTypePrimaryComputerList$kODAttributeTypePrimaryGroupID$kODAttributeTypePrimaryLocale$kODAttributeTypePrimaryNTDomain$kODAttributeTypePrintServiceInfoText$kODAttributeTypePrintServiceInfoXML$kODAttributeTypePrintServiceUserData$kODAttributeTypePrinter1284DeviceID$kODAttributeTypePrinterLPRHost$kODAttributeTypePrinterLPRQueue$kODAttributeTypePrinterMakeAndModel$kODAttributeTypePrinterType$kODAttributeTypePrinterURI$kODAttributeTypePrinterXRISupported$kODAttributeTypeProcessName$kODAttributeTypeProtocolNumber$kODAttributeTypeProtocols$kODAttributeTypePwdAgingPolicy$kODAttributeTypeRPCNumber$kODAttributeTypeReadOnlyNode$kODAttributeTypeRealUserID$kODAttributeTypeRecRefCount$kODAttributeTypeRecRefs$kODAttributeTypeRecordName$kODAttributeTypeRecordType$kODAttributeTypeRelationships$kODAttributeTypeRelativeDNPrefix$kODAttributeTypeResourceInfo$kODAttributeTypeResourceType$kODAttributeTypeSMBAcctFlags$kODAttributeTypeSMBGroupRID$kODAttributeTypeSMBHome$kODAttributeTypeSMBHomeDrive$kODAttributeTypeSMBKickoffTime$kODAttributeTypeSMBLogoffTime$kODAttributeTypeSMBLogonTime$kODAttributeTypeSMBPWDLastSet$kODAttributeTypeSMBPrimaryGroupSID$kODAttributeTypeSMBProfilePath$kODAttributeTypeSMBRID$kODAttributeTypeSMBSID$kODAttributeTypeSMBScriptPath$kODAttributeTypeSMBUserWorkstations$kODAttributeTypeSchema$kODAttributeTypeSearchPath$kODAttributeTypeSearchPolicy$kODAttributeTypeServiceType$kODAttributeTypeServicesLocator$kODAttributeTypeSetupAdvertising$kODAttributeTypeSetupAutoRegister$kODAttributeTypeSetupLocation$kODAttributeTypeSetupOccupation$kODAttributeTypeStandardOnly$kODAttributeTypeState$kODAttributeTypeStreet$kODAttributeTypeSubNodes$kODAttributeTypeTimePackage$kODAttributeTypeTimeToLive$kODAttributeTypeTotalRefCount$kODAttributeTypeTotalSize$kODAttributeTypeTrustInformation$kODAttributeTypeURL$kODAttributeTypeUniqueID$kODAttributeTypeUserCertificate$kODAttributeTypeUserPKCS12Data$kODAttributeTypeUserSMIMECertificate$kODAttributeTypeUserShell$kODAttributeTypeVFSDumpFreq$kODAttributeTypeVFSLinkDir$kODAttributeTypeVFSOpts$kODAttributeTypeVFSPassNo$kODAttributeTypeVFSType$kODAttributeTypeVersion$kODAttributeTypeWeblogURI$kODAttributeTypeXMLPlist$kODAuthenticationType2WayRandom$kODAuthenticationType2WayRandomChangePasswd$kODAuthenticationTypeAPOP$kODAuthenticationTypeCRAM_MD5$kODAuthenticationTypeChangePasswd$kODAuthenticationTypeClearText$kODAuthenticationTypeCrypt$kODAuthenticationTypeDIGEST_MD5$kODAuthenticationTypeDeleteUser$kODAuthenticationTypeGetEffectivePolicy$kODAuthenticationTypeGetGlobalPolicy$kODAuthenticationTypeGetKerberosPrincipal$kODAuthenticationTypeGetPolicy$kODAuthenticationTypeGetUserData$kODAuthenticationTypeGetUserName$kODAuthenticationTypeKerberosTickets$kODAuthenticationTypeMPPEMasterKeys$kODAuthenticationTypeMSCHAP2$kODAuthenticationTypeNTLMv2$kODAuthenticationTypeNTLMv2WithSessionKey$kODAuthenticationTypeNewUser$kODAuthenticationTypeNewUserWithPolicy$kODAuthenticationTypeNodeNativeClearTextOK$kODAuthenticationTypeNodeNativeNoClearText$kODAuthenticationTypeReadSecureHash$kODAuthenticationTypeSMBNTv2UserSessionKey$kODAuthenticationTypeSMBWorkstationCredentialSessionKey$kODAuthenticationTypeSMB_LM_Key$kODAuthenticationTypeSMB_NT_Key$kODAuthenticationTypeSMB_NT_UserSessionKey$kODAuthenticationTypeSMB_NT_WithUserSessionKey$kODAuthenticationTypeSecureHash$kODAuthenticationTypeSetCertificateHashAsCurrent$kODAuthenticationTypeSetGlobalPolicy$kODAuthenticationTypeSetLMHash$kODAuthenticationTypeSetNTHash$kODAuthenticationTypeSetPassword$kODAuthenticationTypeSetPasswordAsCurrent$kODAuthenticationTypeSetPolicy$kODAuthenticationTypeSetPolicyAsCurrent$kODAuthenticationTypeSetUserData$kODAuthenticationTypeSetUserName$kODAuthenticationTypeSetWorkstationPassword$kODAuthenticationTypeWithAuthorizationRef$kODAuthenticationTypeWriteSecureHash$kODErrorDomainFramework@^{__CFString=}$kODRecordTypeAFPServer$kODRecordTypeAliases$kODRecordTypeAttributeTypes$kODRecordTypeAugments$kODRecordTypeAutoServerSetup$kODRecordTypeAutomount$kODRecordTypeAutomountMap$kODRecordTypeBootp$kODRecordTypeCertificateAuthorities$kODRecordTypeComputerGroups$kODRecordTypeComputerLists$kODRecordTypeComputers$kODRecordTypeConfiguration$kODRecordTypeEthernets$kODRecordTypeFTPServer$kODRecordTypeFileMakerServers$kODRecordTypeGroups$kODRecordTypeHostServices$kODRecordTypeHosts$kODRecordTypeLDAPServer$kODRecordTypeLocations$kODRecordTypeMounts$kODRecordTypeNFS$kODRecordTypeNetDomains$kODRecordTypeNetGroups$kODRecordTypeNetworks$kODRecordTypePeople$kODRecordTypePresetComputerGroups$kODRecordTypePresetComputerLists$kODRecordTypePresetComputers$kODRecordTypePresetGroups$kODRecordTypePresetUsers$kODRecordTypePrintService$kODRecordTypePrintServiceUser$kODRecordTypePrinters$kODRecordTypeProtocols$kODRecordTypeQTSServer$kODRecordTypeRPC$kODRecordTypeRecordTypes$kODRecordTypeResources$kODRecordTypeSMBServer$kODRecordTypeServer$kODRecordTypeServices$kODRecordTypeSharePoints$kODRecordTypeUsers$kODRecordTypeWebServer$kODSessionDefault@^{__ODSession=}$kODSessionProxyAddress@^{__CFString=}$kODSessionProxyPassword@^{__CFString=}$kODSessionProxyPort@^{__CFString=}$kODSessionProxyUsername@^{__CFString=}$'''
+constants = '''$kODAttributeTypeAccessControlEntry$kODAttributeTypeAddressLine1$kODAttributeTypeAddressLine2$kODAttributeTypeAddressLine3$kODAttributeTypeAdminLimits$kODAttributeTypeAdvertisedServices$kODAttributeTypeAlias$kODAttributeTypeAllAttributes$kODAttributeTypeAllTypes$kODAttributeTypeAltSecurityIdentities$kODAttributeTypeAreaCode$kODAttributeTypeAttrListRefCount$kODAttributeTypeAttrListRefs$kODAttributeTypeAttrListValueRefCount$kODAttributeTypeAttrListValueRefs$kODAttributeTypeAuthCredential$kODAttributeTypeAuthMethod$kODAttributeTypeAuthenticationAuthority$kODAttributeTypeAuthenticationHint$kODAttributeTypeAuthorityRevocationList$kODAttributeTypeAutomaticSearchPath$kODAttributeTypeAutomountInformation$kODAttributeTypeBirthday$kODAttributeTypeBootParams$kODAttributeTypeBuildVersion$kODAttributeTypeBuilding$kODAttributeTypeCACertificate$kODAttributeTypeCapacity$kODAttributeTypeCertificateRevocationList$kODAttributeTypeCity$kODAttributeTypeComment$kODAttributeTypeCompany$kODAttributeTypeComputers$kODAttributeTypeConfigAvailable$kODAttributeTypeConfigFile$kODAttributeTypeContactGUID$kODAttributeTypeContactPerson$kODAttributeTypeCopyTimestamp$kODAttributeTypeCoreFWVersion$kODAttributeTypeCountry$kODAttributeTypeCreationTimestamp$kODAttributeTypeCrossCertificatePair$kODAttributeTypeCustomSearchPath$kODAttributeTypeDNSDomain$kODAttributeTypeDNSName$kODAttributeTypeDNSNameServer$kODAttributeTypeDataStamp$kODAttributeTypeDateRecordCreated$kODAttributeTypeDepartment$kODAttributeTypeDirRefCount$kODAttributeTypeDirRefs$kODAttributeTypeEMailAddress$kODAttributeTypeEMailContacts$kODAttributeTypeENetAddress$kODAttributeTypeExpire$kODAttributeTypeFWVersion$kODAttributeTypeFaxNumber$kODAttributeTypeFirstName$kODAttributeTypeFullName$kODAttributeTypeFunctionalState$kODAttributeTypeGUID$kODAttributeTypeGroup$kODAttributeTypeGroupMembers$kODAttributeTypeGroupMembership$kODAttributeTypeGroupServices$kODAttributeTypeHTML$kODAttributeTypeHardwareUUID$kODAttributeTypeHomeDirectory$kODAttributeTypeHomeDirectoryQuota$kODAttributeTypeHomeDirectorySoftQuota$kODAttributeTypeHomeLocOwner$kODAttributeTypeHomePhoneNumber$kODAttributeTypeIMHandle$kODAttributeTypeIPAddress$kODAttributeTypeIPAddressAndENetAddress$kODAttributeTypeIPv6Address$kODAttributeTypeInternetAlias$kODAttributeTypeJPEGPhoto$kODAttributeTypeJobTitle$kODAttributeTypeKDCAuthKey$kODAttributeTypeKDCConfigData$kODAttributeTypeKerberosRealm$kODAttributeTypeKerberosServices$kODAttributeTypeKeywords$kODAttributeTypeLDAPReadReplicas$kODAttributeTypeLDAPSearchBaseSuffix$kODAttributeTypeLDAPWriteReplicas$kODAttributeTypeLastName$kODAttributeTypeLocalOnlySearchPath$kODAttributeTypeLocaleRelay$kODAttributeTypeLocaleSubnets$kODAttributeTypeLocation$kODAttributeTypeMCXFlags$kODAttributeTypeMCXSettings$kODAttributeTypeMIME$kODAttributeTypeMailAttribute$kODAttributeTypeMapCoordinates$kODAttributeTypeMapGUID$kODAttributeTypeMapURI$kODAttributeTypeMetaAmbiguousName$kODAttributeTypeMetaAugmentedAttributes$kODAttributeTypeMetaAutomountMap$kODAttributeTypeMetaNodeLocation$kODAttributeTypeMetaRecordName$kODAttributeTypeMiddleName$kODAttributeTypeMobileNumber$kODAttributeTypeModificationTimestamp$kODAttributeTypeNFSHomeDirectory$kODAttributeTypeNTDomainComputerAccount$kODAttributeTypeNamePrefix$kODAttributeTypeNameSuffix$kODAttributeTypeNativeOnly$kODAttributeTypeNestedGroups$kODAttributeTypeNetGroupTriplet$kODAttributeTypeNetGroups$kODAttributeTypeNetworkInterfaces$kODAttributeTypeNetworkNumber$kODAttributeTypeNickName$kODAttributeTypeNodeOptions$kODAttributeTypeNodePath$kODAttributeTypeNodeRefCount$kODAttributeTypeNodeRefs$kODAttributeTypeNote$kODAttributeTypeNumTableList$kODAttributeTypeOperatingSystem$kODAttributeTypeOperatingSystemVersion$kODAttributeTypeOrganizationInfo$kODAttributeTypeOrganizationName$kODAttributeTypeOriginalHomeDirectory$kODAttributeTypeOriginalNFSHomeDirectory$kODAttributeTypeOriginalNodeName$kODAttributeTypeOwner$kODAttributeTypeOwnerGUID$kODAttributeTypePGPPublicKey$kODAttributeTypePIDValue$kODAttributeTypePagerNumber$kODAttributeTypeParentLocales$kODAttributeTypePassword$kODAttributeTypePasswordPlus$kODAttributeTypePasswordPolicyOptions$kODAttributeTypePasswordServerList$kODAttributeTypePasswordServerLocation$kODAttributeTypePhoneContacts$kODAttributeTypePhoneNumber$kODAttributeTypePicture$kODAttributeTypePlugInInfo$kODAttributeTypePluginIndex$kODAttributeTypePort$kODAttributeTypePostalAddress$kODAttributeTypePostalAddressContacts$kODAttributeTypePostalCode$kODAttributeTypePresetUserIsAdmin$kODAttributeTypePrimaryComputerGUID$kODAttributeTypePrimaryComputerList$kODAttributeTypePrimaryGroupID$kODAttributeTypePrimaryLocale$kODAttributeTypePrimaryNTDomain$kODAttributeTypePrintServiceInfoText$kODAttributeTypePrintServiceInfoXML$kODAttributeTypePrintServiceUserData$kODAttributeTypePrinter1284DeviceID$kODAttributeTypePrinterLPRHost$kODAttributeTypePrinterLPRQueue$kODAttributeTypePrinterMakeAndModel$kODAttributeTypePrinterType$kODAttributeTypePrinterURI$kODAttributeTypePrinterXRISupported$kODAttributeTypeProcessName$kODAttributeTypeProtocolNumber$kODAttributeTypeProtocols$kODAttributeTypePwdAgingPolicy$kODAttributeTypeRPCNumber$kODAttributeTypeReadOnlyNode$kODAttributeTypeRealUserID$kODAttributeTypeRecRefCount$kODAttributeTypeRecRefs$kODAttributeTypeRecordName$kODAttributeTypeRecordType$kODAttributeTypeRelationships$kODAttributeTypeRelativeDNPrefix$kODAttributeTypeResourceInfo$kODAttributeTypeResourceType$kODAttributeTypeSMBAcctFlags$kODAttributeTypeSMBGroupRID$kODAttributeTypeSMBHome$kODAttributeTypeSMBHomeDrive$kODAttributeTypeSMBKickoffTime$kODAttributeTypeSMBLogoffTime$kODAttributeTypeSMBLogonTime$kODAttributeTypeSMBPWDLastSet$kODAttributeTypeSMBPrimaryGroupSID$kODAttributeTypeSMBProfilePath$kODAttributeTypeSMBRID$kODAttributeTypeSMBSID$kODAttributeTypeSMBScriptPath$kODAttributeTypeSMBUserWorkstations$kODAttributeTypeSchema$kODAttributeTypeSearchPath$kODAttributeTypeSearchPolicy$kODAttributeTypeServiceType$kODAttributeTypeServicesLocator$kODAttributeTypeSetupAdvertising$kODAttributeTypeSetupAutoRegister$kODAttributeTypeSetupLocation$kODAttributeTypeSetupOccupation$kODAttributeTypeStandardOnly$kODAttributeTypeState$kODAttributeTypeStreet$kODAttributeTypeSubNodes$kODAttributeTypeTimePackage$kODAttributeTypeTimeToLive$kODAttributeTypeTotalRefCount$kODAttributeTypeTotalSize$kODAttributeTypeTrustInformation$kODAttributeTypeURL$kODAttributeTypeUniqueID$kODAttributeTypeUserCertificate$kODAttributeTypeUserPKCS12Data$kODAttributeTypeUserSMIMECertificate$kODAttributeTypeUserShell$kODAttributeTypeVFSDumpFreq$kODAttributeTypeVFSLinkDir$kODAttributeTypeVFSOpts$kODAttributeTypeVFSPassNo$kODAttributeTypeVFSType$kODAttributeTypeVersion$kODAttributeTypeWeblogURI$kODAttributeTypeXMLPlist$kODAuthenticationType2WayRandom$kODAuthenticationType2WayRandomChangePasswd$kODAuthenticationTypeAPOP$kODAuthenticationTypeCRAM_MD5$kODAuthenticationTypeChangePasswd$kODAuthenticationTypeClearText$kODAuthenticationTypeCrypt$kODAuthenticationTypeDIGEST_MD5$kODAuthenticationTypeDeleteUser$kODAuthenticationTypeGetEffectivePolicy$kODAuthenticationTypeGetGlobalPolicy$kODAuthenticationTypeGetKerberosPrincipal$kODAuthenticationTypeGetPolicy$kODAuthenticationTypeGetUserData$kODAuthenticationTypeGetUserName$kODAuthenticationTypeKerberosTickets$kODAuthenticationTypeMPPEMasterKeys$kODAuthenticationTypeMSCHAP2$kODAuthenticationTypeNTLMv2$kODAuthenticationTypeNTLMv2WithSessionKey$kODAuthenticationTypeNewUser$kODAuthenticationTypeNewUserWithPolicy$kODAuthenticationTypeNodeNativeClearTextOK$kODAuthenticationTypeNodeNativeNoClearText$kODAuthenticationTypeReadSecureHash$kODAuthenticationTypeSMBNTv2UserSessionKey$kODAuthenticationTypeSMBWorkstationCredentialSessionKey$kODAuthenticationTypeSMB_LM_Key$kODAuthenticationTypeSMB_NT_Key$kODAuthenticationTypeSMB_NT_UserSessionKey$kODAuthenticationTypeSMB_NT_WithUserSessionKey$kODAuthenticationTypeSecureHash$kODAuthenticationTypeSetCertificateHashAsCurrent$kODAuthenticationTypeSetGlobalPolicy$kODAuthenticationTypeSetLMHash$kODAuthenticationTypeSetNTHash$kODAuthenticationTypeSetPassword$kODAuthenticationTypeSetPasswordAsCurrent$kODAuthenticationTypeSetPolicy$kODAuthenticationTypeSetPolicyAsCurrent$kODAuthenticationTypeSetUserData$kODAuthenticationTypeSetUserName$kODAuthenticationTypeSetWorkstationPassword$kODAuthenticationTypeWithAuthorizationRef$kODAuthenticationTypeWriteSecureHash$kODErrorDomainFramework@^{__CFString=}$kODNodeOptionsQuerySkippedSubnode@^{__CFString=}$kODRecordTypeAFPServer$kODRecordTypeAliases$kODRecordTypeAttributeTypes$kODRecordTypeAugments$kODRecordTypeAutoServerSetup$kODRecordTypeAutomount$kODRecordTypeAutomountMap$kODRecordTypeBootp$kODRecordTypeCertificateAuthorities$kODRecordTypeComputerGroups$kODRecordTypeComputerLists$kODRecordTypeComputers$kODRecordTypeConfiguration$kODRecordTypeEthernets$kODRecordTypeFTPServer$kODRecordTypeFileMakerServers$kODRecordTypeGroups$kODRecordTypeHostServices$kODRecordTypeHosts$kODRecordTypeLDAPServer$kODRecordTypeLocations$kODRecordTypeMounts$kODRecordTypeNFS$kODRecordTypeNetDomains$kODRecordTypeNetGroups$kODRecordTypeNetworks$kODRecordTypePeople$kODRecordTypePresetComputerGroups$kODRecordTypePresetComputerLists$kODRecordTypePresetComputers$kODRecordTypePresetGroups$kODRecordTypePresetUsers$kODRecordTypePrintService$kODRecordTypePrintServiceUser$kODRecordTypePrinters$kODRecordTypeProtocols$kODRecordTypeQTSServer$kODRecordTypeQueryInformation$kODRecordTypeRPC$kODRecordTypeRecordTypes$kODRecordTypeResources$kODRecordTypeSMBServer$kODRecordTypeServer$kODRecordTypeServices$kODRecordTypeSharePoints$kODRecordTypeUsers$kODRecordTypeWebServer$kODSessionDefault@^{__ODSession=}$kODSessionProxyAddress@^{__CFString=}$kODSessionProxyPassword@^{__CFString=}$kODSessionProxyPort@^{__CFString=}$kODSessionProxyUsername@^{__CFString=}$'''
 enums = '''$kODErrorCredentialsAccountDisabled@5301$kODErrorCredentialsAccountExpired@5302$kODErrorCredentialsAccountInactive@5303$kODErrorCredentialsAccountNotFound@5300$kODErrorCredentialsContactMaster@5204$kODErrorCredentialsInvalid@5000$kODErrorCredentialsInvalidComputer@5501$kODErrorCredentialsInvalidLogonHours@5500$kODErrorCredentialsMethodNotSupported@5100$kODErrorCredentialsNotAuthorized@5101$kODErrorCredentialsOperationFailed@5103$kODErrorCredentialsParameterError@5102$kODErrorCredentialsPasswordChangeRequired@5401$kODErrorCredentialsPasswordChangeTooSoon@5407$kODErrorCredentialsPasswordExpired@5400$kODErrorCredentialsPasswordNeedsDigit@5406$kODErrorCredentialsPasswordNeedsLetter@5405$kODErrorCredentialsPasswordQualityFailed@5402$kODErrorCredentialsPasswordTooLong@5404$kODErrorCredentialsPasswordTooShort@5403$kODErrorCredentialsPasswordUnrecoverable@5408$kODErrorCredentialsServerCommunicationError@5205$kODErrorCredentialsServerError@5202$kODErrorCredentialsServerNotFound@5201$kODErrorCredentialsServerTimeout@5203$kODErrorCredentialsServerUnreachable@5200$kODErrorDaemonError@10002$kODErrorNodeConnectionFailed@2100$kODErrorNodeDisabled@2002$kODErrorNodeUnknownHost@2200$kODErrorNodeUnknownName@2000$kODErrorNodeUnknownType@2001$kODErrorPluginError@10001$kODErrorPluginOperationNotSupported@10000$kODErrorPluginOperationTimeout@10003$kODErrorQueryInvalidMatchType@3100$kODErrorQuerySynchronize@3000$kODErrorQueryTimeout@3102$kODErrorQueryUnsupportedMatchType@3101$kODErrorRecordAlreadyExists@4102$kODErrorRecordAttributeNotFound@4201$kODErrorRecordAttributeUnknownType@4200$kODErrorRecordAttributeValueNotFound@4203$kODErrorRecordAttributeValueSchemaError@4202$kODErrorRecordInvalidType@4101$kODErrorRecordNoLongerExists@4104$kODErrorRecordParameterError@4100$kODErrorRecordPermissionError@4001$kODErrorRecordReadOnlyNode@4000$kODErrorRecordTypeDisabled@4103$kODErrorSessionDaemonNotRunning@1002$kODErrorSessionDaemonRefused@1003$kODErrorSessionLocalOnlyDaemonInUse@1000$kODErrorSessionNormalDaemonInUse@1001$kODErrorSessionProxyCommunicationError@1100$kODErrorSessionProxyIPUnreachable@1102$kODErrorSessionProxyUnknownHost@1103$kODErrorSessionProxyVersionMismatch@1101$kODErrorSuccess@0$kODMatchAny@1$kODMatchBeginsWith@8194$kODMatchContains@8196$kODMatchEndsWith@8195$kODMatchEqualTo@8193$kODMatchGreaterThan@8198$kODMatchInsensitiveBeginsWith@8450$kODMatchInsensitiveContains@8452$kODMatchInsensitiveEndsWith@8451$kODMatchInsensitiveEqualTo@8449$kODMatchLessThan@8199$kODNodeTypeAuthentication@8705$kODNodeTypeConfigure@8706$kODNodeTypeContacts@8708$kODNodeTypeLocalNodes@8704$kODNodeTypeNetwork@8709$'''
 misc.update({})
-functions={'ODNodeCopySubnodeNames': (b'@^{_ODNode=}^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {1: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeSetCredentialsExtended': (b'B^{_ODNode=}@@@^^{__CFArray}^^{_ODContext}^^{__CFError}', '', {'arguments': {6: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODSessionCopyNodeNames': (b'@^{__CFAllocator=}^{_ODSessionRef=}^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeGetTypeID': (b'L',), 'ODNodeCustomCall': (b'^{__CFData=}^{_ODNode=}l^{__CFData=}^^{__CFError}', '', {'arguments': {3: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordDelete': (b'B^{_ODRecord=}^^{__CFError}', '', {'arguments': {1: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordSetNodeCredentials': (b'B^{_ODRecord=}^{__CFString=}^{__CFString=}^^{__CFError}', '', {'arguments': {3: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordGetRecordName': (b'^{__CFString=}^{_ODRecord=}',), 'ODQueryScheduleWithRunLoop': (b'v^{_ODQuery=}^{__CFRunLoop=}^{__CFString=}',), 'ODQuerySetCallback': (b'v^{_ODQuery=}^?^v', '', {'arguments': {1: {'callable': {'retval': {'type': b'v'}, 'arguments': {0: {'type': b'^{__ODQuery=}'}, 1: {'type': b'@'}, 2: {'type': b'^{__CFError=}'}, 3: {'type': b'^v'}}}}}}), 'ODRecordAddMember': (b'B^{_ODRecord=}^{_ODRecord=}^^{__CFError}', '', {'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordCopyValues': (b'@^{_ODRecord=}@^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODQuerySynchronize': (b'v^{_ODQuery=}',), 'ODNodeCreateCopy': (b'^{_ODNode=}^{__CFAllocator=}^{_ODNode=}^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordCopyDetails': (b'^{__CFDictionary=}^{_ODRecord=}@^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordGetRecordType': (b'^{__CFString=}^{_ODRecord=}',), 'ODNodeCopyRecord': (b'^{_ODRecord=}^{_ODNode=}@^{__CFString=}@^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {4: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeGetName': (b'^{__CFString=}^{_ODNode=}',), 'ODSessionCreate': (b'^{_ODSessionRef=}^{__CFAllocator=}^{__CFDictionary=}^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordContainsMember': (b'B^{_ODRecord=}^{_ODRecord=}^^{__CFError}', '', {'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordSynchronize': (b'B^{_ODRecord=}^^{__CFError}', '', {'arguments': {1: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODQueryCreateWithNodeType': (b'^{_ODQuery=}^{__CFAllocator=}I@@I@@l^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {8: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeCopySupportedRecordTypes': (b'@^{_ODNode=}^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {1: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODQuerySetDispatchQueue': (b'v^{_ODQuery=}^{dispatch_queue_s=}',), 'ODRecordVerifyPassword': (b'B^{_ODRecord=}^{__CFString=}^^{__CFError}', '', {'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeCopyDetails': (b'^{__CFDictionary=}^{_ODNode=}@^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODQueryCreateWithNode': (b'^{_ODQuery=}^{__CFAllocator=}^{_ODNode=}@@I@@l^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {8: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODContextGetTypeID': (b'L',), 'ODQueryCopyResults': (b'@^{_ODQuery=}B^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordCopyPasswordPolicy': (b'^{__CFDictionary=}^{__CFAllocator=}^{_ODRecord=}^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeSetCredentials': (b'B^{_ODNode=}@^{__CFString=}^{__CFString=}^^{__CFError}', '', {'arguments': {4: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeCreateRecord': (b'^{_ODRecord=}^{_ODNode=}@^{__CFString=}^{__CFDictionary=}^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {4: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordSetValue': (b'B^{_ODRecord=}@@^^{__CFError}', '', {'arguments': {3: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordSetNodeCredentialsExtended': (b'B^{_ODRecord=}@@@^^{__CFArray}^^{_ODContext}^^{__CFError}', '', {'arguments': {6: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODQueryGetTypeID': (b'L',), 'ODRecordSetNodeCredentialsUsingKerberosCache': (b'B^{_ODRecord=}^{__CFString=}^^{__CFError}', '', {'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeCreateWithName': (b'^{_ODNode=}^{__CFAllocator=}^{_ODSessionRef=}^{__CFString=}^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {3: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordRemoveValue': (b'B^{_ODRecord=}@@^^{__CFError}', '', {'arguments': {3: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODSessionGetTypeID': (b'L',), 'ODNodeCopySupportedAttributes': (b'@^{_ODNode=}@^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeSetCredentialsUsingKerberosCache': (b'B^{_ODNode=}^{__CFString=}^^{__CFError}', '', {'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordChangePassword': (b'B^{_ODRecord=}^{__CFString=}^{__CFString=}^^{__CFError}', '', {'arguments': {3: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordGetTypeID': (b'L',), 'ODRecordVerifyPasswordExtended': (b'B^{_ODRecord=}@@^^{__CFArray}^^{_ODContext}^^{__CFError}', '', {'arguments': {5: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordRemoveMember': (b'B^{_ODRecord=}^{_ODRecord=}^^{__CFError}', '', {'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeCreateWithNodeType': (b'^{_ODNode=}^{__CFAllocator=}^{_ODSessionRef=}I^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {3: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeCopyUnreachableSubnodeNames': (b'@^{_ODNode=}^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {1: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODQueryUnscheduleFromRunLoop': (b'v^{_ODQuery=}^{__CFRunLoop=}^{__CFString=}',), 'ODRecordAddValue': (b'B^{_ODRecord=}@@^^{__CFError}', '', {'arguments': {3: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}})}
+functions={'ODNodeCopySubnodeNames': (b'@^{_ODNode=}^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {1: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeSetCredentialsExtended': (b'B^{_ODNode=}@@@^^{__CFArray}^^{_ODContext}^^{__CFError}', '', {'arguments': {6: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeCreateCopy': (b'^{_ODNode=}^{__CFAllocator=}^{_ODNode=}^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeGetTypeID': (sel32or64(b'L', b'Q'),), 'ODNodeCustomCall': (sel32or64(b'^{__CFData=}^{_ODNode=}l^{__CFData=}^^{__CFError}', b'^{__CFData=}^{_ODNode=}q^{__CFData=}^^{__CFError}'), '', {'arguments': {3: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordDelete': (b'B^{_ODRecord=}^^{__CFError}', '', {'arguments': {1: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordSetNodeCredentials': (b'B^{_ODRecord=}^{__CFString=}^{__CFString=}^^{__CFError}', '', {'arguments': {3: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordGetRecordName': (b'^{__CFString=}^{_ODRecord=}',), 'ODQueryScheduleWithRunLoop': (b'v^{_ODQuery=}^{__CFRunLoop=}^{__CFString=}',), 'ODRecordAddMember': (b'B^{_ODRecord=}^{_ODRecord=}^^{__CFError}', '', {'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODQuerySetCallback': (b'v^{_ODQuery=}^?^v', '', {'arguments': {1: {'callable': {'retval': {'type': b'v'}, 'arguments': {0: {'type': b'^{__ODQuery=}'}, 1: {'type': b'@'}, 2: {'type': b'^{__CFError=}'}, 3: {'type': b'^v'}}}}}}), 'ODQuerySynchronize': (b'v^{_ODQuery=}',), 'ODSessionCopyNodeNames': (b'@^{__CFAllocator=}^{_ODSessionRef=}^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeCopySupportedAttributes': (b'@^{_ODNode=}@^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordGetRecordType': (b'^{__CFString=}^{_ODRecord=}',), 'ODNodeCopyRecord': (b'^{_ODRecord=}^{_ODNode=}@^{__CFString=}@^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {4: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeGetName': (b'^{__CFString=}^{_ODNode=}',), 'ODSessionCreate': (b'^{_ODSessionRef=}^{__CFAllocator=}^{__CFDictionary=}^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordContainsMember': (b'B^{_ODRecord=}^{_ODRecord=}^^{__CFError}', '', {'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordSynchronize': (b'B^{_ODRecord=}^^{__CFError}', '', {'arguments': {1: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODQueryCreateWithNodeType': (sel32or64(b'^{_ODQuery=}^{__CFAllocator=}I@@I@@l^^{__CFError}', b'^{_ODQuery=}^{__CFAllocator=}I@@I@@q^^{__CFError}'), '', {'retval': {'already_cfretained': True}, 'arguments': {8: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeCopySupportedRecordTypes': (b'@^{_ODNode=}^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {1: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODQuerySetDispatchQueue': (b'v^{_ODQuery=}^{dispatch_queue_s=}',), 'ODRecordVerifyPassword': (b'B^{_ODRecord=}^{__CFString=}^^{__CFError}', '', {'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeCopyDetails': (b'^{__CFDictionary=}^{_ODNode=}@^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODQueryCreateWithNode': (sel32or64(b'^{_ODQuery=}^{__CFAllocator=}^{_ODNode=}@@I@@l^^{__CFError}', b'^{_ODQuery=}^{__CFAllocator=}^{_ODNode=}@@I@@q^^{__CFError}'), '', {'retval': {'already_cfretained': True}, 'arguments': {8: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODContextGetTypeID': (sel32or64(b'L', b'Q'),), 'ODRecordCopyPasswordPolicy': (b'^{__CFDictionary=}^{__CFAllocator=}^{_ODRecord=}^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeSetCredentials': (b'B^{_ODNode=}@^{__CFString=}^{__CFString=}^^{__CFError}', '', {'arguments': {4: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeCreateRecord': (b'^{_ODRecord=}^{_ODNode=}@^{__CFString=}^{__CFDictionary=}^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {4: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordGetTypeID': (sel32or64(b'L', b'Q'),), 'ODRecordCopyValues': (b'@^{_ODRecord=}@^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordSetValue': (b'B^{_ODRecord=}@@^^{__CFError}', '', {'arguments': {3: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordSetNodeCredentialsExtended': (b'B^{_ODRecord=}@@@^^{__CFArray}^^{_ODContext}^^{__CFError}', '', {'arguments': {4: {'type_modifier': 'o'}, 5: {'type_modifier': 'o'}, 6: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODQueryGetTypeID': (sel32or64(b'L', b'Q'),), 'ODRecordSetNodeCredentialsUsingKerberosCache': (b'B^{_ODRecord=}^{__CFString=}^^{__CFError}', '', {'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeCreateWithName': (b'^{_ODNode=}^{__CFAllocator=}^{_ODSessionRef=}^{__CFString=}^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {3: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordRemoveValue': (b'B^{_ODRecord=}@@^^{__CFError}', '', {'arguments': {3: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODSessionGetTypeID': (sel32or64(b'L', b'Q'),), 'ODRecordCopyDetails': (b'^{__CFDictionary=}^{_ODRecord=}@^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeSetCredentialsUsingKerberosCache': (b'B^{_ODNode=}^{__CFString=}^^{__CFError}', '', {'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordChangePassword': (b'B^{_ODRecord=}^{__CFString=}^{__CFString=}^^{__CFError}', '', {'arguments': {3: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODQueryCopyResults': (b'@^{_ODQuery=}B^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordVerifyPasswordExtended': (b'B^{_ODRecord=}@@^^{__CFArray}^^{_ODContext}^^{__CFError}', '', {'arguments': {3: {'type_modifier': 'o'}, 4: {'type_modifier': 'o'}, 5: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODRecordRemoveMember': (b'B^{_ODRecord=}^{_ODRecord=}^^{__CFError}', '', {'arguments': {2: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeCreateWithNodeType': (b'^{_ODNode=}^{__CFAllocator=}^{_ODSessionRef=}I^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {3: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODNodeCopyUnreachableSubnodeNames': (b'@^{_ODNode=}^^{__CFError}', '', {'retval': {'already_cfretained': True}, 'arguments': {1: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}}), 'ODQueryUnscheduleFromRunLoop': (b'v^{_ODQuery=}^{__CFRunLoop=}^{__CFString=}',), 'ODRecordAddValue': (b'B^{_ODRecord=}@@^^{__CFError}', '', {'arguments': {3: {'already_cfretained': True, 'type_modifier': 'o', 'null_accepted': True}}})}
 cftypes=[('ODContextRef', b'^{__ODContext=}', 'ODContextGetTypeID', None), ('ODNodeRef', b'^{__ODNode=}', 'ODNodeGetTypeID', None), ('ODQueryRef', b'^{__ODQuery=}', 'ODQueryGetTypeID', None), ('ODRecordRef', b'^{__ODRecord=}', 'ODRecordGetTypeID', None), ('ODSessionRef', b'^{__ODSession=}', 'ODSessionGetTypeID', None)]
 expressions = {}
 

pyobjc-framework-OpenDirectory/Lib/OpenDirectory/_metadata.py

 # This file is generated by objective.metadata
 #
-# Last update: Wed Jun 27 17:59:40 2012
+# Last update: Mon Sep 24 10:17:48 2012
 
 import objc, sys
 
 
 misc = {
 }
-constants = '''$ODFrameworkErrorDomain$ODSessionProxyAddress$ODSessionProxyPassword$ODSessionProxyPort$ODSessionProxyUsername$kODAttributeTypeAccessControlEntry$kODAttributeTypeAddressLine1$kODAttributeTypeAddressLine2$kODAttributeTypeAddressLine3$kODAttributeTypeAdminLimits$kODAttributeTypeAdvertisedServices$kODAttributeTypeAlias$kODAttributeTypeAllAttributes$kODAttributeTypeAllTypes$kODAttributeTypeAltSecurityIdentities$kODAttributeTypeAreaCode$kODAttributeTypeAttrListRefCount$kODAttributeTypeAttrListRefs$kODAttributeTypeAttrListValueRefCount$kODAttributeTypeAttrListValueRefs$kODAttributeTypeAuthCredential$kODAttributeTypeAuthMethod$kODAttributeTypeAuthenticationAuthority$kODAttributeTypeAuthenticationHint$kODAttributeTypeAuthorityRevocationList$kODAttributeTypeAutomaticSearchPath$kODAttributeTypeAutomountInformation$kODAttributeTypeBirthday$kODAttributeTypeBootParams$kODAttributeTypeBuildVersion$kODAttributeTypeBuilding$kODAttributeTypeCACertificate$kODAttributeTypeCapacity$kODAttributeTypeCertificateRevocationList$kODAttributeTypeCity$kODAttributeTypeComment$kODAttributeTypeCompany$kODAttributeTypeComputers$kODAttributeTypeConfigAvailable$kODAttributeTypeConfigFile$kODAttributeTypeContactGUID$kODAttributeTypeContactPerson$kODAttributeTypeCopyTimestamp$kODAttributeTypeCoreFWVersion$kODAttributeTypeCountry$kODAttributeTypeCreationTimestamp$kODAttributeTypeCrossCertificatePair$kODAttributeTypeCustomSearchPath$kODAttributeTypeDNSDomain$kODAttributeTypeDNSName$kODAttributeTypeDNSNameServer$kODAttributeTypeDataStamp$kODAttributeTypeDateRecordCreated$kODAttributeTypeDepartment$kODAttributeTypeDirRefCount$kODAttributeTypeDirRefs$kODAttributeTypeEMailAddress$kODAttributeTypeEMailContacts$kODAttributeTypeENetAddress$kODAttributeTypeExpire$kODAttributeTypeFWVersion$kODAttributeTypeFaxNumber$kODAttributeTypeFirstName$kODAttributeTypeFullName$kODAttributeTypeFunctionalState$kODAttributeTypeGUID$kODAttributeTypeGroup$kODAttributeTypeGroupMembers$kODAttributeTypeGroupMembership$kODAttributeTypeGroupServices$kODAttributeTypeHTML$kODAttributeTypeHardwareUUID$kODAttributeTypeHomeDirectory$kODAttributeTypeHomeDirectoryQuota$kODAttributeTypeHomeDirectorySoftQuota$kODAttributeTypeHomeLocOwner$kODAttributeTypeHomePhoneNumber$kODAttributeTypeIMHandle$kODAttributeTypeIPAddress$kODAttributeTypeIPAddressAndENetAddress$kODAttributeTypeIPv6Address$kODAttributeTypeInternetAlias$kODAttributeTypeJPEGPhoto$kODAttributeTypeJobTitle$kODAttributeTypeKDCAuthKey$kODAttributeTypeKDCConfigData$kODAttributeTypeKerberosRealm$kODAttributeTypeKerberosServices$kODAttributeTypeKeywords$kODAttributeTypeLDAPReadReplicas$kODAttributeTypeLDAPSearchBaseSuffix$kODAttributeTypeLDAPWriteReplicas$kODAttributeTypeLastName$kODAttributeTypeLocalOnlySearchPath$kODAttributeTypeLocaleRelay$kODAttributeTypeLocaleSubnets$kODAttributeTypeLocation$kODAttributeTypeMCXFlags$kODAttributeTypeMCXSettings$kODAttributeTypeMIME$kODAttributeTypeMailAttribute$kODAttributeTypeMapCoordinates$kODAttributeTypeMapGUID$kODAttributeTypeMapURI$kODAttributeTypeMetaAmbiguousName$kODAttributeTypeMetaAugmentedAttributes$kODAttributeTypeMetaAutomountMap$kODAttributeTypeMetaNodeLocation$kODAttributeTypeMetaRecordName$kODAttributeTypeMiddleName$kODAttributeTypeMobileNumber$kODAttributeTypeModificationTimestamp$kODAttributeTypeNFSHomeDirectory$kODAttributeTypeNTDomainComputerAccount$kODAttributeTypeNamePrefix$kODAttributeTypeNameSuffix$kODAttributeTypeNativeOnly$kODAttributeTypeNestedGroups$kODAttributeTypeNetGroupTriplet$kODAttributeTypeNetGroups$kODAttributeTypeNetworkInterfaces$kODAttributeTypeNetworkNumber$kODAttributeTypeNickName$kODAttributeTypeNodeOptions$kODAttributeTypeNodePath$kODAttributeTypeNodeRefCount$kODAttributeTypeNodeRefs$kODAttributeTypeNote$kODAttributeTypeNumTableList$kODAttributeTypeOperatingSystem$kODAttributeTypeOperatingSystemVersion$kODAttributeTypeOrganizationInfo$kODAttributeTypeOrganizationName$kODAttributeTypeOriginalHomeDirectory$kODAttributeTypeOriginalNFSHomeDirectory$kODAttributeTypeOriginalNodeName$kODAttributeTypeOwner$kODAttributeTypeOwnerGUID$kODAttributeTypePGPPublicKey$kODAttributeTypePIDValue$kODAttributeTypePagerNumber$kODAttributeTypeParentLocales$kODAttributeTypePassword$kODAttributeTypePasswordPlus$kODAttributeTypePasswordPolicyOptions$kODAttributeTypePasswordServerList$kODAttributeTypePasswordServerLocation$kODAttributeTypePhoneContacts$kODAttributeTypePhoneNumber$kODAttributeTypePicture$kODAttributeTypePlugInInfo$kODAttributeTypePluginIndex$kODAttributeTypePort$kODAttributeTypePostalAddress$kODAttributeTypePostalAddressContacts$kODAttributeTypePostalCode$kODAttributeTypePresetUserIsAdmin$kODAttributeTypePrimaryComputerGUID$kODAttributeTypePrimaryComputerList$kODAttributeTypePrimaryGroupID$kODAttributeTypePrimaryLocale$kODAttributeTypePrimaryNTDomain$kODAttributeTypePrintServiceInfoText$kODAttributeTypePrintServiceInfoXML$kODAttributeTypePrintServiceUserData$kODAttributeTypePrinter1284DeviceID$kODAttributeTypePrinterLPRHost$kODAttributeTypePrinterLPRQueue$kODAttributeTypePrinterMakeAndModel$kODAttributeTypePrinterType$kODAttributeTypePrinterURI$kODAttributeTypePrinterXRISupported$kODAttributeTypeProcessName$kODAttributeTypeProtocolNumber$kODAttributeTypeProtocols$kODAttributeTypePwdAgingPolicy$kODAttributeTypeRPCNumber$kODAttributeTypeReadOnlyNode$kODAttributeTypeRealUserID$kODAttributeTypeRecRefCount$kODAttributeTypeRecRefs$kODAttributeTypeRecordName$kODAttributeTypeRecordType$kODAttributeTypeRelationships$kODAttributeTypeRelativeDNPrefix$kODAttributeTypeResourceInfo$kODAttributeTypeResourceType$kODAttributeTypeSMBAcctFlags$kODAttributeTypeSMBGroupRID$kODAttributeTypeSMBHome$kODAttributeTypeSMBHomeDrive$kODAttributeTypeSMBKickoffTime$kODAttributeTypeSMBLogoffTime$kODAttributeTypeSMBLogonTime$kODAttributeTypeSMBPWDLastSet$kODAttributeTypeSMBPrimaryGroupSID$kODAttributeTypeSMBProfilePath$kODAttributeTypeSMBRID$kODAttributeTypeSMBSID$kODAttributeTypeSMBScriptPath$kODAttributeTypeSMBUserWorkstations$kODAttributeTypeSchema$kODAttributeTypeSearchPath$kODAttributeTypeSearchPolicy$kODAttributeTypeServiceType$kODAttributeTypeServicesLocator$kODAttributeTypeSetupAdvertising$kODAttributeTypeSetupAutoRegister$kODAttributeTypeSetupLocation$kODAttributeTypeSetupOccupation$kODAttributeTypeStandardOnly$kODAttributeTypeState$kODAttributeTypeStreet$kODAttributeTypeSubNodes$kODAttributeTypeTimePackage$kODAttributeTypeTimeToLive$kODAttributeTypeTotalRefCount$kODAttributeTypeTotalSize$kODAttributeTypeTrustInformation$kODAttributeTypeURL$kODAttributeTypeUniqueID$kODAttributeTypeUserCertificate$kODAttributeTypeUserPKCS12Data$kODAttributeTypeUserSMIMECertificate$kODAttributeTypeUserShell$kODAttributeTypeVFSDumpFreq$kODAttributeTypeVFSLinkDir$kODAttributeTypeVFSOpts$kODAttributeTypeVFSPassNo$kODAttributeTypeVFSType$kODAttributeTypeVersion$kODAttributeTypeWeblogURI$kODAttributeTypeXMLPlist$kODAuthenticationType2WayRandom$kODAuthenticationType2WayRandomChangePasswd$kODAuthenticationTypeAPOP$kODAuthenticationTypeCRAM_MD5$kODAuthenticationTypeChangePasswd$kODAuthenticationTypeClearText$kODAuthenticationTypeCrypt$kODAuthenticationTypeDIGEST_MD5$kODAuthenticationTypeDeleteUser$kODAuthenticationTypeGetEffectivePolicy$kODAuthenticationTypeGetGlobalPolicy$kODAuthenticationTypeGetKerberosPrincipal$kODAuthenticationTypeGetPolicy$kODAuthenticationTypeGetUserData$kODAuthenticationTypeGetUserName$kODAuthenticationTypeKerberosTickets$kODAuthenticationTypeMPPEMasterKeys$kODAuthenticationTypeMSCHAP2$kODAuthenticationTypeNTLMv2$kODAuthenticationTypeNTLMv2WithSessionKey$kODAuthenticationTypeNewUser$kODAuthenticationTypeNewUserWithPolicy$kODAuthenticationTypeNodeNativeClearTextOK$kODAuthenticationTypeNodeNativeNoClearText$kODAuthenticationTypeReadSecureHash$kODAuthenticationTypeSMBNTv2UserSessionKey$kODAuthenticationTypeSMBWorkstationCredentialSessionKey$kODAuthenticationTypeSMB_LM_Key$kODAuthenticationTypeSMB_NT_Key$kODAuthenticationTypeSMB_NT_UserSessionKey$kODAuthenticationTypeSMB_NT_WithUserSessionKey$kODAuthenticationTypeSecureHash$kODAuthenticationTypeSetCertificateHashAsCurrent$kODAuthenticationTypeSetGlobalPolicy$kODAuthenticationTypeSetLMHash$kODAuthenticationTypeSetNTHash$kODAuthenticationTypeSetPassword$kODAuthenticationTypeSetPasswordAsCurrent$kODAuthenticationTypeSetPolicy$kODAuthenticationTypeSetPolicyAsCurrent$kODAuthenticationTypeSetUserData$kODAuthenticationTypeSetUserName$kODAuthenticationTypeSetWorkstationPassword$kODAuthenticationTypeWithAuthorizationRef$kODAuthenticationTypeWriteSecureHash$kODErrorDomainFramework@^{__CFString=}$kODNodeOptionsQuerySkippedSubnode@^{__CFString=}$kODRecordTypeAFPServer$kODRecordTypeAliases$kODRecordTypeAttributeTypes$kODRecordTypeAugments$kODRecordTypeAutoServerSetup$kODRecordTypeAutomount$kODRecordTypeAutomountMap$kODRecordTypeBootp$kODRecordTypeCertificateAuthorities$kODRecordTypeComputerGroups$kODRecordTypeComputerLists$kODRecordTypeComputers$kODRecordTypeConfiguration$kODRecordTypeEthernets$kODRecordTypeFTPServer$kODRecordTypeFileMakerServers$kODRecordTypeGroups$kODRecordTypeHostServices$kODRecordTypeHosts$kODRecordTypeLDAPServer$kODRecordTypeLocations$kODRecordTypeMounts$kODRecordTypeNFS$kODRecordTypeNetDomains$kODRecordTypeNetGroups$kODRecordTypeNetworks$kODRecordTypePeople$kODRecordTypePresetComputerGroups$kODRecordTypePresetComputerLists$kODRecordTypePresetComputers$kODRecordTypePresetGroups$kODRecordTypePresetUsers$kODRecordTypePrintService$kODRecordTypePrintServiceUser$kODRecordTypePrinters$kODRecordTypeProtocols$kODRecordTypeQTSServer$kODRecordTypeQueryInformation$kODRecordTypeRPC$kODRecordTypeRecordTypes$kODRecordTypeResources$kODRecordTypeSMBServer$kODRecordTypeServer$kODRecordTypeServices$kODRecordTypeSharePoints$kODRecordTypeUsers$kODRecordTypeWebServer$kODSessionDefault@^{__ODSession=}$kODSessionProxyAddress@^{__CFString=}$kODSessionProxyPassword@^{__CFString=}$kODSessionProxyPort@^{__CFString=}$kODSessionProxyUsername@^{__CFString=}$'''
-enums = '''$kODErrorCredentialsAccountDisabled@5301$kODErrorCredentialsAccountExpired@5302$kODErrorCredentialsAccountInactive@5303$kODErrorCredentialsAccountNotFound@5300$kODErrorCredentialsContactMaster@5204$kODErrorCredentialsInvalid@5000$kODErrorCredentialsInvalidComputer@5501$kODErrorCredentialsInvalidLogonHours@5500$kODErrorCredentialsMethodNotSupported@5100$kODErrorCredentialsNotAuthorized@5101$kODErrorCredentialsOperationFailed@5103$kODErrorCredentialsParameterError@5102$kODErrorCredentialsPasswordChangeRequired@5401$kODErrorCredentialsPasswordChangeTooSoon@5407$kODErrorCredentialsPasswordExpired@5400$kODErrorCredentialsPasswordNeedsDigit@5406$kODErrorCredentialsPasswordNeedsLetter@5405$kODErrorCredentialsPasswordQualityFailed@5402$kODErrorCredentialsPasswordTooLong@5404$kODErrorCredentialsPasswordTooShort@5403$kODErrorCredentialsPasswordUnrecoverable@5408$kODErrorCredentialsServerCommunicationError@5205$kODErrorCredentialsServerError@5202$kODErrorCredentialsServerNotFound@5201$kODErrorCredentialsServerTimeout@5203$kODErrorCredentialsServerUnreachable@5200$kODErrorDaemonError@10002$kODErrorNodeConnectionFailed@2100$kODErrorNodeDisabled@2002$kODErrorNodeUnknownHost@2200$kODErrorNodeUnknownName@2000$kODErrorNodeUnknownType@2001$kODErrorPluginError@10001$kODErrorPluginOperationNotSupported@10000$kODErrorPluginOperationTimeout@10003$kODErrorQueryInvalidMatchType@3100$kODErrorQuerySynchronize@3000$kODErrorQueryTimeout@3102$kODErrorQueryUnsupportedMatchType@3101$kODErrorRecordAlreadyExists@4102$kODErrorRecordAttributeNotFound@4201$kODErrorRecordAttributeUnknownType@4200$kODErrorRecordAttributeValueNotFound@4203$kODErrorRecordAttributeValueSchemaError@4202$kODErrorRecordInvalidType@4101$kODErrorRecordNoLongerExists@4104$kODErrorRecordParameterError@4100$kODErrorRecordPermissionError@4001$kODErrorRecordReadOnlyNode@4000$kODErrorRecordTypeDisabled@4103$kODErrorSessionDaemonNotRunning@1002$kODErrorSessionDaemonRefused@1003$kODErrorSessionLocalOnlyDaemonInUse@1000$kODErrorSessionNormalDaemonInUse@1001$kODErrorSessionProxyCommunicationError@1100$kODErrorSessionProxyIPUnreachable@1102$kODErrorSessionProxyUnknownHost@1103$kODErrorSessionProxyVersionMismatch@1101$kODErrorSuccess@0$kODMatchAny@1$kODMatchBeginsWith@8194$kODMatchContains@8196$kODMatchEndsWith@8195$kODMatchEqualTo@8193$kODMatchGreaterThan@8198$kODMatchInsensitiveBeginsWith@8450$kODMatchInsensitiveContains@8452$kODMatchInsensitiveEndsWith@8451$kODMatchInsensitiveEqualTo@8449$kODMatchLessThan@8199$kODNodeTypeAuthentication@8705$kODNodeTypeConfigure@8706$kODNodeTypeContacts@8708$kODNodeTypeLocalNodes@8704$kODNodeTypeNetwork@8709$'''
+constants = '''$ODFrameworkErrorDomain$ODSessionProxyAddress$ODSessionProxyPassword$ODSessionProxyPort$ODSessionProxyUsername$'''
+enums = '''$$'''
 misc.update({})
+r = objc.registerMetaDataForSelector
+objc._updatingMetadata(True)
+try:
+    r(b'ODNode', b'createRecordWithRecordType:name:attributes:error:', {'arguments': {5: {'type_modifier': b'o'}}})
+    r(b'ODNode', b'customCall:sendData:error:', {'arguments': {4: {'type_modifier': b'o'}}})
+    r(b'ODNode', b'initWithSession:name:error:', {'arguments': {4: {'type_modifier': b'o'}}})
+    r(b'ODNode', b'initWithSession:type:error:', {'arguments': {4: {'type_modifier': b'o'}}})
+    r(b'ODNode', b'nodeDetailsForKeys:error:', {'arguments': {3: {'type_modifier': b'o'}}})
+    r(b'ODNode', b'nodeWithSession:name:error:', {'arguments': {4: {'type_modifier': b'o'}}})
+    r(b'ODNode', b'nodeWithSession:type:error:', {'arguments': {4: {'type_modifier': b'o'}}})
+    r(b'ODNode', b'recordWithRecordType:name:attributes:error:', {'arguments': {5: {'type_modifier': b'o'}}})
+    r(b'ODNode', b'setCredentialsUsingKerberosCache:error:', {'retval': {'type': b'Z'}, 'arguments': {3: {'type_modifier': b'o'}}})
+    r(b'ODNode', b'setCredentialsWithRecordType:authenticationType:authenticationItems:continueItems:context:error:', {'retval': {'type': b'Z'}, 'arguments': {5: {'type_modifier': b'o'}, 6: {'type_modifier': b'o'}, 7: {'type_modifier': b'o'}}})
+    r(b'ODNode', b'setCredentialsWithRecordType:recordName:password:error:', {'retval': {'type': b'Z'}, 'arguments': {5: {'type_modifier': b'o'}}})
+    r(b'ODNode', b'subnodeNamesAndReturnError:', {'arguments': {2: {'type_modifier': b'o'}}})
+    r(b'ODNode', b'supportedAttributesForRecordType:error:', {'arguments': {3: {'type_modifier': b'o'}}})
+    r(b'ODNode', b'supportedRecordTypesAndReturnError:', {'arguments': {2: {'type_modifier': b'o'}}})
+    r(b'ODNode', b'unreachableSubnodeNamesAndReturnError:', {'arguments': {2: {'type_modifier': b'o'}}})
+    r(b'ODQuery', b'initWithNode:forRecordTypes:attribute:matchType:queryValues:returnAttributes:maximumResults:error:', {'arguments': {9: {'type_modifier': b'o'}}})
+    r(b'ODQuery', b'queryWithNode:forRecordTypes:attribute:matchType:queryValues:returnAttributes:maximumResults:error:', {'arguments': {9: {'type_modifier': b'o'}}})
+    r(b'ODQuery', b'resultsAllowingPartial:error:', {'arguments': {2: {'type': b'Z'}, 3: {'type_modifier': b'o'}}})
+    r(b'ODRecord', b'addMemberRecord:error:', {'retval': {'type': b'Z'}, 'arguments': {3: {'type_modifier': b'o'}}})
+    r(b'ODRecord', b'addValue:toAttribute:error:', {'retval': {'type': b'Z'}, 'arguments': {4: {'type_modifier': b'o'}}})
+    r(b'ODRecord', b'changePassword:toPassword:error:', {'retval': {'type': b'Z'}, 'arguments': {4: {'type_modifier': b'o'}}})
+    r(b'ODRecord', b'deleteRecordAndReturnError:', {'retval': {'type': b'Z'}, 'arguments': {2: {'type_modifier': b'o'}}})
+    r(b'ODRecord', b'isMemberRecord:error:', {'retval': {'type': b'Z'}, 'arguments': {3: {'type_modifier': b'o'}}})
+    r(b'ODRecord', b'passwordPolicyAndReturnError:', {'arguments': {2: {'type_modifier': b'o'}}})
+    r(b'ODRecord', b'recordDetailsForAttributes:error:', {'arguments': {3: {'type_modifier': b'o'}}})
+    r(b'ODRecord', b'removeMemberRecord:error:', {'retval': {'type': b'Z'}, 'arguments': {3: {'type_modifier': b'o'}}})
+    r(b'ODRecord', b'removeValue:fromAttribute:error:', {'retval': {'type': b'Z'}, 'arguments': {4: {'type_modifier': b'o'}}})
+    r(b'ODRecord', b'removeValuesForAttribute:error:', {'retval': {'type': b'Z'}, 'arguments': {3: {'type_modifier': b'o'}}})
+    r(b'ODRecord', b'setNodeCredentials:password:error:', {'retval': {'type': b'Z'}, 'arguments': {4: {'type_modifier': b'o'}}})
+    r(b'ODRecord', b'setNodeCredentialsUsingKerberosCache:error:', {'retval': {'type': b'Z'}, 'arguments': {3: {'type_modifier': b'o'}}})
+    r(b'ODRecord', b'setNodeCredentialsWithRecordType:authenticationType:authenticationItems:continueItems:context:error:', {'retval': {'type': b'Z'}, 'arguments': {5: {'type_modifier': b'o'}, 6: {'type_modifier': b'o'}, 7: {'type_modifier': b'o'}}})
+    r(b'ODRecord', b'setValue:forAttribute:error:', {'retval': {'type': b'Z'}, 'arguments': {4: {'type_modifier': b'o'}}})
+    r(b'ODRecord', b'synchronizeAndReturnError:', {'retval': {'type': b'Z'}, 'arguments': {2: {'type_modifier': b'o'}}})
+    r(b'ODRecord', b'valuesForAttribute:error:', {'arguments': {3: {'type_modifier': b'o'}}})
+    r(b'ODRecord', b'verifyExtendedWithAuthenticationType:authenticationItems:continueItems:context:error:', {'retval': {'type': b'Z'}, 'arguments': {4: {'type_modifier': b'o'}, 5: {'type_modifier': b'o'}, 6: {'type_modifier': b'o'}}})
+    r(b'ODRecord', b'verifyPassword:error:', {'retval': {'type': b'Z'}, 'arguments': {3: {'type_modifier': b'o'}}})
+    r(b'ODSession', b'initWithOptions:error:', {'arguments': {3: {'type_modifier': b'o'}}})
+    r(b'ODSession', b'nodeNamesAndReturnError:', {'arguments': {2: {'type_modifier': b'o'}}})
+    r(b'ODSession', b'sessionWithOptions:error:', {'arguments': {3: {'type_modifier': b'o'}}})
+finally:
+    objc._updatingMetadata(False)
+r = objc.registerMetaDataForSelector
+objc._updatingMetadata(True)
+try:
+    r(b'NSObject', b'query:foundResults:error:', {'required': True, 'retval': {'type': b'v'}, 'arguments': {2: {'type': b'@'}, 3: {'type': b'@'}, 4: {'type': b'@'}}})
+finally:
+    objc._updatingMetadata(False)
+expressions = {}
+
+# END OF FILE

pyobjc-framework-OpenDirectory/PyObjCTest/test_cfodcontext.py

+from PyObjCTools.TestSupport import *
+import CFOpenDirectory
+
+try:
+    long
+except NameError:
+    long = int
+
+class TestCFODContext (TestCase):
+    def testMethods(self):
+        self.assertIsInstance(CFOpenDirectory.ODContextGetTypeID(), (int, long))
+
+if __name__ == "__main__":
+    main()

pyobjc-framework-OpenDirectory/PyObjCTest/test_cfodnode.py

+from PyObjCTools.TestSupport import *
+import CFOpenDirectory
+
+try:
+    long
+except NameError:
+    long = int
+
+class TestCFODNode (TestCase):
+    def testMethods(self):
+        self.assertIsInstance(CFOpenDirectory.ODNodeGetTypeID(), (int, long))
+
+        self.assertResultIsCFRetained(CFOpenDirectory.ODNodeCreateWithNodeType)
+        self.assertArgIsOut(CFOpenDirectory.ODNodeCreateWithNodeType, 3)
+
+        self.assertResultIsCFRetained(CFOpenDirectory.ODNodeCreateWithName)
+        self.assertArgIsOut(CFOpenDirectory.ODNodeCreateWithName, 3)
+
+        self.assertResultIsCFRetained(CFOpenDirectory.ODNodeCreateCopy)
+        self.assertArgIsOut(CFOpenDirectory.ODNodeCreateCopy, 2)
+
+        self.assertResultIsCFRetained(CFOpenDirectory.ODNodeCopySubnodeNames)
+        self.assertArgIsOut(CFOpenDirectory.ODNodeCopySubnodeNames, 1)
+
+        self.assertResultIsCFRetained(CFOpenDirectory.ODNodeCopyUnreachableSubnodeNames)
+        self.assertArgIsOut(CFOpenDirectory.ODNodeCopyUnreachableSubnodeNames, 1)
+
+        CFOpenDirectory.ODNodeGetName  # No test beyond existance
+
+        self.assertResultIsCFRetained(CFOpenDirectory.ODNodeCopyDetails)
+        self.assertArgIsOut(CFOpenDirectory.ODNodeCopyDetails, 2)
+
+        self.assertResultIsCFRetained(CFOpenDirectory.ODNodeCopySupportedRecordTypes)
+        self.assertArgIsOut(CFOpenDirectory.ODNodeCopySupportedRecordTypes, 1)
+
+        self.assertResultIsCFRetained(CFOpenDirectory.ODNodeCopySupportedAttributes)
+        self.assertArgIsOut(CFOpenDirectory.ODNodeCopySupportedAttributes, 2)
+
+        self.assertResultHasType(CFOpenDirectory.ODNodeSetCredentials, objc._C_BOOL)
+        self.assertArgIsOut(CFOpenDirectory.ODNodeSetCredentials, 4)
+
+        self.assertResultHasType(CFOpenDirectory.ODNodeSetCredentialsExtended, objc._C_BOOL)
+        self.assertArgIsOut(CFOpenDirectory.ODNodeSetCredentialsExtended, 6)
+
+        self.assertResultHasType(CFOpenDirectory.ODNodeSetCredentialsUsingKerberosCache, objc._C_BOOL)
+        self.assertArgIsOut(CFOpenDirectory.ODNodeSetCredentialsUsingKerberosCache, 2)
+
+        self.assertResultIsCFRetained(CFOpenDirectory.ODNodeCreateRecord)
+        self.assertArgIsOut(CFOpenDirectory.ODNodeCreateRecord, 4)
+
+        self.assertResultIsCFRetained(CFOpenDirectory.ODNodeCopyRecord)
+        self.assertArgIsOut(CFOpenDirectory.ODNodeCopyRecord, 4)
+
+        self.assertArgIsOut(CFOpenDirectory.ODNodeCustomCall, 3)
+
+if __name__ == "__main__":
+    main()

pyobjc-framework-OpenDirectory/PyObjCTest/test_cfodquery.py

+from PyObjCTools.TestSupport import *
+import CFOpenDirectory
+
+try:
+    long
+except NameError:
+    long = int
+
+class TestCFODNode (TestCase):
+    def testMethods(self):
+        self.assertIsInstance(CFOpenDirectory.ODQueryGetTypeID(), (int, long))
+
+        self.assertResultIsCFRetained(CFOpenDirectory.ODQueryCreateWithNode)
+        self.assertArgIsOut(CFOpenDirectory.ODQueryCreateWithNode, 8)
+
+        self.assertResultIsCFRetained(CFOpenDirectory.ODQueryCreateWithNodeType)
+        self.assertArgIsOut(CFOpenDirectory.ODQueryCreateWithNodeType, 8)
+
+        self.assertResultIsCFRetained(CFOpenDirectory.ODQueryCopyResults)
+        self.assertArgHasType(CFOpenDirectory.ODQueryCopyResults, 1, objc._C_BOOL)
+        self.assertArgIsOut(CFOpenDirectory.ODQueryCopyResults, 2)
+
+        CFOpenDirectory.ODQuerySynchronize
+
+        self.assertArgIsFunction(CFOpenDirectory.ODQuerySetCallback, 1, b"v^{__ODQuery=}@^{__CFError=}^v", True)
+
+        CFOpenDirectory.ODQueryScheduleWithRunLoop
+        CFOpenDirectory.ODQueryUnscheduleFromRunLoop
+        
+        self.assertArgHasType(CFOpenDirectory.ODQuerySetDispatchQueue, 1, b"^{dispatch_queue_s=}")
+
+if __name__ == "__main__":
+    main()

pyobjc-framework-OpenDirectory/PyObjCTest/test_cfodrecord.py

+from PyObjCTools.TestSupport import *
+import CFOpenDirectory
+
+try:
+    long
+except NameError:
+    long = int
+
+class TestCFODRecord (TestCase):
+    def testMethods(self):
+        self.assertIsInstance(CFOpenDirectory.ODRecordGetTypeID(), (int, long))
+
+        self.assertResultHasType(CFOpenDirectory.ODRecordSetNodeCredentials, objc._C_BOOL)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordSetNodeCredentials, 3)
+
+        self.assertResultHasType(CFOpenDirectory.ODRecordSetNodeCredentialsExtended, objc._C_BOOL)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordSetNodeCredentialsExtended, 4)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordSetNodeCredentialsExtended, 5)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordSetNodeCredentialsExtended, 6)
+
+        self.assertResultHasType(CFOpenDirectory.ODRecordSetNodeCredentialsUsingKerberosCache, objc._C_BOOL)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordSetNodeCredentialsUsingKerberosCache, 2)
+
+        self.assertResultIsCFRetained(CFOpenDirectory.ODRecordCopyPasswordPolicy)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordCopyPasswordPolicy, 2)
+
+        self.assertResultHasType(CFOpenDirectory.ODRecordVerifyPassword, objc._C_BOOL)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordVerifyPassword, 2)
+
+        self.assertResultHasType(CFOpenDirectory.ODRecordVerifyPasswordExtended, objc._C_BOOL)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordVerifyPasswordExtended, 3)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordVerifyPasswordExtended, 4)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordVerifyPasswordExtended, 5)
+
+        self.assertResultHasType(CFOpenDirectory.ODRecordChangePassword, objc._C_BOOL)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordChangePassword, 3)
+
+        CFOpenDirectory.ODRecordGetRecordType
+        CFOpenDirectory.ODRecordGetRecordName
+
+        self.assertResultIsCFRetained(CFOpenDirectory.ODRecordCopyValues)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordCopyValues, 2)
+
+        self.assertResultHasType(CFOpenDirectory.ODRecordSetValue, objc._C_BOOL)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordSetValue, 3)
+
+        self.assertResultHasType(CFOpenDirectory.ODRecordAddValue, objc._C_BOOL)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordAddValue, 3)
+
+        self.assertResultHasType(CFOpenDirectory.ODRecordRemoveValue, objc._C_BOOL)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordRemoveValue, 3)
+
+        self.assertResultIsCFRetained(CFOpenDirectory.ODRecordCopyDetails)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordCopyDetails, 2)
+
+        self.assertResultHasType(CFOpenDirectory.ODRecordSynchronize, objc._C_BOOL)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordSynchronize, 1)
+
+        self.assertResultHasType(CFOpenDirectory.ODRecordDelete, objc._C_BOOL)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordDelete, 1)
+
+        self.assertResultHasType(CFOpenDirectory.ODRecordAddMember, objc._C_BOOL)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordAddMember, 2)
+
+        self.assertResultHasType(CFOpenDirectory.ODRecordRemoveMember, objc._C_BOOL)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordRemoveMember, 2)
+
+        self.assertResultHasType(CFOpenDirectory.ODRecordContainsMember, objc._C_BOOL)
+        self.assertArgIsOut(CFOpenDirectory.ODRecordContainsMember, 2)
+
+if __name__ == "__main__":
+    main()

pyobjc-framework-OpenDirectory/PyObjCTest/test_cfodsession.py

+from PyObjCTools.TestSupport import *
+import CFOpenDirectory
+
+try:
+    long
+except NameError:
+    long = int
+
+class TestCFODSession (TestCase):
+    def testMethods(self):
+        self.assertIsInstance(CFOpenDirectory.ODSessionGetTypeID(), (int, long))
+
+        self.assertResultIsCFRetained(CFOpenDirectory.ODSessionCreate)
+        self.assertArgIsOut(CFOpenDirectory.ODSessionCreate, 2)
+
+        self.assertResultIsCFRetained(CFOpenDirectory.ODSessionCopyNodeNames)
+        self.assertArgIsOut(CFOpenDirectory.ODSessionCopyNodeNames, 2)
+
+if __name__ == "__main__":
+    main()

pyobjc-framework-OpenDirectory/PyObjCTest/test_cfopendirectory.py

 '''
 Some simple tests to check that the framework is properly wrapped.
 '''
+from PyObjCTools.TestSupport import *
 import objc
-import unittest
 import CFOpenDirectory
 
-class TestCFOpenDirectory (unittest.TestCase):
+try:
+    unicode
+except NameError:
+    unicode = str
+
+class TestCFOpenDirectory (TestCase):
     def testClasses(self):
-        pass
-        # self.assert_( hasattr(CFOpenDirectory, 'CLASSNAME') )
-        # self.assert_( isinstance(CFOpenDirectory.CLASSNAME, objc.objc_class) )
-        # Tollfree CF-type:
-        # self.assert_( hasattr(CFOpenDirectory, 'CLASSNAMERef') )
-        # self.assert_( CFOpenDirectory.CLASSNAMERef is CFOpenDirectory.CLASSNAME )
+        self.assertIsCFType(CFOpenDirectory.ODContextRef)
+        self.assertIsCFType(CFOpenDirectory.ODNodeRef)
+        self.assertIsCFType(CFOpenDirectory.ODQueryRef)
+        self.assertIsCFType(CFOpenDirectory.ODRecordRef)
+        self.assertIsCFType(CFOpenDirectory.ODSessionRef)
 
-        # Not-tollfree CF-type:
-        # self.assert_( hasattr(CFOpenDirectory, 'CLASSNAMERef') )
-        # self.assert_( issubclass(CFOpenDirectory.CLASSNAMERef, objc.lookUpClass('NSCFType')) )
-        # self.assert_( CFOpenDirectory.CLASSNAMERef is not objc.lookUpClass('NSCFType') )
-
-    def testValues(self):
-        # Use this to test for a number of enum and #define values
-        pass
-
-        # Integer values:
-        # self.assert_( hasattr(CFOpenDirectory, 'CONSTANT') )
-        # self.assert_( isinstance(CFOpenDirectory.CONSTANT, (int, long)) )
-        # self.assertEquals(CFOpenDirectory.CONSTANT, 7)
-
-        # String values:
-        # self.assert_( hasattr(CFOpenDirectory, 'CONSTANT') )
-        # self.assert_( isinstance(CFOpenDirectory.CONSTANT, (str, unicode)) )
-        # self.assertEquals(CFOpenDirectory.CONSTANT, 'value')
-
-    def testVariables(self):
-        # Use this to test for global variables, (NSString*'s and the like)
-        pass
-
-        # self.assert_( hasattr(CFOpenDirectory, 'CONSTANT') )
-        # self.assert_( isinstance(CFOpenDirectory.CONSTANT, unicode) )
-
-    def testFunctions(self):
-        # Use this to test for functions
-        pass
-
-        # self.assert_( hasattr(CFOpenDirectory, 'FUNCTION') )
-
-    def testOpaque(self):
-        # Use this to test for opaque pointers
-        pass
-
-        # self.assert_( hasattr(CFOpenDirectory, 'OPAQUE') )
-
-    def testProtocols(self):
-        # Use this to test if informal protocols  are present
-        pass
-
-        # self.assert_( hasattr(CFOpenDirectory, 'protocols') )
-
-        # self.assert_( hasattr(CFOpenDirectory.protocols, 'PROTOCOL') )
-        # self.assert_( isinstance(CFOpenDirectory.protocols.PROTOCOL, objc.informal_protocol) )
-
-    def test_structs(self):
-        # Use this to test struct wrappers
-        pass
-
-        # self.assert_( hasattr(CFOpenDirectory, 'STRUCT') )
-        # o = CFOpenDirectory.STRUCT()
-        # self.assert_( hasattr(o, 'FIELD_NAME') )
+    def testConstants(self):
+        self.assertIsInstance(CFOpenDirectory.kODErrorDomainFramework, unicode)
 
 
 
 if __name__ == "__main__":
-    unittest.main()
+    main()
 

pyobjc-framework-OpenDirectory/PyObjCTest/test_cfopendirectoryconstants.py

+'''
+Some simple tests to check that the framework is properly wrapped.
+'''
+import objc
+import CFOpenDirectory
+
+from PyObjCTools.TestSupport import *
+
+try:
+    unicode 
+except NameError:
+    unicode = str
+
+class TestCFOpenDirectoryConstants (TestCase):
+    def testConstants(self):
+        self.assertIsInstance(CFOpenDirectory.kODSessionProxyAddress, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODSessionProxyPort, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODSessionProxyUsername, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODSessionProxyPassword, unicode)
+
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeAttributeTypes, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeAFPServer, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeAliases, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeAugments, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeAutomount, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeAutomountMap, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeAutoServerSetup, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeBootp, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeCertificateAuthorities, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeComputerLists, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeComputerGroups, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeComputers, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeConfiguration, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeEthernets, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeFileMakerServers, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeFTPServer, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeGroups, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeHostServices, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeHosts, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeLDAPServer, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeLocations, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeMounts, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeNFS, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeNetDomains, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeNetGroups, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeNetworks, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypePeople, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypePresetComputers, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypePresetComputerGroups, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypePresetComputerLists, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypePresetGroups, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypePresetUsers, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypePrintService, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypePrintServiceUser, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypePrinters, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeProtocols, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeQTSServer, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeQueryInformation, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeRecordTypes, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeResources, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeRPC, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeSMBServer, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeServer, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeServices, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeSharePoints, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeUsers, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODRecordTypeWebServer, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAllAttributes, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeStandardOnly, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeNativeOnly, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeMetaAmbiguousName, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeMetaAugmentedAttributes, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeMetaRecordName, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAdminLimits, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAltSecurityIdentities, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAuthenticationHint, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAllTypes, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAuthorityRevocationList, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeBirthday, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeCACertificate, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeCapacity, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeCertificateRevocationList, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeComment, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeContactGUID, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeContactPerson, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeCreationTimestamp, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeCrossCertificatePair, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeDataStamp, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeFullName, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeDNSDomain, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeDNSNameServer, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeENetAddress, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeExpire, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeFirstName, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeGUID, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeHardwareUUID, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeHomeDirectoryQuota, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeHomeDirectorySoftQuota, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeHomeLocOwner, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeInternetAlias, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeKDCConfigData, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeKerberosServices, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeLastName, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeLDAPSearchBaseSuffix, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeLocation, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeMapGUID, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeMCXFlags, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeMCXSettings, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeMailAttribute, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeMetaAutomountMap, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeMiddleName, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeModificationTimestamp, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeNFSHomeDirectory, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeNote, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeOperatingSystem, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeOperatingSystemVersion, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeOwner, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeOwnerGUID, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePassword, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePasswordPlus, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePasswordPolicyOptions, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePasswordServerList, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePasswordServerLocation, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePicture, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePort, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePresetUserIsAdmin, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePrimaryComputerGUID, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePrimaryComputerList, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePrimaryGroupID, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePrinter1284DeviceID, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePrinterLPRHost, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePrinterLPRQueue, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePrinterMakeAndModel, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePrinterType, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePrinterURI, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePrinterXRISupported, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePrintServiceInfoText, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePrintServiceInfoXML, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePrintServiceUserData, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeRealUserID, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeRelativeDNPrefix, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSMBAcctFlags, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSMBGroupRID, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSMBHome, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSMBHomeDrive, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSMBKickoffTime, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSMBLogoffTime, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSMBLogonTime, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSMBPrimaryGroupSID, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSMBPWDLastSet, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSMBProfilePath, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSMBRID, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSMBScriptPath, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSMBSID, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSMBUserWorkstations, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeServiceType, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSetupAdvertising, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSetupAutoRegister, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSetupLocation, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSetupOccupation, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeTimeToLive, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeTrustInformation, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeUniqueID, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeUserCertificate, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeUserPKCS12Data, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeUserShell, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeUserSMIMECertificate, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeVFSDumpFreq, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeVFSLinkDir, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeVFSPassNo, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeVFSType, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeWeblogURI, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeXMLPlist, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeProtocolNumber, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeRPCNumber, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeNetworkNumber, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAccessControlEntry, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAddressLine1, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAddressLine2, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAddressLine3, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAreaCode, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAuthenticationAuthority, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAutomountInformation, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeBootParams, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeBuilding, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeServicesLocator, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeCity, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeCompany, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeComputers, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeCountry, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeDepartment, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeDNSName, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeEMailAddress, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeEMailContacts, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeFaxNumber, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeGroup, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeGroupMembers, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeGroupMembership, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeGroupServices, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeHomePhoneNumber, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeHTML, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeHomeDirectory, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeIMHandle, unicode, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeIPAddress, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeIPAddressAndENetAddress, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeIPv6Address, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeJPEGPhoto, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeJobTitle, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeKDCAuthKey, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeKeywords, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeLDAPReadReplicas, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeLDAPWriteReplicas, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeMapCoordinates, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeMapURI, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeMIME, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeMobileNumber, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeNestedGroups, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeNetGroups, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeNickName, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeOrganizationInfo, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeOrganizationName, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePagerNumber, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePhoneContacts, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePhoneNumber, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePGPPublicKey, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePostalAddress, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePostalAddressContacts, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePostalCode, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeNamePrefix, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeProtocols, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeRecordName, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeRelationships, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeResourceInfo, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeResourceType, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeState, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeStreet, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeNameSuffix, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeURL, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeVFSOpts, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAlias, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAuthCredential, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeCopyTimestamp, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeDateRecordCreated, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeKerberosRealm, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeNTDomainComputerAccount, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeOriginalHomeDirectory, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeOriginalNFSHomeDirectory, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeOriginalNodeName, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePrimaryNTDomain, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePwdAgingPolicy, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeReadOnlyNode, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeTimePackage, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeTotalSize, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAuthMethod, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeMetaNodeLocation, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeNodePath, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePlugInInfo, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeRecordType, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSchema, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSubNodes, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeNetGroupTriplet, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSearchPath, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeSearchPolicy, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAutomaticSearchPath, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeLocalOnlySearchPath, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeCustomSearchPath, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeBuildVersion, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeConfigAvailable, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeConfigFile, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeCoreFWVersion, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeFunctionalState, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeFWVersion, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePluginIndex, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeNumTableList, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeVersion, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePIDValue, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeProcessName, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeTotalRefCount, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeDirRefCount, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeNodeRefCount, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeRecRefCount, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAttrListRefCount, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAttrListValueRefCount, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeDirRefs, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeNodeRefs, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeRecRefs, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAttrListRefs, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAttrListValueRefs, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationType2WayRandom, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationType2WayRandomChangePasswd, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeAPOP, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeCRAM_MD5, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeChangePasswd, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeClearText, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeCrypt, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeDIGEST_MD5, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeDeleteUser, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeGetEffectivePolicy, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeGetGlobalPolicy, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeGetKerberosPrincipal, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeGetPolicy, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeGetUserData, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeGetUserName, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeKerberosTickets, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeMPPEMasterKeys, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeMSCHAP2, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeNTLMv2, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeNTLMv2WithSessionKey, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeNewUser, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeNewUserWithPolicy, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeNodeNativeClearTextOK, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeNodeNativeNoClearText, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeReadSecureHash, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeSMBNTv2UserSessionKey, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeSMBWorkstationCredentialSessionKey, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeSMB_LM_Key, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeSMB_NT_Key, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeSMB_NT_UserSessionKey, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeSMB_NT_WithUserSessionKey, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeSetGlobalPolicy, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeSetLMHash, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeSetNTHash, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeSetPassword, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeSetPasswordAsCurrent, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeSetPolicy, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeSetPolicyAsCurrent, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeSetUserData, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeSetUserName, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeSetWorkstationPassword, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeWithAuthorizationRef, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeWriteSecureHash, unicode)
+
+        self.assertEqual(CFOpenDirectory.kODNodeTypeAuthentication, 0x2201)
+        self.assertEqual(CFOpenDirectory.kODNodeTypeContacts, 0x2204)
+        self.assertEqual(CFOpenDirectory.kODNodeTypeNetwork, 0x2205)
+        self.assertEqual(CFOpenDirectory.kODNodeTypeLocalNodes, 0x2200)
+        self.assertEqual(CFOpenDirectory.kODNodeTypeConfigure, 0x2202)
+        self.assertEqual(CFOpenDirectory.kODMatchAny, 0x0001)
+        self.assertEqual(CFOpenDirectory.kODMatchEqualTo, 0x2001)
+        self.assertEqual(CFOpenDirectory.kODMatchBeginsWith, 0x2002)
+        self.assertEqual(CFOpenDirectory.kODMatchContains, 0x2004)
+        self.assertEqual(CFOpenDirectory.kODMatchEndsWith, 0x2003)
+        self.assertEqual(CFOpenDirectory.kODMatchInsensitiveEqualTo, 0x2101)
+        self.assertEqual(CFOpenDirectory.kODMatchInsensitiveBeginsWith, 0x2102)
+        self.assertEqual(CFOpenDirectory.kODMatchInsensitiveContains, 0x2104)
+        self.assertEqual(CFOpenDirectory.kODMatchInsensitiveEndsWith, 0x2103)
+        self.assertEqual(CFOpenDirectory.kODMatchGreaterThan, 0x2006)
+        self.assertEqual(CFOpenDirectory.kODMatchLessThan, 0x2007)
+        self.assertEqual(CFOpenDirectory.kODErrorSuccess, 0)
+        self.assertEqual(CFOpenDirectory.kODErrorSessionLocalOnlyDaemonInUse, 1000)
+        self.assertEqual(CFOpenDirectory.kODErrorSessionNormalDaemonInUse, 1001)
+        self.assertEqual(CFOpenDirectory.kODErrorSessionDaemonNotRunning, 1002)
+        self.assertEqual(CFOpenDirectory.kODErrorSessionDaemonRefused, 1003)
+        self.assertEqual(CFOpenDirectory.kODErrorSessionProxyCommunicationError, 1100)
+        self.assertEqual(CFOpenDirectory.kODErrorSessionProxyVersionMismatch, 1101)
+        self.assertEqual(CFOpenDirectory.kODErrorSessionProxyIPUnreachable, 1102)
+        self.assertEqual(CFOpenDirectory.kODErrorSessionProxyUnknownHost, 1103)
+        self.assertEqual(CFOpenDirectory.kODErrorNodeUnknownName, 2000)
+        self.assertEqual(CFOpenDirectory.kODErrorNodeUnknownType, 2001)
+        self.assertEqual(CFOpenDirectory.kODErrorNodeDisabled, 2002)
+        self.assertEqual(CFOpenDirectory.kODErrorNodeConnectionFailed, 2100)
+        self.assertEqual(CFOpenDirectory.kODErrorNodeUnknownHost, 2200)
+        self.assertEqual(CFOpenDirectory.kODErrorQuerySynchronize, 3000)
+        self.assertEqual(CFOpenDirectory.kODErrorQueryInvalidMatchType, 3100)
+        self.assertEqual(CFOpenDirectory.kODErrorQueryUnsupportedMatchType, 3101)
+        self.assertEqual(CFOpenDirectory.kODErrorQueryTimeout, 3102)
+        self.assertEqual(CFOpenDirectory.kODErrorRecordReadOnlyNode, 4000)
+        self.assertEqual(CFOpenDirectory.kODErrorRecordPermissionError, 4001)
+        self.assertEqual(CFOpenDirectory.kODErrorRecordParameterError, 4100)
+        self.assertEqual(CFOpenDirectory.kODErrorRecordInvalidType, 4101)
+        self.assertEqual(CFOpenDirectory.kODErrorRecordAlreadyExists, 4102)
+        self.assertEqual(CFOpenDirectory.kODErrorRecordTypeDisabled, 4103)
+        self.assertEqual(CFOpenDirectory.kODErrorRecordNoLongerExists, 4104)
+        self.assertEqual(CFOpenDirectory.kODErrorRecordAttributeUnknownType, 4200)
+        self.assertEqual(CFOpenDirectory.kODErrorRecordAttributeNotFound, 4201)
+        self.assertEqual(CFOpenDirectory.kODErrorRecordAttributeValueSchemaError, 4202)
+        self.assertEqual(CFOpenDirectory.kODErrorRecordAttributeValueNotFound, 4203)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsInvalid, 5000)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsMethodNotSupported, 5100)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsNotAuthorized, 5101)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsParameterError, 5102)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsOperationFailed, 5103)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsServerUnreachable, 5200)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsServerNotFound, 5201)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsServerError, 5202)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsServerTimeout, 5203)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsContactMaster, 5204)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsServerCommunicationError, 5205)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsAccountNotFound, 5300)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsAccountDisabled, 5301)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsAccountExpired, 5302)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsAccountInactive, 5303)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsPasswordExpired, 5400)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsPasswordChangeRequired, 5401)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsPasswordQualityFailed, 5402)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsPasswordTooShort, 5403)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsPasswordTooLong, 5404)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsPasswordNeedsLetter, 5405)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsPasswordNeedsDigit, 5406)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsPasswordChangeTooSoon, 5407)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsPasswordUnrecoverable, 5408)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsInvalidLogonHours, 5500)
+        self.assertEqual(CFOpenDirectory.kODErrorCredentialsInvalidComputer, 5501)
+        self.assertEqual(CFOpenDirectory.kODErrorPluginOperationNotSupported, 10000)
+        self.assertEqual(CFOpenDirectory.kODErrorPluginError, 10001)
+        self.assertEqual(CFOpenDirectory.kODErrorDaemonError, 10002)
+        self.assertEqual(CFOpenDirectory.kODErrorPluginOperationTimeout, 10003)
+
+    @min_os_level('10.7')
+    def testConstants10_7(self):
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeNodeOptions, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeAdvertisedServices, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeLocaleRelay, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeLocaleSubnets, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeNetworkInterfaces, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypeParentLocales, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAttributeTypePrimaryLocale, unicode)
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeSecureHash, unicode)
+
+    @expectedFailure
+    @min_os_level('10.7')
+    def testConstants10_7_missing(self):
+        self.assertIsInstance(CFOpenDirectory.kODAuthenticationTypeSetCertificateHashAsCurrent, unicode)
+
+    @min_os_level('10.8')
+    def testConstants10_8(self):
+        self.assertIsInstance(CFOpenDirectory.kODNodeOptionsQuerySkippedSubnode, unicode)
+
+if __name__ == "__main__":
+    main()
+

pyobjc-framework-OpenDirectory/PyObjCTest/test_odnode.py

+from PyObjCTools.TestSupport import *
+
+import OpenDirectory
+
+class TestODNode (TestCase):
+    def testMethods(self):
+        self.assertArgIsOut(OpenDirectory.ODNode.nodeWithSession_type_error_, 2)
+        self.assertArgIsOut(OpenDirectory.ODNode.nodeWithSession_name_error_, 2)
+        self.assertArgIsOut(OpenDirectory.ODNode.initWithSession_type_error_, 2)
+        self.assertArgIsOut(OpenDirectory.ODNode.initWithSession_name_error_, 2)
+        self.assertArgIsOut(OpenDirectory.ODNode.subnodeNamesAndReturnError_, 0)
+        self.assertArgIsOut(OpenDirectory.ODNode.unreachableSubnodeNamesAndReturnError_, 0)
+        self.assertArgIsOut(OpenDirectory.ODNode.nodeDetailsForKeys_error_, 1)
+        self.assertArgIsOut(OpenDirectory.ODNode.supportedRecordTypesAndReturnError_, 0)
+        self.assertArgIsOut(OpenDirectory.ODNode.supportedAttributesForRecordType_error_, 1)
+        self.assertResultIsBOOL(OpenDirectory.ODNode.setCredentialsWithRecordType_recordName_password_error_)
+        self.assertArgIsOut(OpenDirectory.ODNode.setCredentialsWithRecordType_recordName_password_error_, 3)
+        self.assertResultIsBOOL(OpenDirectory.ODNode.setCredentialsWithRecordType_authenticationType_authenticationItems_continueItems_context_error_)
+        self.assertArgIsOut(OpenDirectory.ODNode.setCredentialsWithRecordType_authenticationType_authenticationItems_continueItems_context_error_, 3)
+        self.assertArgIsOut(OpenDirectory.ODNode.setCredentialsWithRecordType_authenticationType_authenticationItems_continueItems_context_error_, 4)
+        self.assertArgIsOut(OpenDirectory.ODNode.setCredentialsWithRecordType_authenticationType_authenticationItems_continueItems_context_error_, 5)
+        self.assertResultIsBOOL(OpenDirectory.ODNode.setCredentialsUsingKerberosCache_error_)
+        self.assertArgIsOut(OpenDirectory.ODNode.setCredentialsUsingKerberosCache_error_, 1)
+        self.assertArgIsOut(OpenDirectory.ODNode.recordWithRecordType_name_attributes_error_, 3)
+        self.assertArgIsOut(OpenDirectory.ODNode.customCall_sendData_error_, 2)
+
+if __name__ == "__main__":
+    main()

pyobjc-framework-OpenDirectory/PyObjCTest/test_odquery.py

+from PyObjCTools.TestSupport import *
+
+import OpenDirectory
+
+class TestODQuery (TestCase):
+    def testMethods(self):
+        self.assertArgIsOut(OpenDirectory.ODQuery.queryWithNode_forRecordTypes_attribute_matchType_queryValues_returnAttributes_maximumResults_error_, 7)
+        self.assertArgIsOut(OpenDirectory.ODQuery.initWithNode_forRecordTypes_attribute_matchType_queryValues_returnAttributes_maximumResults_error_, 7)
+
+        self.assertArgIsBOOL(OpenDirectory.ODQuery.resultsAllowingPartial_error_, 0)
+        self.assertArgIsOut(OpenDirectory.ODQuery.resultsAllowingPartial_error_, 1)
+
+if __name__ == "__main__":
+    main()

pyobjc-framework-OpenDirectory/PyObjCTest/test_odrecord.py

+from PyObjCTools.TestSupport import *
+
+import OpenDirectory
+
+class TestODRecord (TestCase):
+    def testMethods(self):
+        self.assertResultIsBOOL(OpenDirectory.ODRecord.setNodeCredentials_password_error_)
+        self.assertArgIsOut(OpenDirectory.ODRecord.setNodeCredentials_password_error_, 2)
+
+        self.assertResultIsBOOL(OpenDirectory.ODRecord.setNodeCredentialsWithRecordType_authenticationType_authenticationItems_continueItems_context_error_)
+        self.assertArgIsOut(OpenDirectory.ODRecord.setNodeCredentialsWithRecordType_authenticationType_authenticationItems_continueItems_context_error_, 3)
+        self.assertArgIsOut(OpenDirectory.ODRecord.setNodeCredentialsWithRecordType_authenticationType_authenticationItems_continueItems_context_error_, 4)
+        self.assertArgIsOut(OpenDirectory.ODRecord.setNodeCredentialsWithRecordType_authenticationType_authenticationItems_continueItems_context_error_, 5)
+
+        self.assertResultIsBOOL(OpenDirectory.ODRecord.setNodeCredentialsUsingKerberosCache_error_)
+        self.assertArgIsOut(OpenDirectory.ODRecord.setNodeCredentialsUsingKerberosCache_error_, 1)
+
+        self.assertResultIsBOOL(OpenDirectory.ODRecord.verifyExtendedWithAuthenticationType_authenticationItems_continueItems_context_error_)
+        self.assertArgIsOut(OpenDirectory.ODRecord.verifyExtendedWithAuthenticationType_authenticationItems_continueItems_context_error_, 2)
+        self.assertArgIsOut(OpenDirectory.ODRecord.verifyExtendedWithAuthenticationType_authenticationItems_continueItems_context_error_, 3)
+        self.assertArgIsOut(OpenDirectory.ODRecord.verifyExtendedWithAuthenticationType_authenticationItems_continueItems_context_error_, 4)
+
+        self.assertResultIsBOOL(OpenDirectory.ODRecord.synchronizeAndReturnError_)
+        self.assertArgIsOut(OpenDirectory.ODRecord.synchronizeAndReturnError_, 0)
+
+        self.assertArgIsOut(OpenDirectory.ODRecord.recordDetailsForAttributes_error_, 1)
+
+        self.assertArgIsOut(OpenDirectory.ODRecord.valuesForAttribute_error_, 1)
+
+        self.assertResultIsBOOL(OpenDirectory.ODRecord.setValue_forAttribute_error_)
+        self.assertArgIsOut(OpenDirectory.ODRecord.setValue_forAttribute_error_, 2)
+
+        self.assertResultIsBOOL(OpenDirectory.ODRecord.removeValuesForAttribute_error_)
+        self.assertArgIsOut(OpenDirectory.ODRecord.removeValuesForAttribute_error_, 1)
+
+        self.assertResultIsBOOL(OpenDirectory.ODRecord.removeValue_fromAttribute_error_)
+        self.assertArgIsOut(OpenDirectory.ODRecord.removeValue_fromAttribute_error_, 2)
+
+        self.assertResultIsBOOL(OpenDirectory.ODRecord.addValue_toAttribute_error_)
+        self.assertArgIsOut(OpenDirectory.ODRecord.addValue_toAttribute_error_, 2)
+
+        self.assertResultIsBOOL(OpenDirectory.ODRecord.deleteRecordAndReturnError_)
+        self.assertArgIsOut(OpenDirectory.ODRecord.deleteRecordAndReturnError_, 0)
+
+        self.assertResultIsBOOL(OpenDirectory.ODRecord.addMemberRecord_error_)
+        self.assertArgIsOut(OpenDirectory.ODRecord.addMemberRecord_error_, 1)
+
+        self.assertResultIsBOOL(OpenDirectory.ODRecord.removeMemberRecord_error_)
+        self.assertArgIsOut(OpenDirectory.ODRecord.removeMemberRecord_error_, 1)
+
+        self.assertResultIsBOOL(OpenDirectory.ODRecord.isMemberRecord_error_)
+        self.assertArgIsOut(OpenDirectory.ODRecord.isMemberRecord_error_, 1)
+if __name__ == "__main__":
+    main()

pyobjc-framework-OpenDirectory/PyObjCTest/test_odsession.py

+from PyObjCTools.TestSupport import *
+
+import OpenDirectory
+
+try:
+    unicode
+except NameError:
+    unicode = str
+
+class TestODSession (TestCase):
+    def testConstants(self):
+        self.assertIsInstance(OpenDirectory.ODSessionProxyAddress, unicode)
+        self.assertIsInstance(OpenDirectory.ODSessionProxyPort, unicode)
+        self.assertIsInstance(OpenDirectory.ODSessionProxyUsername, unicode)
+        self.assertIsInstance(OpenDirectory.ODSessionProxyPassword, unicode)
+
+    def testMethods(self):
+        self.assertArgIsOut(OpenDirectory.ODSession.sessionWithOptions_error_, 1)
+        self.assertArgIsOut(OpenDirectory.ODSession.initWithOptions_error_, 1)
+        self.assertArgIsOut(OpenDirectory.ODSession.nodeNamesAndReturnError_, 0)
+
+if __name__ == "__main__":
+    main()

pyobjc-framework-OpenDirectory/PyObjCTest/test_opendirectory.py

+from PyObjCTools.TestSupport import *
+
+import OpenDirectory
+
+try:
+    unicode
+except NameError:
+    unicode = str
+
+class TestOpenDirectory (TestCase):
+    def testConstants(self):
+        self.assertIsInstance(OpenDirectory.ODFrameworkErrorDomain, unicode)
+
+
+if __name__ == "__main__":
+    main()

pyobjc-framework-OpenDirectory/metadata/CFOpenDirectory.fwinfo

       "type_override": "^{_ODRecord=}"
      }, 
      "4": {
-      "type_override": "^^{__CFArray}"
+      "type_override": "^^{__CFArray}",
+      "type_modifier": "o"
      }, 
      "5": {
-      "type_override": "^^{_ODContext}"
+      "type_override": "^^{_ODContext}",
+      "type_modifier": "o"
      }, 
      "6": {
       "already_cfretained": true, 
       "type_override": "^{_ODRecord=}"
      }, 
      "3": {
+      "type_modifier": "o",
       "type_override": "^^{__CFArray}"
      }, 
      "4": {
+      "type_modifier": "o",
       "type_override": "^^{_ODContext}"
      }, 
      "5": {

pyobjc-framework-OpenDirectory/metadata/OpenDirectory.fwinfo

 # for information on how to update this file.
 {
  "definitions": {
+  "cftypes" : {
+    "ODContextRef": { "ignore": true },
+    "ODNodeRef": { "ignore": true },
+    "ODQueryRef": { "ignore": true },
+    "ODRecordRef": { "ignore": true },
+    "ODSessionRef": { "ignore": true }
+  },
   "classes": {
    "ODNode": {
     "methods": [
      {
       "args": {
-       "2": {}
+       "2": { "type_modifier": "o" }
       }, 
       "class_method": true, 
       "selector": "nodeWithSession:type:error:"
      }, 
      {
       "args": {
-       "2": {}
+       "2": { "type_modifier": "o" }
       }, 
       "class_method": true, 
       "selector": "nodeWithSession:name:error:"
      }, 
      {
       "args": {
-       "2": {}
+       "2": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "initWithSession:type:error:"
      }, 
      {
       "args": {
-       "2": {}
+       "2": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "initWithSession:name:error:"
      }, 
      {
       "args": {
-       "0": {}
+       "0": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "subnodeNamesAndReturnError:"
      }, 
      {
       "args": {
-       "0": {}
+       "0": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "unreachableSubnodeNamesAndReturnError:"
      }, 
      {
       "args": {
-       "1": {}
+       "1": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "nodeDetailsForKeys:error:"
      }, 
      {
       "args": {
-       "0": {}
+       "0": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "supportedRecordTypesAndReturnError:"
      }, 
      {
       "args": {
-       "1": {}
+       "1": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "supportedAttributesForRecordType:error:"
      }, 
      {
       "args": {
-       "3": {}
+       "3": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "setCredentialsWithRecordType:recordName:password:error:"
      }, 
      {
       "args": {
-       "3": {}, 
-       "4": {}, 
-       "5": {}
+       "3": { "type_modifier": "o" }, 
+       "4": { "type_modifier": "o" }, 
+       "5": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "setCredentialsWithRecordType:authenticationType:authenticationItems:continueItems:context:error:"
      }, 
      {
       "args": {
-       "1": {}
+       "1": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "setCredentialsUsingKerberosCache:error:"
      }, 
      {
       "args": {
-       "3": {}
+       "3": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "createRecordWithRecordType:name:attributes:error:"
      }, 
      {
       "args": {
-       "3": {}
+       "3": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "recordWithRecordType:name:attributes:error:"
      }, 
      {
       "args": {
-       "2": {}
+       "2": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "customCall:sendData:error:"
     "methods": [
      {
       "args": {
-       "7": {}
+       "7": { "type_modifier": "o" }
       }, 
       "class_method": true, 
       "selector": "queryWithNode:forRecordTypes:attribute:matchType:queryValues:returnAttributes:maximumResults:error:"
      }, 
      {
       "args": {
-       "7": {}
+       "7": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "initWithNode:forRecordTypes:attribute:matchType:queryValues:returnAttributes:maximumResults:error:"
      }, 
      {
       "args": {
-       "1": {}
+       "1": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "resultsAllowingPartial:error:"
     "methods": [
      {
       "args": {
-       "2": {}
+       "2": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "setNodeCredentials:password:error:"
      }, 
      {
       "args": {
-       "3": {}, 
-       "4": {}, 
-       "5": {}
+       "3": { "type_modifier": "o" }, 
+       "4": { "type_modifier": "o" }, 
+       "5": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "setNodeCredentialsWithRecordType:authenticationType:authenticationItems:continueItems:context:error:"
      }, 
      {
       "args": {
-       "1": {}
+       "1": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "setNodeCredentialsUsingKerberosCache:error:"
      }, 
      {
       "args": {
-       "0": {}
+       "0": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "passwordPolicyAndReturnError:"
      }, 
      {
       "args": {
-       "1": {}
+       "1": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "verifyPassword:error:"
      }, 
      {
       "args": {
-       "2": {}, 
-       "3": {}, 
-       "4": {}
+       "2": { "type_modifier": "o" }, 
+       "3": { "type_modifier": "o" }, 
+       "4": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "verifyExtendedWithAuthenticationType:authenticationItems:continueItems:context:error:"
      }, 
      {
       "args": {
-       "2": {}
+       "2": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "changePassword:toPassword:error:"
      }, 
      {
       "args": {
-       "0": {}
+       "0": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "synchronizeAndReturnError:"
      }, 
      {
       "args": {
-       "1": {}
+       "1": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "recordDetailsForAttributes:error:"
      }, 
      {
       "args": {
-       "1": {}
+       "1": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "valuesForAttribute:error:"
      }, 
      {
       "args": {
-       "2": {}
+       "2": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "setValue:forAttribute:error:"
      }, 
      {
       "args": {
-       "1": {}
+       "1": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "removeValuesForAttribute:error:"
      }, 
      {
       "args": {
-       "2": {}
+       "2": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "addValue:toAttribute:error:"
      }, 
      {
       "args": {
-       "2": {}
+       "2": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "removeValue:fromAttribute:error:"
      }, 
      {
       "args": {
-       "0": {}
+       "0": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "deleteRecordAndReturnError:"
      }, 
      {
       "args": {
-       "1": {}
+       "1": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "addMemberRecord:error:"
      }, 
      {
       "args": {
-       "1": {}
+       "1": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "removeMemberRecord:error:"
      }, 
      {
       "args": {
-       "1": {}
+       "1": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "isMemberRecord:error:"
     "methods": [
      {
       "args": {
-       "1": {}
+       "1": { "type_modifier": "o" }
       }, 
       "class_method": true, 
       "selector": "sessionWithOptions:error:"
      }, 
      {
       "args": {
-       "1": {}
+       "1": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "initWithOptions:error:"
      }, 
      {
       "args": {
-       "0": {}
+       "0": { "type_modifier": "o" }
       }, 
       "class_method": false, 
       "selector": "nodeNamesAndReturnError:"
   }, 
   "formal_protocols": {}, 
   "functions": {
-   "ODNodeCopyDetails": {
-    "args": {
-     "0": {}, 
-     "2": {
-      "already_cfretained": true, 
-      "null_accepted": true, 
-      "type_modifier": "o"
-     }
-    }, 
-    "retval": {
-     "already_cfretained": true
-    }
-   }, 
-   "ODNodeCopyRecord": {
-    "args": {
-     "0": {}, 
-     "2": {}, 
-     "4": {
-      "already_cfretained": true, 
-      "null_accepted": true, 
-      "type_modifier": "o"
-     }
-    }, 
-    "retval": {
-     "already_cfretained": true
-    }
-   }, 
-   "ODNodeCopySubnodeNames": {
-    "args": {
-     "0": {}, 
-     "1": {
-      "already_cfretained": true, 
-      "null_accepted": true, 
-      "type_modifier": "o"
-     }
-    }
-   }, 
-   "ODNodeCopySupportedAttributes": {
-    "args": {
-     "0": {}, 
-     "2": {
-      "already_cfretained": true, 
-      "null_accepted": true, 
-      "type_modifier": "o"
-     }
-    }
-   }, 
-   "ODNodeCopySupportedRecordTypes": {
-    "args": {
-     "0": {}, 
-     "1": {
-      "already_cfretained": true, 
-      "null_accepted": true, 
-      "type_modifier": "o"
-     }
-    }
-   }, 
-   "ODNodeCopyUnreachableSubnodeNames": {
-    "args": {
-     "0": {}, 
-     "1": {
-      "already_cfretained": true, 
-      "null_accepted": true, 
-      "type_modifier": "o"
-     }
-    }
-   }, 
-   "ODNodeCreateCopy": {
-    "args": {
-     "0": {}, 
-     "1": {}, 
-     "2": {
-      "already_cfretained": true, 
-      "null_accepted": true, 
-      "type_modifier": "o"
-     }
-    }, 
-    "retval": {
-     "already_cfretained": true
-    }
-   }, 
-   "ODNodeCreateRecord": {
-    "args": {
-     "0": {}, 
-     "2": {}, 
-     "3": {}, 
-     "4": {
-      "already_cfretained": true, 
-      "null_accepted": true, 
-      "type_modifier": "o"
-     }
-    }, 
-    "retval": {
-     "already_cfretained": true
-    }
-   }, 
-   "ODNodeCreateWithName": {
-    "args": {
-     "0": {}, 
-     "1": {}, 
-     "2": {}, 
-     "3": {
-      "already_cfretained": true, 
-      "null_accepted": true, 
-      "type_modifier": "o"
-     }
-    }, 
-    "retval": {
-     "already_cfretained": true
-    }
-   }, 
-   "ODNodeCreateWithNodeType": {
-    "args": {
-     "0": {}, 
-     "1": {}, 
-     "3": {
-      "already_cfretained": true, 
-      "null_accepted": true, 
-      "type_modifier": "o"
-     }
-    }, 
-    "retval": {
-     "already_cfretained": true
-    }
-   }, 
-   "ODNodeCustomCall": {
-    "args": {
-     "0": {}, 
-     "2": {}, 
-     "3": {
-      "already_cfretained": true, 
-      "null_accepted": true, 
-      "type_modifier": "o"
-     }
-    }, 
-    "retval": {}
-   }, 
-   "ODNodeGetName": {
-    "args": {
-     "0": {}
-    }, 
-    "retval": {}
-   }, 
-   "ODNodeSetCredentials": {
-    "args": {
-     "0": {}, 
-     "2": {}, 
-     "3": {}, 
-     "4": {
-      "already_cfretained": true, 
-      "null_accepted": true, 
-      "type_modifier": "o"
-     }
-    }
-   }, 
-   "ODNodeSetCredentialsExtended": {
-    "args": {
-     "0": {}, 
-     "4": {}, 
-     "5": {}, 
-     "6": {
-      "already_cfretained": true, 
-      "null_accepted": true, 
-      "type_modifier": "o"
-     }
-    }
-   }, 
-   "ODNodeSetCredentialsUsingKerberosCache": {
-    "args": {
-     "0": {}, 
-     "1": {}, 
-     "2": {
-      "already_cfretained": true, 
-      "null_accepted": true, 
-      "type_modifier": "o"
-     }
-    }
-   }, 
-   "ODQueryCopyResults": {
-    "args": {
-     "0": {}, 
-     "2": {
-      "already_cfretained": true, 
-      "null_accepted": true, 
-      "type_modifier": "o"
-     }
-    }
-   }, 
-   "ODQueryCreateWithNode": {
-    "args": {
-     "0": {}, 
-     "1": {}, 
-     "8": {
-      "already_cfretained": true, 
-      "null_accepted": true, 
-      "type_modifier": "o"
-     }
-    }, 
-    "retval": {
-     "already_cfretained": true
-    }
-   }, 
-   "ODQueryCreateWithNodeType": {
-    "args": {
-     "0": {}, 
-     "8": {
-      "already_cfretained": true, 
-      "null_accepted": true, 
-      "type_modifier": "o"
-     }
-    }, 
-    "retval": {
-     "already_cfretained": true
-    }
-   }, 
-   "ODQueryScheduleWithRunLoop": {
-    "args": {
-     "0": {}, 
-     "1": {}, 
-     "2": {}
-    }
-   }, 
-   "ODQuerySetCallback": {
-    "args": {
-     "0": {}, 
-     "1": {
-      "function": {
-       "args": [
-        {
-         "typestr": [
-          "^{__ODQuery=}", 
-          false
-         ]
-        }, 
-        {
-         "typestr": [
-          "@", 
-          false
-         ]
-        }, 
-        {
-         "typestr": [
-          "^{__CFError=}", 
-          false
-         ]
-        }, 
-        {
-         "typestr": [
-          "^v", 
-          false
-         ]
-        }
-       ], 
-       "retval": {
-        "typestr": [
-         "v", 
-         false
-        ]
-       }
-      }
-     }, 
-     "2": {}
-    }
-   }, 
-   "ODQuerySetDispatchQueue": {
-    "args": {
-     "0": {}, 
-     "1": {}
-    }
-   }, 
-   "ODQuerySynchronize": {
-    "args": {
-     "0": {}
-    }
-   }, 
-   "ODQueryUnscheduleFromRunLoop": {
-    "args": {
-     "0": {}, 
-     "1": {}, 
-     "2": {}
-    }
-   }, 
-   "ODRecordAddMember": {
-    "args": {
-     "0": {}, 
-     "1": {}, 
-     "2": {
-      "already_cfretained": true, 
-      "null_accepted": true, 
-      "type_modifier": "o"
-     }
-    }
-   }, 
-   "ODRecordAddValue": {
-    "args": {
-     "0": {}, 
-     "3": {
-      "already_cfretained": true, 
-      "null_accepted": true, 
-      "type_modifier": "o"
-     }
-    }
-   }, 
-   "ODRecordChangePassword": {
-    "args": {
-     "0": {}, 
-     "1": {}, 
-     "2": {}, 
-     "3": {
-      "already_cfretained": true, 
-      "null_accepted": true, 
-      "type_modifier": "o"
-     }
-    }