pidl: align s4 dcesrv template generation with coding standards.
authorGünther Deschner <gd@samba.org>
Fri, 6 Mar 2015 19:02:44 +0000 (20:02 +0100)
committerGünther Deschner <gd@samba.org>
Fri, 13 Mar 2015 22:58:09 +0000 (23:58 +0100)
Guenther

Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
pidl/lib/Parse/Pidl/Samba4/Template.pm

index a35fc7d2eb0a9634a45fb68ed37ca8e963ac2239..e79af856919dce58f7186d69496a9a0b79c8ea31 100644 (file)
@@ -12,6 +12,15 @@ use strict;
 
 my($res);
 
+sub genpad($)
+{
+       my ($s) = @_;
+       my $nt = int((length($s)+1)/8);
+       my $lt = ($nt*8)-1;
+       my $ns = (length($s)-$lt);
+       return "\t"x($nt)." "x($ns);
+}
+
 #####################################################################
 # produce boilerplate code for a interface
 sub Template($)
@@ -20,24 +29,24 @@ sub Template($)
        my($data) = $interface->{DATA};
        my $name = $interface->{NAME};
 
-       $res .= 
-"/* 
+       $res .=
+"/*
    Unix SMB/CIFS implementation.
 
    endpoint server for the $name pipe
 
    Copyright (C) YOUR NAME HERE 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 3 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, see <http://www.gnu.org/licenses/>.
 */
@@ -52,13 +61,16 @@ sub Template($)
        foreach my $d (@{$data}) {
                if ($d->{TYPE} eq "FUNCTION") {
                        my $fname = $d->{NAME};
+                       my $pad = genpad("static $d->{RETURN_TYPE} dcesrv_$fname");
                        $res .=
 "
-/* 
-  $fname 
+/*
+  $fname
 */
-static $d->{RETURN_TYPE} dcesrv_$fname(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx,
-                      struct $fname *r)
+
+static $d->{RETURN_TYPE} dcesrv_$fname(struct dcesrv_call_state *dce_call,
+$pad"."TALLOC_CTX *mem_ctx,
+$pad"."struct $fname *r)
 {
 ";
 
@@ -74,7 +86,7 @@ static $d->{RETURN_TYPE} dcesrv_$fname(struct dcesrv_call_state *dce_call, TALLO
                }
        }
 
-       $res .= 
+       $res .=
 "
 /* include the generated boilerplate */
 #include \"librpc/gen_ndr/ndr_$name\_s.c\"
@@ -89,7 +101,7 @@ sub Parse($)
        my($idl) = shift;
        $res = "";
        foreach my $x (@{$idl}) {
-               ($x->{TYPE} eq "INTERFACE") && 
+               ($x->{TYPE} eq "INTERFACE") &&
                    Template($x);
        }
        return $res;