From e5ed18db65f33ef0b0151fc34b02e049b14d1ecd Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Wed, 10 Dec 2003 23:49:55 +0000 Subject: more portable array of endpoints code from pidl (This used to be commit c598590a117d4281c530cded4bf9dae16ac1ee76) --- source4/build/pidl/parser.pm | 11 +++++++---- source4/librpc/rpc/dcerpc.h | 2 +- 2 files changed, 8 insertions(+), 5 deletions(-) (limited to 'source4') diff --git a/source4/build/pidl/parser.pm b/source4/build/pidl/parser.pm index 02fc40f33f..ee24e9d5ef 100644 --- a/source4/build/pidl/parser.pm +++ b/source4/build/pidl/parser.pm @@ -1311,15 +1311,18 @@ sub FunctionTable($) $if_endpoints = $interface->{NAME}; } - pidl "static const struct dcerpc_endpoint_list $interface->{NAME}\_endpoints = {\n"; my @e = split / /, $if_endpoints; my $endpoint_count = $#e + 1; - pidl "\t$endpoint_count,\n"; - pidl "\t{ "; + + pidl "static const char *$interface->{NAME}\_endpoint_strings[] = {\n\t"; for (my $i=0; $i < $#e; $i++) { pidl "\"$e[$i]\", "; } - pidl "\"$e[$#e]\" }\n"; + pidl "\"$e[$#e]\"\n"; + pidl "};\n\n"; + + pidl "static const struct dcerpc_endpoint_list $interface->{NAME}\_endpoints = {\n"; + pidl "\t$endpoint_count, $interface->{NAME}\_endpoint_strings\n"; pidl "};\n\n"; pidl "\nconst struct dcerpc_interface_table dcerpc_table_$interface->{NAME} = {\n"; diff --git a/source4/librpc/rpc/dcerpc.h b/source4/librpc/rpc/dcerpc.h index 7c6ab160f3..6b1bd9de33 100644 --- a/source4/librpc/rpc/dcerpc.h +++ b/source4/librpc/rpc/dcerpc.h @@ -78,7 +78,7 @@ struct dcerpc_interface_call { struct dcerpc_endpoint_list { uint32 count; - const char *names[]; + const char **names; }; struct dcerpc_interface_table { -- cgit