remove support for 'trademark files'
[unleashed/tickless.git] / share / man / man3dns_sd / DNSServiceEnumerateDomains.3dns_sd
blobdcaf375e99eb72d543e3899192a9ce136d128cf8
1 '\" te
2 .\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
3 .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
4 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
5 .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
6 .TH DNSSERVICEENUMERATEDOMAINS 3DNS_SD "Aug 20, 2007"
7 .SH NAME
8 DNSServiceEnumerateDomains \- enumerate recommended domains
9 .SH SYNOPSIS
10 .LP
11 .nf
12 \fBcc\fR [ \fIflag\fR ... ] \fIfile\fR ... \fB-ldns_sd\fR [ \fIlibrary\fR ... ]
13 #include <dns_sd.h>
15 \fBDNSServiceErrorType\fR \fIDNSServiceEnumerateDomains\fR(\fBDNSServiceRef\fR *\fIsdRef\fR,
16      \fBDNSServiceFlags\fR \fIflags\fR, \fBuint32_t\fR \fIinterfaceIndex\fR,
17      \fBDNSServiceDomainEnumReply\fR \fIcallBack\fR, \fBvoid\fR *\fIcontext\fR);
18 .fi
20 .LP
21 .nf
22 \fBtypedef\fR \fIvoid\fR(*\fBDNSServiceDomainEnumReply\fR)(\fBDNSServiceRef\fR \fIsdRef\fR,
23      \fBDNSServiceFlags\fR \fIflags\fR, \fBuint31_t\fR \fIinterfaceIndex\fR,
24      \fBDNSServiceErrorType\fR \fIerrorCode\fR, \fBconst char\fR *\fIreplyDomain\fR,
25      \fBvoid\fR *\fIcontext\fR);
26 .fi
28 .SH DESCRIPTION
29 .sp
30 .LP
31 The \fBDNSServiceEnumerateDomains()\fR function allows applications to
32 determine recommended browsing and registration domains for performing service
33 discovery \fBDNS\fR queries. The \fIcallback\fR argument points to a function
34 to be called to return results or if the asynchronous call to
35 \fBDNSServiceEnumerateDomains()\fR fails. The callback function should point to
36 a function of type \fBDNSServiceDomainEnumReply\fR listed above.
37 .sp
38 .LP
39 A pointer to an uninitialized \fBDNSServiceRef\fR, \fIsdRef\fR must be passed
40 to \fBDNSServiceEnumerateDomains()\fR. If the call succeeds, \fIsdRef\fR is
41 initialized and \fBkDNSServiceErr_NoError\fR is returned. The enumeration call
42 runs indefinitely until the client terminates the call. The enumeration call
43 must be terminated by passing the \fBDNSServiceRef\fR initialized by the
44 enumeration call to \fBDNSServiceRefDeallocate()\fR when no more domains are to
45 be found.
46 .sp
47 .LP
48 The value of flags is constructed by a bitwise-inclusive-OR of the \fIflags\fR
49 used in \fBDNSService\fR functions and defined in \fB<dns_sd.h>\fR\&. Possible
50 values for \fIflags\fR to the \fBDNSServiceEnumerateDomains()\fR call are:
51 \fBkDNSServiceFlagsBrowseDomains\fR and
52 \fBkDNSServiceFlagsRegistrationDomains\fR. The
53 \fBkDNSServiceFlagsBrowseDomains\fR value is passed to enumerate domains
54 recommended for browsing. The \fBkDNSServiceFlagsRegistrationDomains\fR value
55 is passed to enumerate domains recommended for registration. Possible values of
56 flags returned in the callback function are: \fBkDNSServiceFlagsMoreComing\fR,
57 \fBkDNSServiceFlagsAdd\fR, and \fBkDNSServiceFlagsDefault\fR.
58 .sp
59 .LP
60 The \fIinterfaceIndex\fR parameter to the enumeration call specifies the
61 interface index searched for domains. Most applications pass \fB0\fR to
62 enumerate domains on all interfaces. See the section "Constants for specifying
63 an interface index" in \fB<dns_sd.h>\fR for more details. The context parameter
64 can be \fINULL\fR and is passed to the enumeration callback function. The
65 \fIinterfaceIndex\fR value passed to the callback specifies the interface on
66 which the domain exists.
67 .SH RETURN VALUES
68 .sp
69 .LP
70 The \fBDNSServiceEnumerateDomains()\fR function returns
71 \fBkDNSServiceErr_NoError\fR on success. Otherwise, the function returns an
72 error code defined in \fB<dns_sd.h>\fR\&. The callback is not invoked on error
73 and the \fIDNSServiceRef\fR that is passed is not initialized. Upon a
74 successful call to \fBDNSServiceEnumerateDomains()\fR, subsequent asynchronous
75 errors are delivered to the callback.
76 .SH ATTRIBUTES
77 .sp
78 .LP
79 See \fBattributes\fR(5) for description of the following attributes:
80 .sp
82 .sp
83 .TS
84 box;
85 c | c
86 l | l .
87 ATTRIBUTE TYPE  ATTRIBUTE VALUE
89 Interface Stability     Committed
91 MT-Level        Safe
92 .TE
94 .SH SEE ALSO
95 .sp
96 .LP
97 \fBDNSServiceRefDeallocate\fR(3DNS_SD), \fBattributes\fR(5)