1 --- a/source3/smbd/lanman.c
2 +++ b/source3/smbd/lanman.c
3 @@ -2197,6 +2197,10 @@ static bool api_RNetShareAdd(struct smbd
4 struct srvsvc_NetShareInfo2 info2;
5 struct dcerpc_binding_handle *b;
7 +#ifndef SRVSVC_SUPPORT
11 if (!str1 || !str2 || !p) {
14 @@ -3838,10 +3842,7 @@ static bool api_RNetServerGetInfo(struct
17 TALLOC_CTX *mem_ctx = talloc_tos();
18 - struct rpc_pipe_client *cli = NULL;
19 - union srvsvc_NetSrvInfo info;
21 - struct dcerpc_binding_handle *b;
23 if (!str1 || !str2 || !p) {
25 @@ -3904,66 +3905,16 @@ static bool api_RNetServerGetInfo(struct
29 - status = rpc_pipe_open_interface(mem_ctx, &ndr_table_srvsvc.syntax_id,
31 - &conn->sconn->client_id,
32 - conn->sconn->msg_ctx,
34 - if (!NT_STATUS_IS_OK(status)) {
35 - DEBUG(0,("api_RNetServerGetInfo: could not connect to srvsvc: %s\n",
36 - nt_errstr(status)));
37 - errcode = W_ERROR_V(ntstatus_to_werror(status));
41 - b = cli->binding_handle;
43 - status = dcerpc_srvsvc_NetSrvGetInfo(b, mem_ctx,
48 - if (!NT_STATUS_IS_OK(status)) {
49 - errcode = W_ERROR_V(ntstatus_to_werror(status));
52 - if (!W_ERROR_IS_OK(werr)) {
53 - errcode = W_ERROR_V(werr);
57 - if (info.info101 == NULL) {
58 - errcode = W_ERROR_V(WERR_INVALID_PARAM);
63 - srvstr_push(NULL, 0, p, info.info101->server_name, 16,
64 + srvstr_push(NULL, 0, p, global_myname(), 16,
65 STR_ASCII|STR_UPPER|STR_TERMINATE);
70 - SCVAL(p,0,info.info101->version_major);
71 - SCVAL(p,1,info.info101->version_minor);
72 - SIVAL(p,2,info.info101->server_type);
74 - if (mdrcnt == struct_len) {
77 - SIVAL(p,6,PTR_DIFF(p2,*rdata));
78 - if (mdrcnt - struct_len <= 0) {
82 - info.info101->comment,
83 - MIN(mdrcnt - struct_len,
84 - MAX_SERVER_STRING_LENGTH),
86 - p2 = skip_string(*rdata,*rdata_len,p2);
91 + SCVAL(p,0,lp_major_announce_version());
92 + SCVAL(p,1,lp_minor_announce_version());
93 + SIVAL(p,2,lp_default_server_announce());
98 @@ -5654,6 +5605,10 @@ static bool api_RNetSessionEnum(struct s
99 uint32_t totalentries, resume_handle = 0;
102 +#ifndef SRVSVC_SUPPORT
106 if (!str1 || !str2 || !p) {
109 --- a/source3/rpc_server/srvsvc/srv_srvsvc_nt.c
110 +++ b/source3/rpc_server/srvsvc/srv_srvsvc_nt.c
111 @@ -1533,6 +1533,10 @@ WERROR _srvsvc_NetShareSetInfo(struct pi
112 TALLOC_CTX *ctx = p->mem_ctx;
113 union srvsvc_NetShareInfo *info = r->in.info;
116 + return WERR_ACCESS_DENIED;
119 DEBUG(5,("_srvsvc_NetShareSetInfo: %d\n", __LINE__));
121 if (!r->in.share_name) {
122 @@ -1763,6 +1767,10 @@ WERROR _srvsvc_NetShareAdd(struct pipes_
123 int max_connections = 0;
124 TALLOC_CTX *ctx = p->mem_ctx;
127 + return WERR_ACCESS_DENIED;
130 DEBUG(5,("_srvsvc_NetShareAdd: %d\n", __LINE__));
132 if (r->out.parm_error) {
133 @@ -1945,6 +1953,10 @@ WERROR _srvsvc_NetShareDel(struct pipes_
134 struct share_params *params;
135 TALLOC_CTX *ctx = p->mem_ctx;
138 + return WERR_ACCESS_DENIED;
141 DEBUG(5,("_srvsvc_NetShareDel: %d\n", __LINE__));
143 if (!r->in.share_name) {