s3-rpc_server: Add rpc_spoolss_mode().
authorAndreas Schneider <asn@samba.org>
Fri, 29 Jul 2011 15:46:21 +0000 (17:46 +0200)
committerAndreas Schneider <asn@samba.org>
Mon, 1 Aug 2011 09:08:37 +0000 (11:08 +0200)
source3/rpc_server/rpc_service_setup.c
source3/rpc_server/rpc_service_setup.h

index dec39ee08a2a6044e5d211cae6003297d29c86e3..776c707ccea97a7425b7ff80850be176d2cfab02 100644 (file)
@@ -73,6 +73,29 @@ enum rpc_service_mode_e rpc_epmapper_mode(void)
        return state;
 }
 
+enum rpc_service_mode_e rpc_spoolss_mode(void)
+{
+       const char *rpcsrv_type;
+       enum rpc_service_mode_e state;
+
+       rpcsrv_type = lp_parm_const_string(GLOBAL_SECTION_SNUM,
+                                          "rpc_server",
+                                          "spoolss",
+                                          "embedded");
+
+       if (strcasecmp_m(rpcsrv_type, "embedded") == 0) {
+               state = RPC_SERVICE_MODE_EMBEDDED;
+       } else if (strcasecmp_m(rpcsrv_type, "external") == 0) {
+               state = RPC_SERVICE_MODE_EXTERNAL;
+       } else if (strcasecmp_m(rpcsrv_type, "daemon") == 0) {
+               state = RPC_SERVICE_MODE_DAEMON;
+       } else {
+               state = RPC_SERVICE_MODE_DISABLED;
+       }
+
+       return state;
+}
+
 static bool rpc_setup_epmapper(struct tevent_context *ev_ctx,
                               struct messaging_context *msg_ctx)
 {
index e568b1fc064dee7942e9f372735605d00091c863..d369b829f5639bd120c1a8388c10aa70fc5ab540 100644 (file)
@@ -38,6 +38,13 @@ enum rpc_service_mode_e {
  */
 enum rpc_service_mode_e rpc_epmapper_mode(void);
 
+/**
+ * @brief Get the mode in which epmapper is started.
+ *
+ * @return The mode.
+ */
+enum rpc_service_mode_e rpc_spoolss_mode(void);
+
 /**
  * @brief Register an endpoint at the endpoint mapper.
  *