Libinfo-129.tar.gz
[apple/libinfo.git] / mdns.subproj / DNSServiceDiscoveryRequest.defs
1 /*
2  * Copyright (c) 2002 Apple Computer, Inc. All rights reserved.
3  *
4  * @APPLE_LICENSE_HEADER_START@
5  *
6  * The contents of this file constitute Original Code as defined in and
7  * are subject to the Apple Public Source License Version 1.1 (the
8  * "License").  You may not use this file except in compliance with the
9  * License.  Please obtain a copy of the License at
10  * http://www.apple.com/publicsource and read it before using this file.
11  *
12  * This Original Code and all software distributed under the License are
13  * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
14  * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
15  * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
16  * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT.  Please see the
17  * License for the specific language governing rights and limitations
18  * under the License.
19  *
20  * @APPLE_LICENSE_HEADER_END@
21  */
22
23 subsystem
24         DNSServiceDiscoveryRequest 7200;
25
26 ServerPrefix provide_;
27
28 #include <mach/std_types.defs>
29 #include <mach/mach_types.defs>
30
31 import "DNSServiceDiscoveryDefines.h";
32
33 type DNSCString = c_string[*:1024];
34 type record_data = ^ array [] of MACH_MSG_TYPE_BYTE
35                                 ctype: record_data_t;
36
37 simpleroutine DNSServiceBrowserCreate_rpc(
38                                 server: mach_port_t;
39                         in      client: mach_port_t;
40                                                 in      regtype: DNSCString;
41                                                 in      domain: DNSCString);
42                                                 
43
44 simpleroutine DNSServiceDomainEnumerationCreate_rpc(
45                                 server: mach_port_t;
46                         in      client: mach_port_t;
47                                                 in      registrationDomains: int);
48
49 simpleroutine DNSServiceRegistrationCreate_rpc(
50                                 server: mach_port_t;
51                         in      client: mach_port_t;
52                         in      name: DNSCString;
53                         in      regtype: DNSCString;
54                         in      domain: DNSCString;
55                         in      port: int;
56                         in      txtRecord: DNSCString);
57
58                         
59 simpleroutine DNSServiceResolverResolve_rpc(
60                                 server: mach_port_t;
61                         in      client: mach_port_t;
62                         in      name: DNSCString;
63                         in      regtype: DNSCString;
64                         in      domain: DNSCString);
65
66 routine DNSServiceRegistrationAddRecord_rpc(
67                                 server: mach_port_t;
68                                                 in client: mach_port_t;
69                                                 in record_type: int;
70                                                 in record_data: record_data;
71                                                 in ttl: uint32_t;
72                                                 out record_reference: natural_t);
73
74 simpleroutine DNSServiceRegistrationUpdateRecord_rpc(
75                                 server: mach_port_t;
76                                                 in client: mach_port_t;
77                                                 in record_reference: natural_t;
78                                                 in record_data: record_data;
79                                                 in ttl: uint32_t);
80
81 simpleroutine DNSServiceRegistrationRemoveRecord_rpc(
82                                 server: mach_port_t;
83                                                 in client: mach_port_t;
84                                                 in record_reference: natural_t);
85