[SCM] Samba Shared Repository - branch master updated
Günther Deschner
gd at samba.org
Tue May 18 09:20:01 MDT 2010
The branch, master has been updated
via 864a95f... s3:winbind use no_srv_register to avoid needing rpc_srv_register
via f5f184a... pidl: Allow new property 'no_srv_register'.
from 0953087... s3-spoolss: Added EN ISO 216, A0 and A1 to builtin forms.
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit 864a95fd9c2dc74f2612478e7b7784c9abc37257
Author: Andrew Bartlett <abartlet at samba.org>
Date: Thu May 13 07:57:27 2010 +1000
s3:winbind use no_srv_register to avoid needing rpc_srv_register
This pidl attribute avoids the need for this dummy function, which
helps s3compat.
Andrew Bartlett
Signed-off-by: Günther Deschner <gd at samba.org>
commit f5f184a77cfe83498d6e55f10fdf79ca37229696
Author: Andrew Bartlett <abartlet at samba.org>
Date: Thu May 13 07:53:07 2010 +1000
pidl: Allow new property 'no_srv_register'.
This Samba-only property prevents pild from emitting the
rpc_wbint_init function, which causes problems because it needs
rpc_srv_register().
Andrew Bartlett
Signed-off-by: Günther Deschner <gd at samba.org>
-----------------------------------------------------------------------
Summary of changes:
pidl/lib/Parse/Pidl/Compat.pm | 1 +
pidl/lib/Parse/Pidl/NDR.pm | 3 ++-
pidl/lib/Parse/Pidl/Samba3/ServerNDR.pm | 13 +++++++------
source3/librpc/idl/wbint.idl | 3 ++-
source3/winbindd/winbindd_dual_ndr.c | 10 ----------
5 files changed, 12 insertions(+), 18 deletions(-)
Changeset truncated at 500 lines:
diff --git a/pidl/lib/Parse/Pidl/Compat.pm b/pidl/lib/Parse/Pidl/Compat.pm
index 66f3c5f..b8abcb8 100644
--- a/pidl/lib/Parse/Pidl/Compat.pm
+++ b/pidl/lib/Parse/Pidl/Compat.pm
@@ -19,6 +19,7 @@ my %supported_properties = (
"uuid" => ["INTERFACE"],
"endpoint" => ["INTERFACE"],
"pointer_default" => ["INTERFACE"],
+ "no_srv_register" => ["INTERFACE"],
# dcom
"object" => ["INTERFACE"],
diff --git a/pidl/lib/Parse/Pidl/NDR.pm b/pidl/lib/Parse/Pidl/NDR.pm
index 3d91f3a..a875ec8 100644
--- a/pidl/lib/Parse/Pidl/NDR.pm
+++ b/pidl/lib/Parse/Pidl/NDR.pm
@@ -882,7 +882,8 @@ my %property_list = (
"helper" => ["INTERFACE"],
"pyhelper" => ["INTERFACE"],
"authservice" => ["INTERFACE"],
- "restricted" => ["INTERFACE"],
+ "restricted" => ["INTERFACE"],
+ "no_srv_register" => ["INTERFACE"],
# dcom
"object" => ["INTERFACE"],
diff --git a/pidl/lib/Parse/Pidl/Samba3/ServerNDR.pm b/pidl/lib/Parse/Pidl/Samba3/ServerNDR.pm
index 23a8736..f4dbe18 100644
--- a/pidl/lib/Parse/Pidl/Samba3/ServerNDR.pm
+++ b/pidl/lib/Parse/Pidl/Samba3/ServerNDR.pm
@@ -313,12 +313,13 @@ sub ParseInterface($)
ParseDispatchFunction($if);
- pidl_hdr "NTSTATUS rpc_$if->{NAME}_init(void);";
- pidl "NTSTATUS rpc_$if->{NAME}_init(void)";
- pidl "{";
- pidl "\treturn rpc_srv_register(SMB_RPC_INTERFACE_VERSION, \"$if->{NAME}\", \"$if->{NAME}\", \&ndr_table_$if->{NAME}, api_$if->{NAME}_cmds, sizeof(api_$if->{NAME}_cmds) / sizeof(struct api_struct));";
- pidl "}";
-
+ if (not has_property($if, "no_srv_register")) {
+ pidl_hdr "NTSTATUS rpc_$if->{NAME}_init(void);";
+ pidl "NTSTATUS rpc_$if->{NAME}_init(void)";
+ pidl "{";
+ pidl "\treturn rpc_srv_register(SMB_RPC_INTERFACE_VERSION, \"$if->{NAME}\", \"$if->{NAME}\", \&ndr_table_$if->{NAME}, api_$if->{NAME}_cmds, sizeof(api_$if->{NAME}_cmds) / sizeof(struct api_struct));";
+ pidl "}";
+ }
pidl_hdr "#endif /* __SRV_$uif\__ */";
}
diff --git a/source3/librpc/idl/wbint.idl b/source3/librpc/idl/wbint.idl
index 432d59e..2fd3e88 100644
--- a/source3/librpc/idl/wbint.idl
+++ b/source3/librpc/idl/wbint.idl
@@ -6,7 +6,8 @@ import "lsa.idl", "netlogon.idl";
endpoint("ncalrpc:"),
pointer_default(unique),
version(1.0),
- helpstring("winbind parent-child protocol")
+ helpstring("winbind parent-child protocol"),
+ no_srv_register
]
interface wbint
{
diff --git a/source3/winbindd/winbindd_dual_ndr.c b/source3/winbindd/winbindd_dual_ndr.c
index bc85d53..e100405 100644
--- a/source3/winbindd/winbindd_dual_ndr.c
+++ b/source3/winbindd/winbindd_dual_ndr.c
@@ -284,13 +284,3 @@ enum winbindd_result winbindd_dual_ndrcmd(struct winbindd_domain *domain,
}
return WINBINDD_OK;
}
-
-/*
- * Just a dummy to make srv_wbint.c happy
- */
-NTSTATUS rpc_srv_register(int version, const char *clnt, const char *srv,
- const struct ndr_interface_table *iface,
- const struct api_struct *cmds, int size)
-{
- return NT_STATUS_OK;
-}
--
Samba Shared Repository
More information about the samba-cvs
mailing list