summaryrefslogtreecommitdiff
path: root/pidl/lib/Parse/Pidl/Samba3/ServerNDR.pm
diff options
context:
space:
mode:
Diffstat (limited to 'pidl/lib/Parse/Pidl/Samba3/ServerNDR.pm')
-rw-r--r--pidl/lib/Parse/Pidl/Samba3/ServerNDR.pm13
1 files changed, 7 insertions, 6 deletions
diff --git a/pidl/lib/Parse/Pidl/Samba3/ServerNDR.pm b/pidl/lib/Parse/Pidl/Samba3/ServerNDR.pm
index 23a8736efa..f4dbe18bc1 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\__ */";
}