Line data Source code
1 : /* 2 : Unix SMB/CIFS implementation. 3 : 4 : endpoint server for the browser pipe 5 : 6 : Copyright (C) Stefan Metzmacher 2008 7 : 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. 12 : 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. 17 : 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/>. 20 : */ 21 : 22 : #include "includes.h" 23 : #include "rpc_server/dcerpc_server.h" 24 : #include "librpc/gen_ndr/ndr_browser.h" 25 : 26 : 27 : /* 28 : BrowserrServerEnum 29 : */ 30 0 : static void dcesrv_BrowserrServerEnum(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx, 31 : struct BrowserrServerEnum *r) 32 : { 33 0 : DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR); 34 : } 35 : 36 : 37 : /* 38 : BrowserrDebugCall 39 : */ 40 0 : static void dcesrv_BrowserrDebugCall(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx, 41 : struct BrowserrDebugCall *r) 42 : { 43 0 : DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR); 44 : } 45 : 46 : 47 : /* 48 : BrowserrQueryOtherDomains 49 : */ 50 24 : static WERROR dcesrv_BrowserrQueryOtherDomains(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx, 51 : struct BrowserrQueryOtherDomains *r) 52 : { 53 0 : struct BrowserrSrvInfo100Ctr *ctr100; 54 : 55 24 : switch (r->in.info->level) { 56 9 : case 100: 57 9 : if (!r->in.info->info.info100) { 58 3 : return WERR_INVALID_PARAMETER; 59 : } 60 : 61 6 : ctr100 = talloc(mem_ctx, struct BrowserrSrvInfo100Ctr); 62 6 : W_ERROR_HAVE_NO_MEMORY(ctr100); 63 : 64 6 : ctr100->entries_read = 0; 65 6 : ctr100->entries = talloc_zero_array(ctr100, struct srvsvc_NetSrvInfo100, 66 : ctr100->entries_read); 67 6 : W_ERROR_HAVE_NO_MEMORY(ctr100->entries); 68 : 69 6 : r->out.info->info.info100 = ctr100; 70 6 : *r->out.total_entries = ctr100->entries_read; 71 6 : return WERR_OK; 72 15 : default: 73 15 : return WERR_INVALID_LEVEL; 74 : } 75 : } 76 : 77 : 78 : /* 79 : BrowserrResetNetlogonState 80 : */ 81 0 : static void dcesrv_BrowserrResetNetlogonState(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx, 82 : struct BrowserrResetNetlogonState *r) 83 : { 84 0 : DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR); 85 : } 86 : 87 : 88 : /* 89 : BrowserrDebugTrace 90 : */ 91 0 : static void dcesrv_BrowserrDebugTrace(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx, 92 : struct BrowserrDebugTrace *r) 93 : { 94 0 : DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR); 95 : } 96 : 97 : 98 : /* 99 : BrowserrQueryStatistics 100 : */ 101 0 : static void dcesrv_BrowserrQueryStatistics(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx, 102 : struct BrowserrQueryStatistics *r) 103 : { 104 0 : DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR); 105 : } 106 : 107 : 108 : /* 109 : BrowserResetStatistics 110 : */ 111 0 : static void dcesrv_BrowserResetStatistics(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx, 112 : struct BrowserResetStatistics *r) 113 : { 114 0 : DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR); 115 : } 116 : 117 : 118 : /* 119 : NetrBrowserStatisticsClear 120 : */ 121 0 : static void dcesrv_NetrBrowserStatisticsClear(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx, 122 : struct NetrBrowserStatisticsClear *r) 123 : { 124 0 : DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR); 125 : } 126 : 127 : 128 : /* 129 : NetrBrowserStatisticsGet 130 : */ 131 0 : static void dcesrv_NetrBrowserStatisticsGet(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx, 132 : struct NetrBrowserStatisticsGet *r) 133 : { 134 0 : DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR); 135 : } 136 : 137 : 138 : /* 139 : BrowserrSetNetlogonState 140 : */ 141 0 : static void dcesrv_BrowserrSetNetlogonState(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx, 142 : struct BrowserrSetNetlogonState *r) 143 : { 144 0 : DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR); 145 : } 146 : 147 : 148 : /* 149 : BrowserrQueryEmulatedDomains 150 : */ 151 0 : static void dcesrv_BrowserrQueryEmulatedDomains(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx, 152 : struct BrowserrQueryEmulatedDomains *r) 153 : { 154 0 : DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR); 155 : } 156 : 157 : 158 : /* 159 : BrowserrServerEnumEx 160 : */ 161 0 : static void dcesrv_BrowserrServerEnumEx(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx, 162 : struct BrowserrServerEnumEx *r) 163 : { 164 0 : DCESRV_FAULT_VOID(DCERPC_FAULT_OP_RNG_ERROR); 165 : } 166 : 167 : 168 : /* include the generated boilerplate */ 169 : #include "librpc/gen_ndr/ndr_browser_s.c"