diff options
Diffstat (limited to 'source4/build/pidl')
-rwxr-xr-x | source4/build/pidl/tests/ndr_refptr.pl | 17 | ||||
-rw-r--r-- | source4/build/pidl/validator.pm | 1 |
2 files changed, 18 insertions, 0 deletions
diff --git a/source4/build/pidl/tests/ndr_refptr.pl b/source4/build/pidl/tests/ndr_refptr.pl index 8654174bfe..e8d434756e 100755 --- a/source4/build/pidl/tests/ndr_refptr.pl +++ b/source4/build/pidl/tests/ndr_refptr.pl @@ -499,3 +499,20 @@ Test::test_idl("refptr-top-push-double-fstnull", \%settings, /* Windows gives [client runtime error 0x6f4] */ '); + +Test::test_idl("ignore-ptr", \%settings, +' + [public] void echo_TestRef([in,ignore] uint16 *foo, [in] uint16 *bar); +', +' struct ndr_push *ndr = ndr_push_init(); + struct echo_TestRef r; + uint16_t v = 10; + r.in.foo = &v; + r.in.bar = &v; + + if (NT_STATUS_IS_OK(ndr_push_echo_TestRef(ndr, NDR_IN, &r))) + return 1; + + if (ndr->offset != 4) + return 2; +'); diff --git a/source4/build/pidl/validator.pm b/source4/build/pidl/validator.pm index 6b35cc31a6..6bd31db621 100644 --- a/source4/build/pidl/validator.pm +++ b/source4/build/pidl/validator.pm @@ -89,6 +89,7 @@ my %property_list = ( "ref" => ["ELEMENT"], "ptr" => ["ELEMENT"], "unique" => ["ELEMENT"], + "ignore" => ["ELEMENT"], "relative" => ["ELEMENT"], "relative_base" => ["TYPEDEF"], |