2006-09-16 02:49:27 +04:00
/* header auto-generated by pidl */
2007-02-16 17:50:57 +03:00
# include <stdint.h>
2009-02-25 17:22:08 +03:00
# include "libcli/util/ntstatus.h"
2006-09-16 02:49:27 +04:00
# ifndef _HEADER_rpcecho
# define _HEADER_rpcecho
struct echo_info1 {
2006-09-20 02:22:57 +04:00
uint8_t v ;
2008-09-17 17:07:24 +04:00
} /* [public] */ ;
2006-09-16 02:49:27 +04:00
struct echo_info2 {
2006-09-20 02:22:57 +04:00
uint16_t v ;
2006-09-16 02:49:27 +04:00
} ;
struct echo_info3 {
2006-09-20 02:22:57 +04:00
uint32_t v ;
2006-09-16 02:49:27 +04:00
} ;
struct echo_info4 {
2006-09-20 02:22:57 +04:00
uint64_t v ;
2006-09-16 02:49:27 +04:00
} ;
struct echo_info5 {
2006-09-20 02:22:57 +04:00
uint8_t v1 ;
uint64_t v2 ;
2006-09-16 02:49:27 +04:00
} ;
struct echo_info6 {
2006-09-20 02:22:57 +04:00
uint8_t v1 ;
struct echo_info1 info1 ;
2006-09-16 02:49:27 +04:00
} ;
struct echo_info7 {
2006-09-20 02:22:57 +04:00
uint8_t v1 ;
struct echo_info4 info4 ;
2006-09-16 02:49:27 +04:00
} ;
union echo_Info {
2006-09-20 02:22:57 +04:00
struct echo_info1 info1 ; /* [case] */
struct echo_info2 info2 ; /* [case(2)] */
struct echo_info3 info3 ; /* [case(3)] */
struct echo_info4 info4 ; /* [case(4)] */
struct echo_info5 info5 ; /* [case(5)] */
struct echo_info6 info6 ; /* [case(6)] */
struct echo_info7 info7 ; /* [case(7)] */
2006-09-16 02:49:27 +04:00
} /* [switch_type(uint16)] */ ;
2008-01-13 03:22:23 +03:00
enum echo_Enum1
2007-02-07 02:02:27 +03:00
# ifndef USE_UINT_ENUMS
2008-01-13 03:22:23 +03:00
{
2009-09-17 22:28:37 +04:00
ECHO_ENUM1 = ( int ) ( 1 ) ,
ECHO_ENUM2 = ( int ) ( 2 )
2007-02-27 20:17:16 +03:00
}
2007-02-07 02:02:27 +03:00
# else
2008-01-13 03:22:23 +03:00
{ __donnot_use_enum_echo_Enum1 = 0x7FFFFFFF }
2007-02-07 02:02:27 +03:00
# define ECHO_ENUM1 ( 1 )
# define ECHO_ENUM2 ( 2 )
# endif
2007-02-27 20:17:16 +03:00
;
2006-09-16 02:49:27 +04:00
2008-01-13 03:22:23 +03:00
enum echo_Enum1_32
2007-02-07 02:02:27 +03:00
# ifndef USE_UINT_ENUMS
2008-01-13 03:22:23 +03:00
{
2009-09-17 22:28:37 +04:00
ECHO_ENUM1_32 = ( int ) ( 1 ) ,
ECHO_ENUM2_32 = ( int ) ( 2 )
2007-02-27 20:17:16 +03:00
}
2007-02-07 02:02:27 +03:00
# else
2008-01-13 03:22:23 +03:00
{ __donnot_use_enum_echo_Enum1_32 = 0x7FFFFFFF }
2007-02-07 02:02:27 +03:00
# define ECHO_ENUM1_32 ( 1 )
# define ECHO_ENUM2_32 ( 2 )
# endif
2007-02-27 20:17:16 +03:00
;
2006-09-16 02:49:27 +04:00
struct echo_Enum2 {
2006-09-20 02:22:57 +04:00
enum echo_Enum1 e1 ;
enum echo_Enum1_32 e2 ;
2006-09-16 02:49:27 +04:00
} ;
union echo_Enum3 {
2006-09-20 02:22:57 +04:00
enum echo_Enum1 e1 ; /* [case(ECHO_ENUM1)] */
struct echo_Enum2 e2 ; /* [case(ECHO_ENUM2)] */
2006-09-16 02:49:27 +04:00
} /* [switch_type(uint16)] */ ;
struct echo_Surrounding {
2006-09-20 02:22:57 +04:00
uint32_t x ;
uint16_t * surrounding ; /* [size_is(x)] */
2006-09-16 02:49:27 +04:00
} ;
struct echo_AddOne {
struct {
2006-09-20 02:22:57 +04:00
uint32_t in_data ;
2006-09-16 02:49:27 +04:00
} in ;
struct {
2006-09-20 02:22:57 +04:00
uint32_t * out_data ; /* [ref] */
2006-09-16 02:49:27 +04:00
} out ;
} ;
struct echo_EchoData {
struct {
2006-09-20 02:22:57 +04:00
uint32_t len ;
uint8_t * in_data ; /* [size_is(len)] */
2006-09-16 02:49:27 +04:00
} in ;
struct {
2006-09-20 02:22:57 +04:00
uint8_t * out_data ; /* [size_is(len)] */
2006-09-16 02:49:27 +04:00
} out ;
} ;
struct echo_SinkData {
struct {
2006-09-20 02:22:57 +04:00
uint32_t len ;
uint8_t * data ; /* [size_is(len)] */
2006-09-16 02:49:27 +04:00
} in ;
} ;
struct echo_SourceData {
struct {
2006-09-20 02:22:57 +04:00
uint32_t len ;
2006-09-16 02:49:27 +04:00
} in ;
struct {
2006-09-20 02:22:57 +04:00
uint8_t * data ; /* [size_is(len)] */
2006-09-16 02:49:27 +04:00
} out ;
} ;
struct echo_TestCall {
struct {
2006-09-20 02:22:57 +04:00
const char * s1 ; /* [ref,charset(UTF16)] */
2006-09-16 02:49:27 +04:00
} in ;
struct {
2006-09-20 02:22:57 +04:00
const char * * s2 ; /* [ref,charset(UTF16)] */
2006-09-16 02:49:27 +04:00
} out ;
} ;
struct echo_TestCall2 {
struct {
2006-09-20 02:22:57 +04:00
uint16_t level ;
2006-09-16 02:49:27 +04:00
} in ;
struct {
2006-09-20 02:22:57 +04:00
union echo_Info * info ; /* [ref,switch_is(level)] */
2006-09-16 02:49:27 +04:00
NTSTATUS result ;
} out ;
} ;
struct echo_TestSleep {
struct {
2006-09-20 02:22:57 +04:00
uint32_t seconds ;
2006-09-16 02:49:27 +04:00
} in ;
struct {
uint32_t result ;
} out ;
} ;
struct echo_TestEnum {
struct {
2006-09-20 02:22:57 +04:00
enum echo_Enum1 * foo1 ; /* [ref] */
struct echo_Enum2 * foo2 ; /* [ref] */
union echo_Enum3 * foo3 ; /* [ref,switch_is(*foo1)] */
2006-09-16 02:49:27 +04:00
} in ;
struct {
2006-09-20 02:22:57 +04:00
enum echo_Enum1 * foo1 ; /* [ref] */
struct echo_Enum2 * foo2 ; /* [ref] */
union echo_Enum3 * foo3 ; /* [ref,switch_is(*foo1)] */
2006-09-16 02:49:27 +04:00
} out ;
} ;
struct echo_TestSurrounding {
struct {
2006-09-20 02:22:57 +04:00
struct echo_Surrounding * data ; /* [ref] */
2006-09-16 02:49:27 +04:00
} in ;
struct {
2006-09-20 02:22:57 +04:00
struct echo_Surrounding * data ; /* [ref] */
2006-09-16 02:49:27 +04:00
} out ;
} ;
struct echo_TestDoublePointer {
struct {
2006-09-20 02:22:57 +04:00
uint16_t * * * data ; /* [ref] */
2006-09-16 02:49:27 +04:00
} in ;
struct {
uint16_t result ;
} out ;
} ;
# endif /* _HEADER_rpcecho */