Fix the build on Win32, and use NEGOTIATE security (to allow kerberos)
[kai/samba.git] / testprogs / win32 / rpcecho / rpcecho.idl
index a0d9dbc4c6ca47fc4400ccf6d79d78aa5869133f..b0ddb81a3829b8bc701dbea14f7c03844b00b631 100644 (file)
@@ -5,7 +5,7 @@
    
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2 of the License, or
+   the Free Software Foundation; either version 3 of the License, or
    (at your option) any later version.
    
    This program is distributed in the hope that it will be useful,
    (at your option) any later version.
    
    This program is distributed in the hope that it will be useful,
    GNU General Public License for more details.
    
    You should have received a copy of the GNU General Public License
    GNU General Public License for more details.
    
    You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software
-   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
 
 */
 
+#ifndef __PIDL__
+#define unistr [string] wchar_t *
+#endif
+
 [
 uuid(60a15ec5-4de8-11d7-a637-005056a20182),
 version(1.0)
 [
 uuid(60a15ec5-4de8-11d7-a637-005056a20182),
 version(1.0)
@@ -45,13 +48,6 @@ interface rpcecho
                [in] int len,
                [out] [size_is(len)] char out_data[]
        );
                [in] int len,
                [out] [size_is(len)] char out_data[]
        );
-
-#define unistr [string] wchar_t *
-#define uint8 char
-#define uint16 short
-#define uint32 long
-#define HYPER_T hyper
-
        const long myconstant = 42;
 
        /* test strings */
        const long myconstant = 42;
 
        /* test strings */
@@ -60,36 +56,35 @@ interface rpcecho
                [out]  unistr *s2
                );
 
                [out]  unistr *s2
                );
 
-
        /* test some alignment issues */
        typedef struct {
        /* test some alignment issues */
        typedef struct {
-               uint8 v;
+               char v;
        } echo_info1;
 
        typedef struct {
        } echo_info1;
 
        typedef struct {
-               uint16 v;
+               short v;
        } echo_info2;
 
        typedef struct {
        } echo_info2;
 
        typedef struct {
-               uint32 v;
+               long v;
        } echo_info3;
 
        typedef struct {
        } echo_info3;
 
        typedef struct {
-               HYPER_T v;
+               hyper v;
        } echo_info4;
 
        typedef struct {
        } echo_info4;
 
        typedef struct {
-               uint8 v1;
-               HYPER_T v2;
+               char v1;
+               hyper v2;
        } echo_info5;
 
        typedef struct {
        } echo_info5;
 
        typedef struct {
-               uint8 v1;
+               char v1;
                echo_info1 info1;
        } echo_info6;
 
        typedef struct {
                echo_info1 info1;
        } echo_info6;
 
        typedef struct {
-               uint8 v1;
+               char v1;
                echo_info4 info4;
        } echo_info7;
 
                echo_info4 info4;
        } echo_info7;
 
@@ -104,7 +99,7 @@ interface rpcecho
        } echo_Info;
 
        long TestCall2 (
        } echo_Info;
 
        long TestCall2 (
-               [in]                     uint16 level,
+               [in]                     short level,
                [out,switch_is(level)]   echo_Info **info
                );
 
                [out,switch_is(level)]   echo_Info **info
                );
 
@@ -139,11 +134,13 @@ interface rpcecho
                );
 
        typedef struct {
                );
 
        typedef struct {
-               uint32 x;
-               [size_is(x)] uint16 surrounding[*];
+               long x;
+               [size_is(x)] short surrounding[*];
        } echo_Surrounding;
 
        void echo_TestSurrounding(
                [in,out,ref] echo_Surrounding *data
        );
        } echo_Surrounding;
 
        void echo_TestSurrounding(
                [in,out,ref] echo_Surrounding *data
        );
+
+       short echo_TestDoublePointer([in] short ***data);
 }
 }