Author: jelmer
Date: 2006-03-11 23:20:37 +0000 (Sat, 11 Mar 2006)
New Revision: 14223

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

Log:
Couple of small fixes: 
 - properly support --samba3-header argument used alone
 - support `security_descriptor' data type
 - only print pidl warnings, not perl warnings on erratic input
 - insert copyright header in templates

Modified:
   branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Samba3/Header.pm
   branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Samba3/Template.pm
   branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Samba3/Types.pm
   branches/SAMBA_4_0/source/pidl/pidl


Changeset:
Modified: branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Samba3/Header.pm
===================================================================
--- branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Samba3/Header.pm      
2006-03-11 23:14:49 UTC (rev 14222)
+++ branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Samba3/Header.pm      
2006-03-11 23:20:37 UTC (rev 14223)
@@ -32,7 +32,8 @@
                        pidl "\tuint32 ptr$l->{POINTER_INDEX}_$e->{NAME};";
                } elsif ($l->{TYPE} eq "SWITCH") {
                } elsif ($l->{TYPE} eq "DATA") {
-                       pidl "\t" . DeclShort($e) . ";";
+                       my $n = DeclShort($e);
+                       pidl "\t$n;" if ($n);
                } elsif ($l->{TYPE} eq "ARRAY" and $l->{IS_ZERO_TERMINATED}) {
                        my ($t,$f) = StringType($e,$l);
                        pidl "\t" . uc($t) . " $e->{NAME};";

Modified: branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Samba3/Template.pm
===================================================================
--- branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Samba3/Template.pm    
2006-03-11 23:14:49 UTC (rev 14222)
+++ branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Samba3/Template.pm    
2006-03-11 23:20:37 UTC (rev 14223)
@@ -45,16 +45,32 @@
 
        $res = "";
 
-       pidl "/*";
-       pidl " * Unix SMB/CIFS implementation.";
-       pidl " * template auto-generated by pidl. Modify to your needs";
-       pidl " */";
-       pidl "";
-       pidl "#include \"includes.h\"";
-       pidl "";
-       pidl "#undef DBGC_CLASS";
-       pidl "#define DBGC_CLASS DBGC_MSRPC";
-       pidl "";
+       pidl "/* 
+ *  Unix SMB/CIFS implementation.
+ **** template auto-generated by pidl. Modify to your needs ****
+ *  RPC Pipe client / server routines
+ *  Copyright (C) YOUR NAME                          YEAR.
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *  
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *  
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+#include \"includes.h\"
+
+#undef DBGC_CLASS
+#define DBGC_CLASS DBGC_MSRPC
+";
        
        foreach (@$ndr) {
                ParseInterface($_) if ($_->{TYPE} eq "INTERFACE");

Modified: branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Samba3/Types.pm
===================================================================
--- branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Samba3/Types.pm       
2006-03-11 23:14:49 UTC (rev 14222)
+++ branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Samba3/Types.pm       
2006-03-11 23:20:37 UTC (rev 14223)
@@ -205,6 +205,15 @@
                        return "smb_io_pol_hnd(\"$e->{NAME}\", &n, ps, depth)";
                }
        },
+       security_descriptor => 
+       {
+               DECL => "SEC_DESC",
+               INIT => "",
+               DISSECT_P => sub {
+                       my ($e,$l,$n,$w,$a) = @_;
+                       return "sec_io_desc(\"$e->{NAME}\", &n, ps, depth)";
+               }
+       },
        hyper => 
        {
                DECL => "uint64",

Modified: branches/SAMBA_4_0/source/pidl/pidl
===================================================================
--- branches/SAMBA_4_0/source/pidl/pidl 2006-03-11 23:14:49 UTC (rev 14222)
+++ branches/SAMBA_4_0/source/pidl/pidl 2006-03-11 23:20:37 UTC (rev 14223)
@@ -648,7 +648,7 @@
            defined($opt_client) or defined($opt_server) or 
            defined($opt_ndr_parser) or defined($opt_ejs) or 
                defined($opt_dump_ndr_tree) or defined($opt_samba3_header) or 
-           defined($opt_samba3_header) or defined($opt_samba3_server) or 
+           defined($opt_samba3_parser) or defined($opt_samba3_server) or 
                defined($opt_samba3_template) or defined($opt_samba3_client)) {
                require Parse::Pidl::NDR;
                $ndr = Parse::Pidl::NDR::Parse($pidl);

Reply via email to