diff --git a/source4/aclocal.m4 b/source4/aclocal.m4 index aed8dcc4af7..9a044950d3f 100644 --- a/source4/aclocal.m4 +++ b/source4/aclocal.m4 @@ -289,5 +289,5 @@ if test "$2" != "/usr/lib" ; then fi ]) -sinclude(build/smb_build/public.m4) -sinclude(build/smb_build/core.m4) +sinclude(build/m4/public.m4) +sinclude(build/m4/core.m4) diff --git a/source4/build/smb_build/check_cc.m4 b/source4/build/m4/check_cc.m4 similarity index 100% rename from source4/build/smb_build/check_cc.m4 rename to source4/build/m4/check_cc.m4 diff --git a/source4/build/smb_build/check_ld.m4 b/source4/build/m4/check_ld.m4 similarity index 100% rename from source4/build/smb_build/check_ld.m4 rename to source4/build/m4/check_ld.m4 diff --git a/source4/build/smb_build/check_path.m4 b/source4/build/m4/check_path.m4 similarity index 100% rename from source4/build/smb_build/check_path.m4 rename to source4/build/m4/check_path.m4 diff --git a/source4/build/smb_build/check_perl.m4 b/source4/build/m4/check_perl.m4 similarity index 100% rename from source4/build/smb_build/check_perl.m4 rename to source4/build/m4/check_perl.m4 diff --git a/source4/build/smb_build/check_shld.m4 b/source4/build/m4/check_shld.m4 similarity index 100% rename from source4/build/smb_build/check_shld.m4 rename to source4/build/m4/check_shld.m4 diff --git a/source4/build/smb_build/check_types.m4 b/source4/build/m4/check_types.m4 similarity index 100% rename from source4/build/smb_build/check_types.m4 rename to source4/build/m4/check_types.m4 diff --git a/source4/build/smb_build/core.m4 b/source4/build/m4/core.m4 similarity index 100% rename from source4/build/smb_build/core.m4 rename to source4/build/m4/core.m4 diff --git a/source4/build/smb_build/env.m4 b/source4/build/m4/env.m4 similarity index 72% rename from source4/build/smb_build/env.m4 rename to source4/build/m4/env.m4 index 87316d3d302..c272247661f 100644 --- a/source4/build/smb_build/env.m4 +++ b/source4/build/m4/env.m4 @@ -15,9 +15,9 @@ fi SMB_INFO_BUILD_ENV="" -sinclude(build/smb_build/check_path.m4) -sinclude(build/smb_build/check_perl.m4) -sinclude(build/smb_build/check_cc.m4) -sinclude(build/smb_build/check_ld.m4) -sinclude(build/smb_build/check_shld.m4) -sinclude(build/smb_build/check_types.m4) +sinclude(build/m4/check_path.m4) +sinclude(build/m4/check_perl.m4) +sinclude(build/m4/check_cc.m4) +sinclude(build/m4/check_ld.m4) +sinclude(build/m4/check_shld.m4) +sinclude(build/m4/check_types.m4) diff --git a/source4/build/smb_build/public.m4 b/source4/build/m4/public.m4 similarity index 100% rename from source4/build/smb_build/public.m4 rename to source4/build/m4/public.m4 diff --git a/source4/build/pidl/tests/ndr_refptr.pl b/source4/build/pidl/tests/ndr_refptr.pl index 8654174bfe8..e8d434756ee 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 6b35cc31a61..6bd31db621d 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"], diff --git a/source4/build/smb_build/README.txt b/source4/build/smb_build/README.txt index 0e127882d64..44aeffdad25 100644 --- a/source4/build/smb_build/README.txt +++ b/source4/build/smb_build/README.txt @@ -31,7 +31,7 @@ BINARY: (e.g. 'smbtorture' or 'ldbedit') a BINARY typicly has only commandline handling and basic functionality code in it and depends on the functions of - SUBSYSTEM's (required_subsystems/REQUIRED_SUBSYSTEMS). + SUBSYSTEM's (REQUIRED_SUBSYSTEMS). LIBRARY: a LIBRARY means a static and/or shared library, @@ -39,7 +39,7 @@ LIBRARY: (e.g. for libldb 'libldb.so', 'libldb.so.0' 'libldb.so.0.0.1' and libldb.a are created on linux) a LIBRARY typicly has only glue code in it and depends on - SUBSYSTEM's (required_subsystems/REQUIRED_SUBSYSTEMS). + SUBSYSTEM's (REQUIRED_SUBSYSTEMS). File summary: ------------- diff --git a/source4/configure.in b/source4/configure.in index fb5ed5c3578..43b508d9796 100644 --- a/source4/configure.in +++ b/source4/configure.in @@ -7,8 +7,7 @@ dnl AC_PREREQ(2.53) AC_INIT(include/includes.h) AC_CONFIG_HEADER(include/config.h) -sinclude(build/smb_build/env.m4) - +SMB_INCLUDE_M4(build/m4/env.m4) SMB_INCLUDE_M4(build/m4/rewrite.m4) SMB_INCLUDE_M4(lib/popt/config.m4) diff --git a/source4/librpc/config.mk b/source4/librpc/config.mk index 6d3cfcb8ebb..486c94c86e6 100644 --- a/source4/librpc/config.mk +++ b/source4/librpc/config.mk @@ -539,5 +539,6 @@ NOPROTO = YES # Start SUBSYSTEM RPC [SUBSYSTEM::RPC] REQUIRED_SUBSYSTEMS = NDR_RAW RPC_RAW LIBSMB NDR_MISC NDR_DCERPC NDR_SCHANNEL NDR_LSA NDR_NETLOGON NDR_SAMR NDR_UNIXINFO RPC_NDR_NETLOGON RPC_NDR_EPMAPPER +OUTPUT_TYPE = SHARED_LIBRARY # End SUBSYSTEM RPC ################################################