r9612: Don't generate handoff code for idl files that don't implement a pipe
authorTim Potter <tpot@samba.org>
Thu, 25 Aug 2005 11:39:23 +0000 (11:39 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 18:34:34 +0000 (13:34 -0500)
(e.g security.idl)

source/pidl/lib/Parse/Pidl/Ethereal/NDR.pm

index a4c6ecdba0a78a8ee7129d5e587fb5415175d408..016a95e01b6f637c6215a1121378d53f01cac3e5 100644 (file)
@@ -572,14 +572,17 @@ sub RegisterInterface($)
 sub RegisterInterfaceHandoff($)
 {
        my $x = shift;
-       pidl_code "void proto_reg_handoff_dcerpc_$x->{NAME}(void)";
-       pidl_code "{";
-       indent;
-       pidl_code "dcerpc_init_uuid(proto_dcerpc_$x->{NAME}, ett_dcerpc_$x->{NAME},";
-       pidl_code "\t&uuid_dcerpc_$x->{NAME}, ver_dcerpc_$x->{NAME},";
-       pidl_code "\t$x->{NAME}_dissectors, hf_$x->{NAME}_opnum);";
-       deindent;
-       pidl_code "}";
+
+       if (defined($x->{UUID})) {
+           pidl_code "void proto_reg_handoff_dcerpc_$x->{NAME}(void)";
+           pidl_code "{";
+           indent;
+           pidl_code "dcerpc_init_uuid(proto_dcerpc_$x->{NAME}, ett_dcerpc_$x->{NAME},";
+           pidl_code "\t&uuid_dcerpc_$x->{NAME}, ver_dcerpc_$x->{NAME},";
+           pidl_code "\t$x->{NAME}_dissectors, hf_$x->{NAME}_opnum);";
+           deindent;
+           pidl_code "}";
+       }
 }
 
 sub ProcessInterface($)