Package apple.enums
Class Enums
- java.lang.Object
-
- apple.enums.Enums
-
public final class Enums extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description static intalphaStageVersion Release Stage Codesstatic intbetaStageVersion Release Stage Codesstatic intboldstatic intcondensestatic intdevelopStageVersion Release Stage Codesstatic longDISPATCH_WALLTIME_NOWstatic intextendstatic intfinalStageVersion Release Stage Codesstatic intitalicstatic intkDNSServiceClass_INInternetstatic intkDNSServiceErr_AlreadyRegisteredstatic intkDNSServiceErr_BadFlagsstatic intkDNSServiceErr_BadInterfaceIndexstatic intkDNSServiceErr_BadKeystatic intkDNSServiceErr_BadParamstatic intkDNSServiceErr_BadReferencestatic intkDNSServiceErr_BadSigstatic intkDNSServiceErr_BadStatestatic intkDNSServiceErr_BadTimeCodes up to here existed in Tigerstatic intkDNSServiceErr_DefunctConnectionConnection to daemon returned a SO_ISDEFUNCT error resultstatic intkDNSServiceErr_DoubleNATstatic intkDNSServiceErr_Firewallstatic intkDNSServiceErr_Incompatibleclient library incompatible with daemonstatic intkDNSServiceErr_Invalidstatic intkDNSServiceErr_NameConflictstatic intkDNSServiceErr_NATPortMappingDisabledNAT supports PCP, NAT-PMP or UPnP, but it's disabled by the administratorstatic intkDNSServiceErr_NATPortMappingUnsupportedNAT doesn't support PCP, NAT-PMP or UPnPstatic intkDNSServiceErr_NATTraversalstatic intkDNSServiceErr_NoAuthstatic intkDNSServiceErr_NoErrorstatic intkDNSServiceErr_NoMemorystatic intkDNSServiceErr_NoRouterNo router currently configured (probably no network connectivity)static intkDNSServiceErr_NoSuchKeystatic intkDNSServiceErr_NoSuchNamestatic intkDNSServiceErr_NoSuchRecordstatic intkDNSServiceErr_NotInitializedstatic intkDNSServiceErr_PolicyDeniedstatic intkDNSServiceErr_PollingModestatic intkDNSServiceErr_Refusedstatic intkDNSServiceErr_ServiceNotRunningBackground daemon not runningstatic intkDNSServiceErr_Timeoutstatic intkDNSServiceErr_Transientstatic intkDNSServiceErr_Unknown0xFFFE FFFFstatic intkDNSServiceErr_Unsupportedstatic intkDNSServiceFlagAnsweredFromCacheThis flag is private and should not be used.static intkDNSServiceFlagsAddValid for browses using kDNSServiceInterfaceIndexAny.static intkDNSServiceFlagsAllowExpiredAnswersWhen kDNSServiceFlagAnsweredFromCache is passed back in the flags parameter of DNSServiceQueryRecordReply or DNSServiceGetAddrInfoReply, an answer will have this flag set if it was answered from the cache.static intkDNSServiceFlagsAllowRemoteQueryFlag for creating a long-lived unicast query for the DNSServiceQueryRecord call.static intkDNSServiceFlagsAutoTriggerMoreComing indicates to a callback that at least one more result is queued and will be delivered following immediately after this one.static intkDNSServiceFlagsBackgroundTrafficClassThis flag is meaningful only in DNSServiceResolve.static intkDNSServiceFlagsBogusA chain of trust cannot be built starting from a known trust anchor to the response.static intkDNSServiceFlagsBrowseDomainsFlag for registering individual records on a connected DNSServiceRef.static intkDNSServiceFlagsDefaultValid for browses using kDNSServiceInterfaceIndexAny.static intkDNSServiceFlagsEnableDNSSECInclude AWDL interface when kDNSServiceInterfaceIndexAny is specified.static intkDNSServiceFlagsExpiredAnswerWhen kDNSServiceFlagsAllowExpiredAnswers is passed to DNSServiceQueryRecord or DNSServiceGetAddrInfo, if there are matching expired records still in the cache, then they are immediately returned to the client, and in parallel a network query for that name is issued.static intkDNSServiceFlagsForceThis flag is deprecated.static intkDNSServiceFlagsForceMulticastFlag for creating a record for which we will answer remote queries (queries from hosts more than one hop away; hosts not directly connected to the local link).static intkDNSServiceFlagsIncludeAWDLThis flag is meaningful for Unicast DNS queries.static intkDNSServiceFlagsIncludeP2PWhen kDNServiceFlagsTimeout is passed to DNSServiceQueryRecord or DNSServiceGetAddrInfo, the query is stopped after a certain number of seconds have elapsed.static intkDNSServiceFlagsIndeterminateIf the response cannot be verified to be secure due to expired signatures, missing signatures etc., then the results are considered to be bogus.static intkDNSServiceFlagsInsecureThe response has been validated by verifying all the signatures in the response and was able to build a successful authentication chain starting from a known trust anchor.static intkDNSServiceFlagsKnownUniquestatic intkDNSServiceFlagsLongLivedQueryFlags for specifying domain enumeration type in DNSServiceEnumerateDomains.static intkDNSServiceFlagsMoreComingstatic intkDNSServiceFlagsNoAutoRenameFlags for domain enumeration and browse/query reply callbacks.static intkDNSServiceFlagsPrivateFiveThis flag is private and should not be used.static intkDNSServiceFlagsPrivateFourThis flag is private and should not be used.static intkDNSServiceFlagsPrivateOnekDNSServiceFlagsThresholdOne is meaningful only in DNSServiceBrowse.static intkDNSServiceFlagsPrivateThreeThis flag is private and should not be used.static intkDNSServiceFlagsPrivateTwoThis flag is private and should not be used.static intkDNSServiceFlagsRegistrationDomainsFlag for registering individual records on a connected DNSServiceRef.static intkDNSServiceFlagsReturnIntermediatesClient guarantees that record names are unique, so we can skip sending out initial probe messages.static intkDNSServiceFlagsSecureThis flag is meaningful in DNSServiceGetAddrInfo and DNSServiceQueryRecord.static intkDNSServiceFlagsShareConnectionFlag for returning intermediate results.static intkDNSServiceFlagsSharedFlag for specifying renaming behavior on name conflict when registering non-shared records.static intkDNSServiceFlagsSuppressUnusableFor efficiency, clients that perform many concurrent operations may want to use a single Unix Domain Socket connection with the background daemon, instead of having a separate connection for each independent operation.static intkDNSServiceFlagsThresholdFinderThis flag is meaningful only in DNSServiceRegister.static intkDNSServiceFlagsThresholdOneThis flag is meaningful only in DNSServiceRegister.static intkDNSServiceFlagsThresholdReachedThis flag is meaningful only in DNSServiceRegister.static intkDNSServiceFlagsTimeoutThis flag is meaningful only in DNSServiceQueryRecord which suppresses unusable queries on the wire.static intkDNSServiceFlagsUnicastResponseThere is no valid trust anchor that can be used to determine whether a response is secure or not.static intkDNSServiceFlagsUniqueFlag for specifying renaming behavior on name conflict when registering non-shared records.static intkDNSServiceFlagsValidatePerform DNSSEC validation on the client request when kDNSServiceFlagsEnableDNSSEC is specified Since the client API has not been finalized, we will use it as a temporary flag to turn on the DNSSEC validation.static intkDNSServiceFlagsValidateOptionalRequest unicast response to query.static intkDNSServiceFlagsWakeOnlyServiceThis flag is identical to kDNSServiceFlagsValidate except for the case where the response cannot be validated.static intkDNSServiceFlagsWakeOnResolveInclude P2P interfaces when kDNSServiceInterfaceIndexAny is specified.static intkDNSServiceProtocol_IPv4for DNSServiceGetAddrInfo()static intkDNSServiceProtocol_IPv6for DNSServiceGetAddrInfo()static intkDNSServiceProtocol_TCPfor DNSServiceNATPortMappingCreate()static intkDNSServiceProtocol_UDPfor DNSServiceNATPortMappingCreate()static intkDNSServiceType_AHost address.static intkDNSServiceType_A6IPv6 Address (deprecated)static intkDNSServiceType_AAAAIPv6 Address.static intkDNSServiceType_AFSDBAFS cell database.static intkDNSServiceType_ANYWildcard match.static intkDNSServiceType_APLAddress Prefix Liststatic intkDNSServiceType_ATMAATM Addressstatic intkDNSServiceType_AXFRTransfer zone of authority.static intkDNSServiceType_CERTCertification recordstatic intkDNSServiceType_CNAMECanonical name.static intkDNSServiceType_DHCIDDHCP Client Identifierstatic intkDNSServiceType_DNAMENon-terminal DNAME (for IPv6)static intkDNSServiceType_DNSKEYDNSKEYstatic intkDNSServiceType_DSDelegation Signerstatic intkDNSServiceType_EIDEndpoint identifier.static intkDNSServiceType_GIDIANA-Reservedstatic intkDNSServiceType_GPOSGeographical position (withdrawn).static intkDNSServiceType_HINFOHost information.static intkDNSServiceType_HIPHost Identity Protocolstatic intkDNSServiceType_HTTPSHTTPS Service Binding.static intkDNSServiceType_IPSECKEYIPSECKEYstatic intkDNSServiceType_ISDNISDN calling address.static intkDNSServiceType_IXFRIncremental zone transfer.static intkDNSServiceType_KEYSecurity key.static intkDNSServiceType_KXKey Exchangestatic intkDNSServiceType_LOCLocation Information.static intkDNSServiceType_MAILATransfer mail agent records.static intkDNSServiceType_MAILBTransfer mailbox records.static intkDNSServiceType_MBMailbox domain name.static intkDNSServiceType_MDMail destination.static intkDNSServiceType_MFMail forwarder.static intkDNSServiceType_MGMail group member.static intkDNSServiceType_MINFOMailbox information.static intkDNSServiceType_MRMail rename name.static intkDNSServiceType_MXMail routing information.static intkDNSServiceType_NAPTRNaming Authority PoinTeRstatic intkDNSServiceType_NIMLOCNimrod Locator.static intkDNSServiceType_NSAuthoritative server.static intkDNSServiceType_NSAPNSAP address.static intkDNSServiceType_NSAP_PTRReverse NSAP lookup (deprecated).static intkDNSServiceType_NSECDenial of Existencestatic intkDNSServiceType_NSEC3Hashed Authenticated Denial of Existencestatic intkDNSServiceType_NSEC3PARAMHashed Authenticated Denial of Existencestatic intkDNSServiceType_NULLNull resource record.static intkDNSServiceType_NXTNext domain (security).static intkDNSServiceType_OPTEDNS0 option (meta-RR)static intkDNSServiceType_PTRDomain name pointer.static intkDNSServiceType_PXX.400 mail mapping.static intkDNSServiceType_RPResponsible person.static intkDNSServiceType_RRSIGRRSIGstatic intkDNSServiceType_RTRouter.static intkDNSServiceType_SIGSecurity signature.static intkDNSServiceType_SINKKitchen sink (experimental)static intkDNSServiceType_SOAStart of authority zone.static intkDNSServiceType_SPFSender Policy Framework for E-Mailstatic intkDNSServiceType_SRVServer Selection.static intkDNSServiceType_SSHFPSSH Key Fingerprintstatic intkDNSServiceType_SVCBService Binding.static intkDNSServiceType_TKEYTransaction keystatic intkDNSServiceType_TSIGTransaction signature.static intkDNSServiceType_TXTOne or more text strings (NOT "zero or more...").static intkDNSServiceType_UIDIANA-Reservedstatic intkDNSServiceType_UINFOIANA-Reservedstatic intkDNSServiceType_UNSPECIANA-Reservedstatic intkDNSServiceType_WKSWell known service.static intkDNSServiceType_X25X_25 calling address.static intkNilOptionsstatic intkUnknownType"????"static intkVariableLengthArraystatic intnoErrstatic intnormalstatic intOSBigEndianstatic intOSLittleEndianstatic intOSUnknownByteOrderstatic intoutlinestatic intshadowstatic intunderline
-
-
-
Field Detail
-
noErr
public static final int noErr
- See Also:
- Constant Field Values
-
kNilOptions
public static final int kNilOptions
- See Also:
- Constant Field Values
-
OSUnknownByteOrder
public static final int OSUnknownByteOrder
- See Also:
- Constant Field Values
-
OSLittleEndian
public static final int OSLittleEndian
- See Also:
- Constant Field Values
-
OSBigEndian
public static final int OSBigEndian
- See Also:
- Constant Field Values
-
developStage
public static final int developStage
Version Release Stage Codes- See Also:
- Constant Field Values
-
alphaStage
public static final int alphaStage
Version Release Stage Codes- See Also:
- Constant Field Values
-
betaStage
public static final int betaStage
Version Release Stage Codes- See Also:
- Constant Field Values
-
finalStage
public static final int finalStage
Version Release Stage Codes- See Also:
- Constant Field Values
-
kUnknownType
public static final int kUnknownType
"????" QuickTime 3.0: default unknown ResType or OSType- See Also:
- Constant Field Values
-
normal
public static final int normal
- See Also:
- Constant Field Values
-
bold
public static final int bold
- See Also:
- Constant Field Values
-
italic
public static final int italic
- See Also:
- Constant Field Values
-
underline
public static final int underline
- See Also:
- Constant Field Values
-
outline
public static final int outline
- See Also:
- Constant Field Values
-
shadow
public static final int shadow
- See Also:
- Constant Field Values
-
condense
public static final int condense
- See Also:
- Constant Field Values
-
extend
public static final int extend
- See Also:
- Constant Field Values
-
kVariableLengthArray
public static final int kVariableLengthArray
- See Also:
- Constant Field Values
-
DISPATCH_WALLTIME_NOW
public static final long DISPATCH_WALLTIME_NOW
- See Also:
- Constant Field Values
-
kDNSServiceClass_IN
public static final int kDNSServiceClass_IN
Internet- See Also:
- Constant Field Values
-
kDNSServiceProtocol_IPv4
public static final int kDNSServiceProtocol_IPv4
for DNSServiceGetAddrInfo()- See Also:
- Constant Field Values
-
kDNSServiceProtocol_IPv6
public static final int kDNSServiceProtocol_IPv6
for DNSServiceGetAddrInfo()- See Also:
- Constant Field Values
-
kDNSServiceProtocol_UDP
public static final int kDNSServiceProtocol_UDP
for DNSServiceNATPortMappingCreate()- See Also:
- Constant Field Values
-
kDNSServiceProtocol_TCP
public static final int kDNSServiceProtocol_TCP
for DNSServiceNATPortMappingCreate()- See Also:
- Constant Field Values
-
kDNSServiceFlagsMoreComing
public static final int kDNSServiceFlagsMoreComing
- See Also:
- Constant Field Values
-
kDNSServiceFlagsAutoTrigger
public static final int kDNSServiceFlagsAutoTrigger
MoreComing indicates to a callback that at least one more result is queued and will be delivered following immediately after this one. When the MoreComing flag is set, applications should not immediately update their UI, because this can result in a great deal of ugly flickering on the screen, and can waste a great deal of CPU time repeatedly updating the screen with content that is then immediately erased, over and over. Applications should wait until MoreComing is not set, and then update their UI when no more changes are imminent. When MoreComing is not set, that doesn't mean there will be no more answers EVER, just that there are no more answers immediately available right now at this instant. If more answers become available in the future they will be delivered as usual.- See Also:
- Constant Field Values
-
kDNSServiceFlagsAdd
public static final int kDNSServiceFlagsAdd
Valid for browses using kDNSServiceInterfaceIndexAny. Will auto trigger the browse over AWDL as well once the service is discovered over BLE. This flag is an input value to DNSServiceBrowse(), which is why we can use the same value as kDNSServiceFlagsMoreComing, which is an output flag for various client callbacks.- See Also:
- Constant Field Values
-
kDNSServiceFlagsDefault
public static final int kDNSServiceFlagsDefault
Valid for browses using kDNSServiceInterfaceIndexAny. Will auto trigger the browse over AWDL as well once the service is discovered over BLE. This flag is an input value to DNSServiceBrowse(), which is why we can use the same value as kDNSServiceFlagsMoreComing, which is an output flag for various client callbacks.- See Also:
- Constant Field Values
-
kDNSServiceFlagsNoAutoRename
public static final int kDNSServiceFlagsNoAutoRename
Flags for domain enumeration and browse/query reply callbacks. "Default" applies only to enumeration and is only valid in conjunction with "Add". An enumeration callback with the "Add" flag NOT set indicates a "Remove", i.e. the domain is no longer valid.- See Also:
- Constant Field Values
-
kDNSServiceFlagsShared
public static final int kDNSServiceFlagsShared
Flag for specifying renaming behavior on name conflict when registering non-shared records. By default, name conflicts are automatically handled by renaming the service. NoAutoRename overrides this behavior - with this flag set, name conflicts will result in a callback. The NoAutorename flag is only valid if a name is explicitly specified when registering a service (i.e. the default name is not used.)- See Also:
- Constant Field Values
-
kDNSServiceFlagsUnique
public static final int kDNSServiceFlagsUnique
Flag for specifying renaming behavior on name conflict when registering non-shared records. By default, name conflicts are automatically handled by renaming the service. NoAutoRename overrides this behavior - with this flag set, name conflicts will result in a callback. The NoAutorename flag is only valid if a name is explicitly specified when registering a service (i.e. the default name is not used.)- See Also:
- Constant Field Values
-
kDNSServiceFlagsBrowseDomains
public static final int kDNSServiceFlagsBrowseDomains
Flag for registering individual records on a connected DNSServiceRef. Shared indicates that there may be multiple records with this name on the network (e.g. PTR records). Unique indicates that the record's name is to be unique on the network (e.g. SRV records).- See Also:
- Constant Field Values
-
kDNSServiceFlagsRegistrationDomains
public static final int kDNSServiceFlagsRegistrationDomains
Flag for registering individual records on a connected DNSServiceRef. Shared indicates that there may be multiple records with this name on the network (e.g. PTR records). Unique indicates that the record's name is to be unique on the network (e.g. SRV records).- See Also:
- Constant Field Values
-
kDNSServiceFlagsLongLivedQuery
public static final int kDNSServiceFlagsLongLivedQuery
Flags for specifying domain enumeration type in DNSServiceEnumerateDomains. BrowseDomains enumerates domains recommended for browsing, RegistrationDomains enumerates domains recommended for registration.- See Also:
- Constant Field Values
-
kDNSServiceFlagsAllowRemoteQuery
public static final int kDNSServiceFlagsAllowRemoteQuery
Flag for creating a long-lived unicast query for the DNSServiceQueryRecord call.- See Also:
- Constant Field Values
-
kDNSServiceFlagsForceMulticast
public static final int kDNSServiceFlagsForceMulticast
Flag for creating a record for which we will answer remote queries (queries from hosts more than one hop away; hosts not directly connected to the local link).- See Also:
- Constant Field Values
-
kDNSServiceFlagsForce
public static final int kDNSServiceFlagsForce
This flag is deprecated.- See Also:
- Constant Field Values
-
kDNSServiceFlagsKnownUnique
public static final int kDNSServiceFlagsKnownUnique
- See Also:
- Constant Field Values
-
kDNSServiceFlagsReturnIntermediates
public static final int kDNSServiceFlagsReturnIntermediates
Client guarantees that record names are unique, so we can skip sending out initial probe messages. Standard name conflict resolution is still done if a conflict is discovered.- See Also:
- Constant Field Values
-
kDNSServiceFlagsShareConnection
public static final int kDNSServiceFlagsShareConnection
Flag for returning intermediate results. For example, if a query results in an authoritative NXDomain (name does not exist) then that result is returned to the client. However the query is not implicitly cancelled -- it remains active and if the answer subsequently changes (e.g. because a VPN tunnel is subsequently established) then that positive result will still be returned to the client. Similarly, if a query results in a CNAME record, then in addition to following the CNAME referral, the intermediate CNAME result is also returned to the client. When this flag is not set, NXDomain errors are not returned, and CNAME records are followed silently without informing the client of the intermediate steps. (In earlier builds this flag was briefly calledkDNSServiceFlagsReturnCNAME)- See Also:
- Constant Field Values
-
kDNSServiceFlagsSuppressUnusable
public static final int kDNSServiceFlagsSuppressUnusable
For efficiency, clients that perform many concurrent operations may want to use a single Unix Domain Socket connection with the background daemon, instead of having a separate connection for each independent operation. To use this mode, clients first call DNSServiceCreateConnection(&SharedRef) to initialize the main DNSServiceRef. For each subsequent operation that is to share that same connection, the client copies the SharedRef, and then passes the address of that copy, setting the ShareConnection flag to tell the library that this DNSServiceRef is not a typical uninitialized DNSServiceRef; it's a copy of an existing DNSServiceRef whose connection information should be reused. For example: DNSServiceErrorType error; DNSServiceRef SharedRef; error = DNSServiceCreateConnection(&SharedRef); if (error) ... DNSServiceRef BrowseRef = SharedRef; // Important: COPY the primary DNSServiceRef first... error = DNSServiceBrowse(&BrowseRef, kDNSServiceFlagsShareConnection, ...); // then use the copy if (error) ... ... DNSServiceRefDeallocate(BrowseRef); // Terminate the browse operation DNSServiceRefDeallocate(SharedRef); // Terminate the shared connection Notes: 1. Collective kDNSServiceFlagsMoreComing flag When callbacks are invoked using a shared DNSServiceRef, the kDNSServiceFlagsMoreComing flag applies collectively to *all* active operations sharing the same parent DNSServiceRef. If the MoreComing flag is set it means that there are more results queued on this parent DNSServiceRef, but not necessarily more results for this particular callback function. The implication of this for client programmers is that when a callback is invoked with the MoreComing flag set, the code should update its internal data structures with the new result, and set a variable indicating that its UI needs to be updated. Then, later when a callback is eventually invoked with the MoreComing flag not set, the code should update *all* stale UI elements related to that shared parent DNSServiceRef that need updating, not just the UI elements related to the particular callback that happened to be the last one to be invoked. 2. Canceling operations and kDNSServiceFlagsMoreComing Whenever you cancel any operation for which you had deferred UI updates waiting because of a kDNSServiceFlagsMoreComing flag, you should perform those deferred UI updates. This is because, after cancelling the operation, you can no longer wait for a callback *without* MoreComing set, to tell you do perform your deferred UI updates (the operation has been canceled, so there will be no more callbacks). An implication of the collective kDNSServiceFlagsMoreComing flag for shared connections is that this guideline applies more broadly -- any time you cancel an operation on a shared connection, you should perform all deferred UI updates for all operations sharing that connection. This is because the MoreComing flag might have been referring to events coming for the operation you canceled, which will now not be coming because the operation has been canceled. 3. Only share DNSServiceRef's created with DNSServiceCreateConnection Calling DNSServiceCreateConnection(&ref) creates a special shareable DNSServiceRef. DNSServiceRef's created by other calls like DNSServiceBrowse() or DNSServiceResolve() cannot be shared by copying them and using kDNSServiceFlagsShareConnection. 4. Don't Double-Deallocate Calling DNSServiceRefDeallocate(OpRef) for a particular operation's DNSServiceRef terminates just that operation. Calling DNSServiceRefDeallocate(SharedRef) for the main shared DNSServiceRef (the parent DNSServiceRef, originally created by DNSServiceCreateConnection(&SharedRef)) automatically terminates the shared connection *and* all operations that were still using it. After doing this, DO NOT then attempt to deallocate any remaining subordinate DNSServiceRef's. The memory used by those subordinate DNSServiceRef's has already been freed, so any attempt to do a DNSServiceRefDeallocate (or any other operation) on them will result in accesses to freed memory, leading to crashes or other equally undesirable results. You can deallocate individual operations first and then deallocate the parent DNSServiceRef last, but if you deallocate the parent DNSServiceRef first, then all of the subordinate DNSServiceRef's are implicitly deallocated, and explicitly deallocating them a second time will lead to crashes. 5. Thread Safety The dns_sd.h API does not presuppose any particular threading model, and consequently does no locking internally (which would require linking with a specific threading library). If the client concurrently, from multiple threads (or contexts), calls API routines using the same DNSServiceRef, it is the client's responsibility to provide mutual exclusion for that DNSServiceRef. For example, use of DNSServiceRefDeallocate requires caution. A common mistake is as follows: Thread B calls DNSServiceRefDeallocate to deallocate sdRef while Thread A is processing events using sdRef. Doing this will lead to intermittent crashes on thread A if the sdRef is used after it was deallocated. A telltale sign of this crash type is to see DNSServiceProcessResult on the stack preceding the actual crash location. To state this more explicitly, mDNSResponder does not queue DNSServiceRefDeallocate so that it occurs discretely before or after an event is handled.- See Also:
- Constant Field Values
-
kDNSServiceFlagsTimeout
public static final int kDNSServiceFlagsTimeout
This flag is meaningful only in DNSServiceQueryRecord which suppresses unusable queries on the wire. If "hostname" is a wide-area unicast DNS hostname (i.e. not a ".local." name) but this host has no routable IPv6 address, then the call will not try to look up IPv6 addresses for "hostname", since any addresses it found would be unlikely to be of any use anyway. Similarly, if this host has no routable IPv4 address, the call will not try to look up IPv4 addresses for "hostname".- See Also:
- Constant Field Values
-
kDNSServiceFlagsIncludeP2P
public static final int kDNSServiceFlagsIncludeP2P
When kDNServiceFlagsTimeout is passed to DNSServiceQueryRecord or DNSServiceGetAddrInfo, the query is stopped after a certain number of seconds have elapsed. The time at which the query will be stopped is determined by the system and cannot be configured by the user. The query will be stopped irrespective of whether a response was given earlier or not. When the query is stopped, the callback will be called with an error code of kDNSServiceErr_Timeout and a NULL sockaddr will be returned for DNSServiceGetAddrInfo and zero length rdata will be returned for DNSServiceQueryRecord.- See Also:
- Constant Field Values
-
kDNSServiceFlagsWakeOnResolve
public static final int kDNSServiceFlagsWakeOnResolve
Include P2P interfaces when kDNSServiceInterfaceIndexAny is specified. By default, specifying kDNSServiceInterfaceIndexAny does not include P2P interfaces.- See Also:
- Constant Field Values
-
kDNSServiceFlagsBackgroundTrafficClass
public static final int kDNSServiceFlagsBackgroundTrafficClass
This flag is meaningful only in DNSServiceResolve. When set, it tries to send a magic packet to wake up the client.- See Also:
- Constant Field Values
-
kDNSServiceFlagsIncludeAWDL
public static final int kDNSServiceFlagsIncludeAWDL
This flag is meaningful for Unicast DNS queries. When set, it uses the background traffic class for packets that service the request.- See Also:
- Constant Field Values
-
kDNSServiceFlagsValidate
public static final int kDNSServiceFlagsValidate
Perform DNSSEC validation on the client request when kDNSServiceFlagsEnableDNSSEC is specified Since the client API has not been finalized, we will use it as a temporary flag to turn on the DNSSEC validation.- See Also:
- Constant Field Values
-
kDNSServiceFlagsSecure
public static final int kDNSServiceFlagsSecure
This flag is meaningful in DNSServiceGetAddrInfo and DNSServiceQueryRecord. This is the ONLY flag to be valid as an input to the APIs and also an output through the callbacks in the APIs. When this flag is passed to DNSServiceQueryRecord and DNSServiceGetAddrInfo to resolve unicast names, the response will be validated using DNSSEC. The validation results are delivered using the flags field in the callback and kDNSServiceFlagsValidate is marked in the flags to indicate that DNSSEC status is also available. When the callback is called to deliver the query results, the validation results may or may not be available. If it is not delivered along with the results, the validation status is delivered when the validation completes. When the validation results are delivered in the callback, it is indicated by marking the flags with kDNSServiceFlagsValidate and kDNSServiceFlagsAdd along with the DNSSEC status flags (described below) and a NULL sockaddr will be returned for DNSServiceGetAddrInfo and zero length rdata will be returned for DNSServiceQueryRecord. DNSSEC validation results are for the whole RRSet and not just individual records delivered in the callback. When kDNSServiceFlagsAdd is not set in the flags, applications should implicitly assume that the DNSSEC status of the RRSet that has been delivered up until that point is not valid anymore, till another callback is called with kDNSServiceFlagsAdd and kDNSServiceFlagsValidate. The following four flags indicate the status of the DNSSEC validation and marked in the flags field of the callback. When any of the four flags is set, kDNSServiceFlagsValidate will also be set. To check the validation status, the other applicable output flags should be masked.- See Also:
- Constant Field Values
-
kDNSServiceFlagsInsecure
public static final int kDNSServiceFlagsInsecure
The response has been validated by verifying all the signatures in the response and was able to build a successful authentication chain starting from a known trust anchor.- See Also:
- Constant Field Values
-
kDNSServiceFlagsBogus
public static final int kDNSServiceFlagsBogus
A chain of trust cannot be built starting from a known trust anchor to the response.- See Also:
- Constant Field Values
-
kDNSServiceFlagsIndeterminate
public static final int kDNSServiceFlagsIndeterminate
If the response cannot be verified to be secure due to expired signatures, missing signatures etc., then the results are considered to be bogus.- See Also:
- Constant Field Values
-
kDNSServiceFlagsUnicastResponse
public static final int kDNSServiceFlagsUnicastResponse
There is no valid trust anchor that can be used to determine whether a response is secure or not.- See Also:
- Constant Field Values
-
kDNSServiceFlagsValidateOptional
public static final int kDNSServiceFlagsValidateOptional
Request unicast response to query.- See Also:
- Constant Field Values
-
kDNSServiceFlagsWakeOnlyService
public static final int kDNSServiceFlagsWakeOnlyService
This flag is identical to kDNSServiceFlagsValidate except for the case where the response cannot be validated. If this flag is set in DNSServiceQueryRecord or DNSServiceGetAddrInfo, the DNSSEC records will be requested for validation. If they cannot be received for some reason during the validation (e.g., zone is not signed, zone is signed but cannot be traced back to root, recursive server does not understand DNSSEC etc.), then this will fallback to the default behavior where the validation will not be performed and no DNSSEC results will be provided. If the zone is signed and there is a valid path to a known trust anchor configured in the system and the application requires DNSSEC validation irrespective of the DNSSEC awareness in the current network, then this option MUST not be used. This is only intended to be used during the transition period where the different nodes participating in the DNS resolution may not understand DNSSEC or managed properly (e.g. missing DS record) but still want to be able to resolve DNS successfully.- See Also:
- Constant Field Values
-
kDNSServiceFlagsThresholdOne
public static final int kDNSServiceFlagsThresholdOne
This flag is meaningful only in DNSServiceRegister. When set, the service will not be registered with sleep proxy server during sleep.- See Also:
- Constant Field Values
-
kDNSServiceFlagsThresholdFinder
public static final int kDNSServiceFlagsThresholdFinder
This flag is meaningful only in DNSServiceRegister. When set, the service will not be registered with sleep proxy server during sleep.- See Also:
- Constant Field Values
-
kDNSServiceFlagsThresholdReached
public static final int kDNSServiceFlagsThresholdReached
This flag is meaningful only in DNSServiceRegister. When set, the service will not be registered with sleep proxy server during sleep.- See Also:
- Constant Field Values
-
kDNSServiceFlagsPrivateOne
public static final int kDNSServiceFlagsPrivateOne
kDNSServiceFlagsThresholdOne is meaningful only in DNSServiceBrowse. When set, the system will stop issuing browse queries on the network once the number of answers returned is one or more. It will issue queries on the network again if the number of answers drops to zero. This flag is for Apple internal use only. Third party developers should not rely on this behavior being supported in any given software release. kDNSServiceFlagsThresholdFinder is meaningful only in DNSServiceBrowse. When set, the system will stop issuing browse queries on the network once the number of answers has reached the threshold set for Finder. It will issue queries on the network again if the number of answers drops below this threshold. This flag is for Apple internal use only. Third party developers should not rely on this behavior being supported in any given software release. When kDNSServiceFlagsThresholdReached is set in the client callback add or remove event, it indicates that the browse answer threshold has been reached and no browse requests will be generated on the network until the number of answers falls below the threshold value. Add and remove events can still occur based on incoming Bonjour traffic observed by the system. The set of services return to the client is not guaranteed to represent the entire set of services present on the network once the threshold has been reached. Note, while kDNSServiceFlagsThresholdReached and kDNSServiceFlagsThresholdOne have the same value, there isn't a conflict because kDNSServiceFlagsThresholdReached is only set in the callbacks and kDNSServiceFlagsThresholdOne is only set on input to a DNSServiceBrowse call.- See Also:
- Constant Field Values
-
kDNSServiceFlagsPrivateTwo
public static final int kDNSServiceFlagsPrivateTwo
This flag is private and should not be used.- See Also:
- Constant Field Values
-
kDNSServiceFlagsPrivateThree
public static final int kDNSServiceFlagsPrivateThree
This flag is private and should not be used.- See Also:
- Constant Field Values
-
kDNSServiceFlagsPrivateFour
public static final int kDNSServiceFlagsPrivateFour
This flag is private and should not be used.- See Also:
- Constant Field Values
-
kDNSServiceFlagsPrivateFive
public static final int kDNSServiceFlagsPrivateFive
This flag is private and should not be used.- See Also:
- Constant Field Values
-
kDNSServiceFlagAnsweredFromCache
public static final int kDNSServiceFlagAnsweredFromCache
This flag is private and should not be used.- See Also:
- Constant Field Values
-
kDNSServiceFlagsAllowExpiredAnswers
public static final int kDNSServiceFlagsAllowExpiredAnswers
When kDNSServiceFlagAnsweredFromCache is passed back in the flags parameter of DNSServiceQueryRecordReply or DNSServiceGetAddrInfoReply, an answer will have this flag set if it was answered from the cache.- See Also:
- Constant Field Values
-
kDNSServiceFlagsExpiredAnswer
public static final int kDNSServiceFlagsExpiredAnswer
When kDNSServiceFlagsAllowExpiredAnswers is passed to DNSServiceQueryRecord or DNSServiceGetAddrInfo, if there are matching expired records still in the cache, then they are immediately returned to the client, and in parallel a network query for that name is issued. All returned records from the query will remain in the cache after expiration.- See Also:
- Constant Field Values
-
kDNSServiceType_A
public static final int kDNSServiceType_A
Host address.- See Also:
- Constant Field Values
-
kDNSServiceType_NS
public static final int kDNSServiceType_NS
Authoritative server.- See Also:
- Constant Field Values
-
kDNSServiceType_MD
public static final int kDNSServiceType_MD
Mail destination.- See Also:
- Constant Field Values
-
kDNSServiceType_MF
public static final int kDNSServiceType_MF
Mail forwarder.- See Also:
- Constant Field Values
-
kDNSServiceType_CNAME
public static final int kDNSServiceType_CNAME
Canonical name.- See Also:
- Constant Field Values
-
kDNSServiceType_SOA
public static final int kDNSServiceType_SOA
Start of authority zone.- See Also:
- Constant Field Values
-
kDNSServiceType_MB
public static final int kDNSServiceType_MB
Mailbox domain name.- See Also:
- Constant Field Values
-
kDNSServiceType_MG
public static final int kDNSServiceType_MG
Mail group member.- See Also:
- Constant Field Values
-
kDNSServiceType_MR
public static final int kDNSServiceType_MR
Mail rename name.- See Also:
- Constant Field Values
-
kDNSServiceType_NULL
public static final int kDNSServiceType_NULL
Null resource record.- See Also:
- Constant Field Values
-
kDNSServiceType_WKS
public static final int kDNSServiceType_WKS
Well known service.- See Also:
- Constant Field Values
-
kDNSServiceType_PTR
public static final int kDNSServiceType_PTR
Domain name pointer.- See Also:
- Constant Field Values
-
kDNSServiceType_HINFO
public static final int kDNSServiceType_HINFO
Host information.- See Also:
- Constant Field Values
-
kDNSServiceType_MINFO
public static final int kDNSServiceType_MINFO
Mailbox information.- See Also:
- Constant Field Values
-
kDNSServiceType_MX
public static final int kDNSServiceType_MX
Mail routing information.- See Also:
- Constant Field Values
-
kDNSServiceType_TXT
public static final int kDNSServiceType_TXT
One or more text strings (NOT "zero or more...").- See Also:
- Constant Field Values
-
kDNSServiceType_RP
public static final int kDNSServiceType_RP
Responsible person.- See Also:
- Constant Field Values
-
kDNSServiceType_AFSDB
public static final int kDNSServiceType_AFSDB
AFS cell database.- See Also:
- Constant Field Values
-
kDNSServiceType_X25
public static final int kDNSServiceType_X25
X_25 calling address.- See Also:
- Constant Field Values
-
kDNSServiceType_ISDN
public static final int kDNSServiceType_ISDN
ISDN calling address.- See Also:
- Constant Field Values
-
kDNSServiceType_RT
public static final int kDNSServiceType_RT
Router.- See Also:
- Constant Field Values
-
kDNSServiceType_NSAP
public static final int kDNSServiceType_NSAP
NSAP address.- See Also:
- Constant Field Values
-
kDNSServiceType_NSAP_PTR
public static final int kDNSServiceType_NSAP_PTR
Reverse NSAP lookup (deprecated).- See Also:
- Constant Field Values
-
kDNSServiceType_SIG
public static final int kDNSServiceType_SIG
Security signature.- See Also:
- Constant Field Values
-
kDNSServiceType_KEY
public static final int kDNSServiceType_KEY
Security key.- See Also:
- Constant Field Values
-
kDNSServiceType_PX
public static final int kDNSServiceType_PX
X.400 mail mapping.- See Also:
- Constant Field Values
-
kDNSServiceType_GPOS
public static final int kDNSServiceType_GPOS
Geographical position (withdrawn).- See Also:
- Constant Field Values
-
kDNSServiceType_AAAA
public static final int kDNSServiceType_AAAA
IPv6 Address.- See Also:
- Constant Field Values
-
kDNSServiceType_LOC
public static final int kDNSServiceType_LOC
Location Information.- See Also:
- Constant Field Values
-
kDNSServiceType_NXT
public static final int kDNSServiceType_NXT
Next domain (security).- See Also:
- Constant Field Values
-
kDNSServiceType_EID
public static final int kDNSServiceType_EID
Endpoint identifier.- See Also:
- Constant Field Values
-
kDNSServiceType_NIMLOC
public static final int kDNSServiceType_NIMLOC
Nimrod Locator.- See Also:
- Constant Field Values
-
kDNSServiceType_SRV
public static final int kDNSServiceType_SRV
Server Selection.- See Also:
- Constant Field Values
-
kDNSServiceType_ATMA
public static final int kDNSServiceType_ATMA
ATM Address- See Also:
- Constant Field Values
-
kDNSServiceType_NAPTR
public static final int kDNSServiceType_NAPTR
Naming Authority PoinTeR- See Also:
- Constant Field Values
-
kDNSServiceType_KX
public static final int kDNSServiceType_KX
Key Exchange- See Also:
- Constant Field Values
-
kDNSServiceType_CERT
public static final int kDNSServiceType_CERT
Certification record- See Also:
- Constant Field Values
-
kDNSServiceType_A6
public static final int kDNSServiceType_A6
IPv6 Address (deprecated)- See Also:
- Constant Field Values
-
kDNSServiceType_DNAME
public static final int kDNSServiceType_DNAME
Non-terminal DNAME (for IPv6)- See Also:
- Constant Field Values
-
kDNSServiceType_SINK
public static final int kDNSServiceType_SINK
Kitchen sink (experimental)- See Also:
- Constant Field Values
-
kDNSServiceType_OPT
public static final int kDNSServiceType_OPT
EDNS0 option (meta-RR)- See Also:
- Constant Field Values
-
kDNSServiceType_APL
public static final int kDNSServiceType_APL
Address Prefix List- See Also:
- Constant Field Values
-
kDNSServiceType_DS
public static final int kDNSServiceType_DS
Delegation Signer- See Also:
- Constant Field Values
-
kDNSServiceType_SSHFP
public static final int kDNSServiceType_SSHFP
SSH Key Fingerprint- See Also:
- Constant Field Values
-
kDNSServiceType_IPSECKEY
public static final int kDNSServiceType_IPSECKEY
IPSECKEY- See Also:
- Constant Field Values
-
kDNSServiceType_RRSIG
public static final int kDNSServiceType_RRSIG
RRSIG- See Also:
- Constant Field Values
-
kDNSServiceType_NSEC
public static final int kDNSServiceType_NSEC
Denial of Existence- See Also:
- Constant Field Values
-
kDNSServiceType_DNSKEY
public static final int kDNSServiceType_DNSKEY
DNSKEY- See Also:
- Constant Field Values
-
kDNSServiceType_DHCID
public static final int kDNSServiceType_DHCID
DHCP Client Identifier- See Also:
- Constant Field Values
-
kDNSServiceType_NSEC3
public static final int kDNSServiceType_NSEC3
Hashed Authenticated Denial of Existence- See Also:
- Constant Field Values
-
kDNSServiceType_NSEC3PARAM
public static final int kDNSServiceType_NSEC3PARAM
Hashed Authenticated Denial of Existence- See Also:
- Constant Field Values
-
kDNSServiceType_HIP
public static final int kDNSServiceType_HIP
Host Identity Protocol- See Also:
- Constant Field Values
-
kDNSServiceType_SPF
public static final int kDNSServiceType_SPF
Sender Policy Framework for E-Mail- See Also:
- Constant Field Values
-
kDNSServiceType_UINFO
public static final int kDNSServiceType_UINFO
IANA-Reserved- See Also:
- Constant Field Values
-
kDNSServiceType_UID
public static final int kDNSServiceType_UID
IANA-Reserved- See Also:
- Constant Field Values
-
kDNSServiceType_GID
public static final int kDNSServiceType_GID
IANA-Reserved- See Also:
- Constant Field Values
-
kDNSServiceType_UNSPEC
public static final int kDNSServiceType_UNSPEC
IANA-Reserved- See Also:
- Constant Field Values
-
kDNSServiceType_TKEY
public static final int kDNSServiceType_TKEY
Transaction key- See Also:
- Constant Field Values
-
kDNSServiceType_TSIG
public static final int kDNSServiceType_TSIG
Transaction signature.- See Also:
- Constant Field Values
-
kDNSServiceType_IXFR
public static final int kDNSServiceType_IXFR
Incremental zone transfer.- See Also:
- Constant Field Values
-
kDNSServiceType_AXFR
public static final int kDNSServiceType_AXFR
Transfer zone of authority.- See Also:
- Constant Field Values
-
kDNSServiceType_MAILB
public static final int kDNSServiceType_MAILB
Transfer mailbox records.- See Also:
- Constant Field Values
-
kDNSServiceType_MAILA
public static final int kDNSServiceType_MAILA
Transfer mail agent records.- See Also:
- Constant Field Values
-
kDNSServiceType_ANY
public static final int kDNSServiceType_ANY
Wildcard match.- See Also:
- Constant Field Values
-
kDNSServiceErr_NoError
public static final int kDNSServiceErr_NoError
- See Also:
- Constant Field Values
-
kDNSServiceErr_Unknown
public static final int kDNSServiceErr_Unknown
0xFFFE FFFF- See Also:
- Constant Field Values
-
kDNSServiceErr_NoSuchName
public static final int kDNSServiceErr_NoSuchName
- See Also:
- Constant Field Values
-
kDNSServiceErr_NoMemory
public static final int kDNSServiceErr_NoMemory
- See Also:
- Constant Field Values
-
kDNSServiceErr_BadParam
public static final int kDNSServiceErr_BadParam
- See Also:
- Constant Field Values
-
kDNSServiceErr_BadReference
public static final int kDNSServiceErr_BadReference
- See Also:
- Constant Field Values
-
kDNSServiceErr_BadState
public static final int kDNSServiceErr_BadState
- See Also:
- Constant Field Values
-
kDNSServiceErr_BadFlags
public static final int kDNSServiceErr_BadFlags
- See Also:
- Constant Field Values
-
kDNSServiceErr_Unsupported
public static final int kDNSServiceErr_Unsupported
- See Also:
- Constant Field Values
-
kDNSServiceErr_NotInitialized
public static final int kDNSServiceErr_NotInitialized
- See Also:
- Constant Field Values
-
kDNSServiceErr_AlreadyRegistered
public static final int kDNSServiceErr_AlreadyRegistered
- See Also:
- Constant Field Values
-
kDNSServiceErr_NameConflict
public static final int kDNSServiceErr_NameConflict
- See Also:
- Constant Field Values
-
kDNSServiceErr_Invalid
public static final int kDNSServiceErr_Invalid
- See Also:
- Constant Field Values
-
kDNSServiceErr_Firewall
public static final int kDNSServiceErr_Firewall
- See Also:
- Constant Field Values
-
kDNSServiceErr_Incompatible
public static final int kDNSServiceErr_Incompatible
client library incompatible with daemon- See Also:
- Constant Field Values
-
kDNSServiceErr_BadInterfaceIndex
public static final int kDNSServiceErr_BadInterfaceIndex
- See Also:
- Constant Field Values
-
kDNSServiceErr_Refused
public static final int kDNSServiceErr_Refused
- See Also:
- Constant Field Values
-
kDNSServiceErr_NoSuchRecord
public static final int kDNSServiceErr_NoSuchRecord
- See Also:
- Constant Field Values
-
kDNSServiceErr_NoAuth
public static final int kDNSServiceErr_NoAuth
- See Also:
- Constant Field Values
-
kDNSServiceErr_NoSuchKey
public static final int kDNSServiceErr_NoSuchKey
- See Also:
- Constant Field Values
-
kDNSServiceErr_NATTraversal
public static final int kDNSServiceErr_NATTraversal
- See Also:
- Constant Field Values
-
kDNSServiceErr_DoubleNAT
public static final int kDNSServiceErr_DoubleNAT
- See Also:
- Constant Field Values
-
kDNSServiceErr_BadTime
public static final int kDNSServiceErr_BadTime
Codes up to here existed in Tiger- See Also:
- Constant Field Values
-
kDNSServiceErr_BadSig
public static final int kDNSServiceErr_BadSig
- See Also:
- Constant Field Values
-
kDNSServiceErr_BadKey
public static final int kDNSServiceErr_BadKey
- See Also:
- Constant Field Values
-
kDNSServiceErr_Transient
public static final int kDNSServiceErr_Transient
- See Also:
- Constant Field Values
-
kDNSServiceErr_ServiceNotRunning
public static final int kDNSServiceErr_ServiceNotRunning
Background daemon not running- See Also:
- Constant Field Values
-
kDNSServiceErr_NATPortMappingUnsupported
public static final int kDNSServiceErr_NATPortMappingUnsupported
NAT doesn't support PCP, NAT-PMP or UPnP- See Also:
- Constant Field Values
-
kDNSServiceErr_NATPortMappingDisabled
public static final int kDNSServiceErr_NATPortMappingDisabled
NAT supports PCP, NAT-PMP or UPnP, but it's disabled by the administrator- See Also:
- Constant Field Values
-
kDNSServiceErr_NoRouter
public static final int kDNSServiceErr_NoRouter
No router currently configured (probably no network connectivity)- See Also:
- Constant Field Values
-
kDNSServiceErr_PollingMode
public static final int kDNSServiceErr_PollingMode
- See Also:
- Constant Field Values
-
kDNSServiceErr_Timeout
public static final int kDNSServiceErr_Timeout
- See Also:
- Constant Field Values
-
kDNSServiceErr_DefunctConnection
public static final int kDNSServiceErr_DefunctConnection
Connection to daemon returned a SO_ISDEFUNCT error result- See Also:
- Constant Field Values
-
kDNSServiceErr_PolicyDenied
public static final int kDNSServiceErr_PolicyDenied
- See Also:
- Constant Field Values
-
kDNSServiceFlagsEnableDNSSEC
public static final int kDNSServiceFlagsEnableDNSSEC
Include AWDL interface when kDNSServiceInterfaceIndexAny is specified.- See Also:
- Constant Field Values
-
kDNSServiceType_SVCB
public static final int kDNSServiceType_SVCB
Service Binding.- See Also:
- Constant Field Values
-
kDNSServiceType_HTTPS
public static final int kDNSServiceType_HTTPS
HTTPS Service Binding.- See Also:
- Constant Field Values
-
-