svn commit: samba r4940 - in branches/SAMBA_4_0/source/build/pidl: .

tpot at samba.org tpot at samba.org
Sun Jan 23 11:03:20 GMT 2005


Author: tpot
Date: 2005-01-23 11:03:20 +0000 (Sun, 23 Jan 2005)
New Revision: 4940

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=4940

Log:
Add a variable to hold a list of typedefs for which we shouldn't generate
a dissector for.  A hand written dissector needs to be added to eparser.c
for the plugin to link.

Modified:
   branches/SAMBA_4_0/source/build/pidl/eparser.pm


Changeset:
Modified: branches/SAMBA_4_0/source/build/pidl/eparser.pm
===================================================================
--- branches/SAMBA_4_0/source/build/pidl/eparser.pm	2005-01-23 09:03:05 UTC (rev 4939)
+++ branches/SAMBA_4_0/source/build/pidl/eparser.pm	2005-01-23 11:03:20 UTC (rev 4940)
@@ -22,6 +22,13 @@
 }
 
 #####################################################################
+# a list of annotations 
+
+my $nopull_typedefs = {
+#    "policy_handle" => "1",
+};
+
+#####################################################################
 # work out is a parse function should be declared static or not
 sub fn_prefix($)
 {
@@ -462,7 +469,7 @@
 
     # Read through file
 
-    my $cur_fn;
+    my $cur_fn = "";
 
     while(<IN>) {
 
@@ -505,6 +512,18 @@
 
         $cur_fn = $1, if /NTSTATUS ndr_pull_(.*?)\(struct/;
 
+        # Skip functions we have marked as nopull
+
+        my $skip_fn = 0;
+
+        foreach my $f (keys(%{$nopull_typedefs})) {
+	    $skip_fn = 1, if $cur_fn eq $f;
+	}
+
+        $cur_fn = "", if /^}/;
+
+        next, if $skip_fn;
+
 	#
 	# OK start wrapping the ndr_pull functions that actually
 	# implement the NDR decoding routines.  This mainly consists



More information about the samba-cvs mailing list