~zulcss/samba/server-dailies-3.4

« back to all changes in this revision

Viewing changes to source4/rpc_server/browser/dcesrv_browser.c

  • Committer: Chuck Short
  • Date: 2010-09-28 20:38:39 UTC
  • Revision ID: zulcss@ubuntu.com-20100928203839-pgjulytsi9ue63x1
Initial version

Show diffs side-by-side

added added

removed removed

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