Author: tpot Date: 2005-01-03 00:26:50 +0000 (Mon, 03 Jan 2005) New Revision: 4495
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=4495 Log: Some more regexps for handling stuff in the lsa and samr pipes - various types of arrays and relative structures. 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-02 23:53:14 UTC (rev 4494) +++ branches/SAMBA_4_0/source/build/pidl/eparser.pm 2005-01-03 00:26:50 UTC (rev 4495) @@ -1224,13 +1224,17 @@ # caught by the regex for wrapping scalar values below (i.e # the leading space in front of the first parameter). - s/(ndr_pull_array_size\(ndr, ([^\)]*?)\);)/ndr_pull_array_size( ndr, tree, $2);/smg; + s/(ndr_pull_array_(size|length)\(ndr, ([^\)]*?)\);)/ndr_pull_array_$2( ndr, tree, $3);/smg; # Add tree argument to ndr_pull_array() s/(ndr_pull_array([^\(]*?)\(ndr, (NDR_[^,]*?), ([^\)].*?)\);)/ndr_pull_array$2( ndr, $3, tree, $4);/smg; + # Save ndr_pull_relative[12]() calls from being wrapped by the + # proceeding regexp. + s/ndr_pull_(relative1|relative2)\((.*?);/ndr_pull_$1( $2;/smg; + # Call ethereal wrappers for pull of scalar values in # structures and functions: # @@ -1257,6 +1261,10 @@ s/^((static )?NTSTATUS ndr_pull_([^\(]*?)\(struct ndr_pull \*ndr, int (ndr_)?flags)/$1, proto_tree \*tree/smg; + # Add proto_tree parameter to ndr_pull_subcontext_flags_fn() + + s/(ndr_pull_subcontext_flags_fn\(ndr)(.*?);/$1, tree$2;/smg; + # Get rid of ndr_pull_error() calls. Ethereal should take # care of buffer overruns and inconsistent array sizes for us. @@ -1270,6 +1278,11 @@ s/struct ndr_pull \*ndr/struct pidl_pull \*ndr/smg; + # Fix some internal variable declarations + + s/uint(16|32) _level/uint$1_t _level/smg; + s/ndr_pull_([^\(]*)\(ndr, tree, hf_level, &_level\);/ndr_pull_$1(ndr, tree, hf_level_$1, &_level);/smg; + pidl $_; }