s3-rpc_server: Only allow embedded, daemon and external server type.
authorAndreas Schneider <asn@samba.org>
Tue, 29 Mar 2011 08:58:05 +0000 (10:58 +0200)
committerGünther Deschner <gd@samba.org>
Tue, 29 Mar 2011 14:03:53 +0000 (16:03 +0200)
Signed-off-by: Günther Deschner <gd@samba.org>
source3/rpc_server/rpc_ncacn_np.c

index 41985e4ee07e5824ca3169f6c691d8d41496d0f4..e59280595719b24e1be2dba759fc8d0a7fb82863 100644 (file)
@@ -875,7 +875,8 @@ NTSTATUS rpc_pipe_open_interface(TALLOC_CTX *mem_ctx,
                if (!NT_STATUS_IS_OK(status)) {
                        goto done;
                }
-       } else {
+       } else if (StrCaseCmp(server_type, "daemon") == 0 ||
+                  StrCaseCmp(server_type, "external") == 0) {
                /* It would be nice to just use rpc_pipe_open_ncalrpc() but
                 * for now we need to use the special proxy setup to connect
                 * to spoolssd. */
@@ -887,7 +888,12 @@ NTSTATUS rpc_pipe_open_interface(TALLOC_CTX *mem_ctx,
                if (!NT_STATUS_IS_OK(status)) {
                        goto done;
                }
-       }
+       } else {
+               status = NT_STATUS_NOT_IMPLEMENTED;
+               DEBUG(0, ("Wrong servertype specified in config file: %s",
+                         nt_errstr(status)));
+               goto done;
+        }
 
        status = NT_STATUS_OK;
 done: