5
// Aaron Bockover <abockover@novell.com>
7
// Copyright (C) 2006-2007 Novell, Inc (http://www.novell.com)
9
// Permission is hereby granted, free of charge, to any person obtaining
10
// a copy of this software and associated documentation files (the
11
// "Software"), to deal in the Software without restriction, including
12
// without limitation the rights to use, copy, modify, merge, publish,
13
// distribute, sublicense, and/or sell copies of the Software, and to
14
// permit persons to whom the Software is furnished to do so, subject to
15
// the following conditions:
17
// The above copyright notice and this permission notice shall be
18
// included in all copies or substantial portions of the Software.
20
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
21
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
22
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
23
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
24
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
25
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
26
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
31
namespace Mono.Zeroconf.Providers.Bonjour
34
public enum ServiceFlags {
37
/* MoreComing indicates to a callback that at least one more result is
38
* queued and will be delivered following immediately after this one.
39
* Applications should not update their UI to display browse
40
* results when the MoreComing flag is set, because this would
41
* result in a great deal of ugly flickering on the screen.
42
* Applications should instead wait until until MoreComing is not set,
43
* and then update their UI.
44
* When MoreComing is not set, that doesn't mean there will be no more
45
* answers EVER, just that there are no more answers immediately
46
* available right now at this instant. If more answers become available
47
* in the future they will be delivered as usual.
52
/* Flags for domain enumeration and browse/query reply callbacks.
53
* "Default" applies only to enumeration and is only valid in
54
* conjuction with "Add". An enumeration callback with the "Add"
55
* flag NOT set indicates a "Remove", i.e. the domain is no longer
60
/* Flag for specifying renaming behavior on name conflict when registering
61
* non-shared records. By default, name conflicts are automatically handled
62
* by renaming the service. NoAutoRename overrides this behavior - with this
63
* flag set, name conflicts will result in a callback. The NoAutorename flag
64
* is only valid if a name is explicitly specified when registering a service
65
* (i.e. the default name is not used.)
70
/* Flag for registering individual records on a connected
71
* DNSServiceRef. Shared indicates that there may be multiple records
72
* with this name on the network (e.g. PTR records). Unique indicates that the
73
* record's name is to be unique on the network (e.g. SRV records).
77
RegistrationDomains = 0x80,
78
/* Flags for specifying domain enumeration type in DNSServiceEnumerateDomains.
79
* BrowseDomains enumerates domains recommended for browsing, RegistrationDomains
80
* enumerates domains recommended for registration.
83
LongLivedQuery = 0x100,
84
/* Flag for creating a long-lived unicast query for the DNSServiceQueryRecord call. */
86
AllowRemoteQuery = 0x200,
87
/* Flag for creating a record for which we will answer remote queries
88
* (queries from hosts more than one hop away; hosts not directly connected to the local link).
91
ForceMulticast = 0x400
92
/* Flag for signifying that a query or registration should be performed exclusively via multicast DNS,
93
* even for a name in a domain (e.g. foo.apple.com.) that would normally imply unicast DNS.