summaryrefslogtreecommitdiff
path: root/source4/librpc/idl/echo.idl
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2003-11-19 12:03:11 +0000
committerAndrew Tridgell <tridge@samba.org>2003-11-19 12:03:11 +0000
commit1941b5cef04c39ddf89fb236d1d81167c0b25e6b (patch)
tree04aec2a2e8fdcfd61ad0ff418287951ea098d31a /source4/librpc/idl/echo.idl
parent4e18040236c0f51a526383800fb1de8a65ab3175 (diff)
downloadsamba-1941b5cef04c39ddf89fb236d1d81167c0b25e6b.tar.gz
samba-1941b5cef04c39ddf89fb236d1d81167c0b25e6b.tar.bz2
samba-1941b5cef04c39ddf89fb236d1d81167c0b25e6b.zip
started to expand the echo tests to include more interesting test
cases. We fail one of the alignment tests. (This used to be commit 5bb21e57b844e98cc8f1dc264bc45097c08329e3)
Diffstat (limited to 'source4/librpc/idl/echo.idl')
-rw-r--r--source4/librpc/idl/echo.idl55
1 files changed, 53 insertions, 2 deletions
diff --git a/source4/librpc/idl/echo.idl b/source4/librpc/idl/echo.idl
index f68bcf38c3..2ef7026826 100644
--- a/source4/librpc/idl/echo.idl
+++ b/source4/librpc/idl/echo.idl
@@ -25,7 +25,58 @@ interface rpcecho
[out,ref,size_is(len)] uint8 *data
);
- void TestCall (
- [in] unistr *s
+
+ /* test strings */
+ void TestCall (
+ [in] unistr *s1,
+ [out] unistr *s2
+ );
+
+
+ /* test some alignment issues */
+ typedef struct {
+ uint8 v;
+ } echo_info1;
+
+ typedef struct {
+ uint16 v;
+ } echo_info2;
+
+ typedef struct {
+ uint32 v;
+ } echo_info3;
+
+ typedef struct {
+ HYPER_T v;
+ } echo_info4;
+
+ typedef struct {
+ uint8 v1;
+ HYPER_T v2;
+ } echo_info5;
+
+ typedef struct {
+ uint8 v1;
+ echo_info1 info1;
+ } echo_info6;
+
+ typedef struct {
+ uint8 v1;
+ echo_info4 info4;
+ } echo_info7;
+
+ typedef union {
+ [case(1)] echo_info1 info1;
+ [case(2)] echo_info2 info2;
+ [case(3)] echo_info3 info3;
+ [case(4)] echo_info4 info4;
+ [case(5)] echo_info5 info5;
+ [case(6)] echo_info6 info6;
+ [case(7)] echo_info7 info7;
+ } echo_Info;
+
+ NTSTATUS TestCall2 (
+ [in] uint16 level,
+ [out,switch_is(level)] echo_Info *info
);
}