summaryrefslogtreecommitdiff
path: root/source3/rpc_server/srv_reg.c
diff options
context:
space:
mode:
authorJim McDonough <jmcd@samba.org>2003-02-14 00:48:28 +0000
committerJim McDonough <jmcd@samba.org>2003-02-14 00:48:28 +0000
commit49d3f7bc81d3ce96513128f3e504ae1228e53d68 (patch)
tree3dcf850272d78fef0d576a941bb0ac08d1ff5c01 /source3/rpc_server/srv_reg.c
parent3807a1dadf1905567d70a7dd2b6344b884cf0ef7 (diff)
downloadsamba-49d3f7bc81d3ce96513128f3e504ae1228e53d68.tar.gz
samba-49d3f7bc81d3ce96513128f3e504ae1228e53d68.tar.bz2
samba-49d3f7bc81d3ce96513128f3e504ae1228e53d68.zip
merge from HEAD - enable dynamic RPC modules
(This used to be commit d9c485b01017594d113502f9de2248d6c120cfa3)
Diffstat (limited to 'source3/rpc_server/srv_reg.c')
-rw-r--r--source3/rpc_server/srv_reg.c55
1 files changed, 28 insertions, 27 deletions
diff --git a/source3/rpc_server/srv_reg.c b/source3/rpc_server/srv_reg.c
index d0aaf0199b..04960f8e3a 100644
--- a/source3/rpc_server/srv_reg.c
+++ b/source3/rpc_server/srv_reg.c
@@ -3,10 +3,11 @@
* RPC Pipe client / server routines
* Copyright (C) Andrew Tridgell 1992-1997,
* Copyright (C) Luke Kenneth Casson Leighton 1996-1997,
- * Copyright (C) Paul Ashton 1997.
- * Copyright (C) Marc Jacobsen 2000.
- * Copyright (C) Jeremy Allison 2001.
- * Copyright (C) Gerald Carter 2002.
+ * Copyright (C) Paul Ashton 1997,
+ * Copyright (C) Marc Jacobsen 2000,
+ * Copyright (C) Jeremy Allison 2001,
+ * Copyright (C) Gerald Carter 2002,
+ * Copyright (C) Anthony Liguori 2003.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -371,29 +372,29 @@ static BOOL api_reg_save_key(pipes_struct *p)
/*******************************************************************
array of \PIPE\reg operations
********************************************************************/
-static struct api_struct api_reg_cmds[] =
-{
- { "REG_CLOSE" , REG_CLOSE , api_reg_close },
- { "REG_OPEN_ENTRY" , REG_OPEN_ENTRY , api_reg_open_entry },
- { "REG_OPEN_HKCR" , REG_OPEN_HKCR , api_reg_open_hkcr },
- { "REG_OPEN_HKLM" , REG_OPEN_HKLM , api_reg_open_hklm },
- { "REG_OPEN_HKU" , REG_OPEN_HKU , api_reg_open_hku },
- { "REG_ENUM_KEY" , REG_ENUM_KEY , api_reg_enum_key },
- { "REG_ENUM_VALUE" , REG_ENUM_VALUE , api_reg_enum_value },
- { "REG_QUERY_KEY" , REG_QUERY_KEY , api_reg_query_key },
- { "REG_INFO" , REG_INFO , api_reg_info },
- { "REG_SHUTDOWN" , REG_SHUTDOWN , api_reg_shutdown },
- { "REG_ABORT_SHUTDOWN" , REG_ABORT_SHUTDOWN , api_reg_abort_shutdown },
- { "REG_UNKNOWN_1A" , REG_UNKNOWN_1A , api_reg_unknown_1a },
- { "REG_SAVE_KEY" , REG_SAVE_KEY , api_reg_save_key },
- { NULL , 0 , NULL }
-};
-
-/*******************************************************************
- receives a reg pipe and responds.
- ********************************************************************/
-BOOL api_reg_rpc(pipes_struct *p)
+#ifdef RPC_REG_DYNAMIC
+int rpc_pipe_init(void)
+#else
+int rpc_reg_init(void)
+#endif
{
- return api_rpcTNP(p, "api_reg_rpc", api_reg_cmds);
+ static struct api_struct api_reg_cmds[] =
+ {
+ { "REG_CLOSE" , REG_CLOSE , api_reg_close },
+ { "REG_OPEN_ENTRY" , REG_OPEN_ENTRY , api_reg_open_entry },
+ { "REG_OPEN_HKCR" , REG_OPEN_HKCR , api_reg_open_hkcr },
+ { "REG_OPEN_HKLM" , REG_OPEN_HKLM , api_reg_open_hklm },
+ { "REG_OPEN_HKU" , REG_OPEN_HKU , api_reg_open_hku },
+ { "REG_ENUM_KEY" , REG_ENUM_KEY , api_reg_enum_key },
+ { "REG_ENUM_VALUE" , REG_ENUM_VALUE , api_reg_enum_value },
+ { "REG_QUERY_KEY" , REG_QUERY_KEY , api_reg_query_key },
+ { "REG_INFO" , REG_INFO , api_reg_info },
+ { "REG_SHUTDOWN" , REG_SHUTDOWN , api_reg_shutdown },
+ { "REG_ABORT_SHUTDOWN" , REG_ABORT_SHUTDOWN , api_reg_abort_shutdown },
+ { "REG_UNKNOWN_1A" , REG_UNKNOWN_1A , api_reg_unknown_1a },
+ { "REG_SAVE_KEY" , REG_SAVE_KEY , api_reg_save_key }
+ };
+ return rpc_pipe_register_commands("winreg", "winreg", api_reg_cmds,
+ sizeof(api_reg_cmds) / sizeof(struct api_struct));
}