2 Unix SMB/CIFS implementation.
4 endpoint server for the browser pipe
6 Copyright (C) Stefan Metzmacher 2008
8 This program is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 3 of the License, or
11 (at your option) any later version.
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with this program. If not, see <http://www.gnu.org/licenses/>.
23 #include "rpc_server/dcerpc_server.h"
24 #include "librpc/gen_ndr/ndr_browser.h"
30 static void dcesrv_BrowserrServerEnum(struct dcesrv_call_state
*dce_call
, TALLOC_CTX
*mem_ctx
,
31 struct BrowserrServerEnum
*r
)
33 DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR
);
40 static void dcesrv_BrowserrDebugCall(struct dcesrv_call_state
*dce_call
, TALLOC_CTX
*mem_ctx
,
41 struct BrowserrDebugCall
*r
)
43 DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR
);
48 BrowserrQueryOtherDomains
50 static WERROR
dcesrv_BrowserrQueryOtherDomains(struct dcesrv_call_state
*dce_call
, TALLOC_CTX
*mem_ctx
,
51 struct BrowserrQueryOtherDomains
*r
)
53 struct BrowserrSrvInfo100Ctr
*ctr100
;
55 switch (r
->in
.info
->level
) {
57 if (!r
->in
.info
->info
.info100
) {
58 return WERR_INVALID_PARAM
;
61 ctr100
= talloc(mem_ctx
, struct BrowserrSrvInfo100Ctr
);
62 W_ERROR_HAVE_NO_MEMORY(ctr100
);
64 ctr100
->entries_read
= 0;
65 ctr100
->entries
= talloc_zero_array(ctr100
, struct srvsvc_NetSrvInfo100
,
66 ctr100
->entries_read
);
67 W_ERROR_HAVE_NO_MEMORY(ctr100
->entries
);
69 r
->out
.info
->info
.info100
= ctr100
;
70 *r
->out
.total_entries
= ctr100
->entries_read
;
73 return WERR_UNKNOWN_LEVEL
;
79 BrowserrResetNetlogonState
81 static void dcesrv_BrowserrResetNetlogonState(struct dcesrv_call_state
*dce_call
, TALLOC_CTX
*mem_ctx
,
82 struct BrowserrResetNetlogonState
*r
)
84 DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR
);
91 static void dcesrv_BrowserrDebugTrace(struct dcesrv_call_state
*dce_call
, TALLOC_CTX
*mem_ctx
,
92 struct BrowserrDebugTrace
*r
)
94 DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR
);
99 BrowserrQueryStatistics
101 static void dcesrv_BrowserrQueryStatistics(struct dcesrv_call_state
*dce_call
, TALLOC_CTX
*mem_ctx
,
102 struct BrowserrQueryStatistics
*r
)
104 DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR
);
109 BrowserResetStatistics
111 static void dcesrv_BrowserResetStatistics(struct dcesrv_call_state
*dce_call
, TALLOC_CTX
*mem_ctx
,
112 struct BrowserResetStatistics
*r
)
114 DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR
);
119 NetrBrowserStatisticsClear
121 static void dcesrv_NetrBrowserStatisticsClear(struct dcesrv_call_state
*dce_call
, TALLOC_CTX
*mem_ctx
,
122 struct NetrBrowserStatisticsClear
*r
)
124 DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR
);
129 NetrBrowserStatisticsGet
131 static void dcesrv_NetrBrowserStatisticsGet(struct dcesrv_call_state
*dce_call
, TALLOC_CTX
*mem_ctx
,
132 struct NetrBrowserStatisticsGet
*r
)
134 DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR
);
139 BrowserrSetNetlogonState
141 static void dcesrv_BrowserrSetNetlogonState(struct dcesrv_call_state
*dce_call
, TALLOC_CTX
*mem_ctx
,
142 struct BrowserrSetNetlogonState
*r
)
144 DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR
);
149 BrowserrQueryEmulatedDomains
151 static void dcesrv_BrowserrQueryEmulatedDomains(struct dcesrv_call_state
*dce_call
, TALLOC_CTX
*mem_ctx
,
152 struct BrowserrQueryEmulatedDomains
*r
)
154 DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR
);
161 static void dcesrv_BrowserrServerEnumEx(struct dcesrv_call_state
*dce_call
, TALLOC_CTX
*mem_ctx
,
162 struct BrowserrServerEnumEx
*r
)
164 DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR
);
168 /* include the generated boilerplate */
169 #include "librpc/gen_ndr/ndr_browser_s.c"