Fix the build on Win32, and use NEGOTIATE security (to allow kerberos)
[kai/samba.git] / testprogs / win32 / rpcecho / server.c
index 112eb24206adecca9251d1ca0fefea9fe8408672..b092852c15b7b44781520b337738c9f0418e380a 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,
@@ -14,8 +14,7 @@
    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/>.
 */
 
 #define _WIN32_WINNT 0x0500
 */
 
 #define _WIN32_WINNT 0x0500
@@ -133,6 +132,26 @@ void echo_TestEnum(echo_Enum1 *foo1,
        foo2->e1 = ECHO_ENUM2;
 }
 
        foo2->e1 = ECHO_ENUM2;
 }
 
+void echo_TestSurrounding(echo_Surrounding *data)
+{
+       printf("Incoming array of size %d\n", data->x);
+       data->x *= 2;
+}
+
+short echo_TestDoublePointer(short ***data)
+{
+       if (!*data) {
+               printf("WARNING: *data == NULL\n");
+               return 0;
+       }
+       if (!**data) {
+               printf("WARNING: **data == NULL\n");
+               return 0;
+       }
+       printf("Incoming double pointer: %d\n", ***data);
+       return ***data;
+}
+
 void main(int argc, char **argv)
 {
        RPC_STATUS status;
 void main(int argc, char **argv)
 {
        RPC_STATUS status;
@@ -174,7 +193,7 @@ void main(int argc, char **argv)
                exit(status);
        }
 
                exit(status);
        }
 
-       status = RpcServerRegisterAuthInfo(NULL, RPC_C_AUTHN_WINNT, NULL, NULL);
+       status = RpcServerRegisterAuthInfo(NULL, RPC_C_AUTHN_GSS_NEGOTIATE, NULL, NULL);
        if (status) {
                printf("Failed to setup auth info\n");
        }
        if (status) {
                printf("Failed to setup auth info\n");
        }