diff options
Diffstat (limited to 'source4/build/pidl/Parse/Pidl/Ethereal/NDR/Header.pm')
-rw-r--r-- | source4/build/pidl/Parse/Pidl/Ethereal/NDR/Header.pm | 103 |
1 files changed, 0 insertions, 103 deletions
diff --git a/source4/build/pidl/Parse/Pidl/Ethereal/NDR/Header.pm b/source4/build/pidl/Parse/Pidl/Ethereal/NDR/Header.pm deleted file mode 100644 index 6fcf949811..0000000000 --- a/source4/build/pidl/Parse/Pidl/Ethereal/NDR/Header.pm +++ /dev/null @@ -1,103 +0,0 @@ -################################################### -# create C header files for an IDL structure -# Copyright tridge@samba.org 2000 -# Copyright jelmer@samba.org 2005 -# released under the GNU GPL - -package Parse::Pidl::Ethereal::NDR::Header; - -use strict; - -use Parse::Pidl::Util qw(has_property); - -my($res); -my($tab_depth); - -sub pidl ($) -{ - $res .= shift; -} - -sub tabs() -{ - for (my($i)=0; $i < $tab_depth; $i++) { - pidl "\t"; - } -} - -##################################################################### -# prototype a typedef -sub HeaderTypedefProto($) -{ - my($d) = shift; - - my $tf = Parse::Pidl::Ethereal::NDR::Parser::get_typefamily($d->{DATA}{TYPE}); - - return unless has_property($d, "public"); - - unless (has_property($d, "nopull")) { - pidl "dcerpc_dissect_fnct_t $d->{NAME};\n"; - } -} - -##################################################################### -# parse a const -sub HeaderConst($) -{ - my($const) = shift; - if (!defined($const->{ARRAY_LEN}[0])) { - pidl "#define $const->{NAME}\t( $const->{VALUE} )\n"; - } else { - pidl "#define $const->{NAME}\t $const->{VALUE}\n"; - } -} - -my %headerstructs = (); - -##################################################################### -# parse the interface definitions -sub HeaderInterface($) -{ - my($interface) = shift; - - my $count = 0; - - pidl "#ifndef _HEADER_NDR_$interface->{NAME}\n"; - pidl "#define _HEADER_NDR_$interface->{NAME}\n\n"; - - if (defined $interface->{PROPERTIES}->{depends}) { - my @d = split / /, $interface->{PROPERTIES}->{depends}; - foreach my $i (@d) { - pidl "#include \"packet-dcerpc-$i\.h\"\n"; - } - } - - foreach my $d (@{$interface->{CONSTS}}) { - HeaderConst($d); - } - - foreach my $d (@{$interface->{TYPEDEFS}}) { - HeaderTypedefProto($d); - } - - pidl "#endif /* _HEADER_NDR_$interface->{NAME} */\n"; -} - -##################################################################### -# parse a parsed IDL into a C header -sub Parse($) -{ - my($idl) = shift; - $tab_depth = 0; - - $res = ""; - pidl "/* header auto-generated by pidl */\n\n"; - foreach my $x (@{$idl}) { - if ($x->{TYPE} eq "INTERFACE") { - HeaderInterface($x); - } - } - return $res; -} - -1; |