Separated the non-java project into client and server projects
in order to better support distributions that target desktops. This commit completes the client project setup.
This commit is contained in:
		
							
								
								
									
										171
									
								
								CASA-auth-token/client/lib/test/linux/main.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										171
									
								
								CASA-auth-token/client/lib/test/linux/main.cpp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,171 @@ | ||||
| /*********************************************************************** | ||||
|  *  | ||||
|  *  Copyright (C) 2006 Novell, Inc. All Rights Reserved. | ||||
|  * | ||||
|  *  This library is free software; you can redistribute it and/or | ||||
|  *  modify it under the terms of the GNU Lesser General Public | ||||
|  *  License as published by the Free Software Foundation; version 2.1 | ||||
|  *  of the License. | ||||
|  * | ||||
|  *  This library is distributed in the hope that it will be useful, | ||||
|  *  but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
|  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | ||||
|  *  Library Lesser General Public License for more details. | ||||
|  * | ||||
|  *  You should have received a copy of the GNU Lesser General Public | ||||
|  *  License along with this library; if not, Novell, Inc. | ||||
|  *  | ||||
|  *  To contact Novell about this file by physical or electronic mail,  | ||||
|  *  you may find current contact information at www.novell.com. | ||||
|  *  | ||||
|  *  Author: Juan Carlos Luciani <jluciani@novell.com> | ||||
|  * | ||||
|  ***********************************************************************/ | ||||
|  | ||||
| #include "platform.h" | ||||
|  | ||||
|  | ||||
| // Extern functions | ||||
| extern | ||||
| void NonHttpTest(void); | ||||
|  | ||||
| extern | ||||
| void HttpTest(void); | ||||
|  | ||||
|  | ||||
| // Globals | ||||
| char usageString[] = "usage: test -a serverAddress -p serverPort [-s serviceName] [-h]\n"; | ||||
|  | ||||
| char     *pServerAddress = NULL; | ||||
| int      serverPort = 0; | ||||
| bool     execHttpTest = false; | ||||
|  | ||||
| char     serviceName[] = "testService"; | ||||
| char     *pServiceName = serviceName; | ||||
|  | ||||
|  | ||||
| /*********************************************************************** | ||||
|  * | ||||
|  * dtoul() | ||||
|  * | ||||
|  ***********************************************************************/ | ||||
| int | ||||
| dtoul( | ||||
|    IN    char *cp, | ||||
|    IN    int len) | ||||
| { | ||||
|    int   n = 0; | ||||
|    int   i; | ||||
|  | ||||
|    for (i = 0; i < len; i++, cp++) | ||||
|    { | ||||
|       // Verify that we are dealing with a valid digit | ||||
|       if (*cp >= '0' && *cp <= '9') | ||||
|       { | ||||
|          n = 10 * n + (*cp - '0'); | ||||
|       } | ||||
|       else | ||||
|       { | ||||
|          printf("-dtoul- Found invalid digit\n"); | ||||
|          break; | ||||
|       } | ||||
|    } | ||||
|        | ||||
|    return n; | ||||
| } | ||||
|  | ||||
|  | ||||
| /*********************************************************************** | ||||
|  * | ||||
|  * main() | ||||
|  * | ||||
|  ***********************************************************************/ | ||||
| int main(int argc, char* argv[]) | ||||
| { | ||||
|    // Process input parameters | ||||
|    int i = 1; | ||||
|    while(argv[i] != NULL) | ||||
|    { | ||||
|       if (strcasecmp(argv[i], "-a") == 0) | ||||
|       { | ||||
|          // Server Address option, the next argument should | ||||
|          // contain the address. | ||||
|          i++; | ||||
|          if (argv[i] != NULL) | ||||
|          { | ||||
|             pServerAddress = argv[i]; | ||||
|          } | ||||
|          else | ||||
|          { | ||||
|             printf(usageString); | ||||
|             return -1; | ||||
|          } | ||||
|       } | ||||
|       else if (strcasecmp(argv[i], "-p") == 0) | ||||
|       { | ||||
|          // Server port option, the next argument should | ||||
|          // contain the port. | ||||
|          i++; | ||||
|          if (argv[i] != NULL) | ||||
|          { | ||||
|             serverPort = htons(dtoul(argv[i], strlen(argv[i]))); | ||||
|          } | ||||
|          else | ||||
|          { | ||||
|             printf(usageString); | ||||
|             return -1; | ||||
|          } | ||||
|       } | ||||
|       else if (strcasecmp(argv[i], "-s") == 0) | ||||
|       { | ||||
|          // Service name option, the next argument should | ||||
|          // contain the name of the service to be targeted. | ||||
|          i++; | ||||
|          if (argv[i] != NULL) | ||||
|          { | ||||
|             pServiceName = argv[i]; | ||||
|          } | ||||
|          else | ||||
|          { | ||||
|             printf(usageString); | ||||
|             return -1; | ||||
|          } | ||||
|       } | ||||
|       else if (strcasecmp(argv[i], "-h") == 0) | ||||
|       { | ||||
|          // Perform http test option | ||||
|          execHttpTest = true; | ||||
|       } | ||||
|  | ||||
|       // Advance to the next argument | ||||
|       i++; | ||||
|    } | ||||
|  | ||||
|    // Verify that the server address and port were specified | ||||
|    if (pServerAddress && serverPort != 0) | ||||
|    { | ||||
|       // Repeat the test when indicated | ||||
|       printf("Press 'Enter' to run test or 'n + Enter' to stop.\n"); | ||||
|       while(getchar() != 'n') | ||||
|       { | ||||
|          // Execute the appropriate test | ||||
|          if (execHttpTest) | ||||
|          { | ||||
|             HttpTest(); | ||||
|          } | ||||
|          else | ||||
|          { | ||||
|             NonHttpTest(); | ||||
|          } | ||||
|          printf("Press 'Enter' to run test or 'n + Enter' to stop.\n"); | ||||
|       } | ||||
|    } | ||||
|    else | ||||
|    { | ||||
|       printf(usageString); | ||||
|       return -1; | ||||
|    } | ||||
|  | ||||
|    return 0; | ||||
| } | ||||
|  | ||||
							
								
								
									
										2
									
								
								CASA-auth-token/client/lib/test/linux/make.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										2
									
								
								CASA-auth-token/client/lib/test/linux/make.sh
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,2 @@ | ||||
| #!/bin/bash | ||||
| g++ -o authClientTest ../CASA_Auth.cpp main.cpp -g -DN_PLAT_UNIX -I. -I../../../include -L"../../../lib/Release" -lcasa_c_authtoken -Xlinker -rpath -Xlinker ../../../lib/Release | ||||
							
								
								
									
										54
									
								
								CASA-auth-token/client/lib/test/linux/platform.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								CASA-auth-token/client/lib/test/linux/platform.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,54 @@ | ||||
| /*********************************************************************** | ||||
|  *  | ||||
|  *  Copyright (C) 2006 Novell, Inc. All Rights Reserved. | ||||
|  * | ||||
|  *  This library is free software; you can redistribute it and/or | ||||
|  *  modify it under the terms of the GNU Lesser General Public | ||||
|  *  License as published by the Free Software Foundation; version 2.1 | ||||
|  *  of the License. | ||||
|  * | ||||
|  *  This library is distributed in the hope that it will be useful, | ||||
|  *  but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
|  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | ||||
|  *  Library Lesser General Public License for more details. | ||||
|  * | ||||
|  *  You should have received a copy of the GNU Lesser General Public | ||||
|  *  License along with this library; if not, Novell, Inc. | ||||
|  *  | ||||
|  *  To contact Novell about this file by physical or electronic mail,  | ||||
|  *  you may find current contact information at www.novell.com. | ||||
|  *  | ||||
|  *  Author: Juan Carlos Luciani <jluciani@novell.com> | ||||
|  * | ||||
|  ***********************************************************************/ | ||||
|  | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
| #include <stdbool.h> | ||||
| #include <string.h> | ||||
| #include <syslog.h> | ||||
| #include <pthread.h> | ||||
| #include <string.h> | ||||
| #include <errno.h> | ||||
| #include <unistd.h> | ||||
| #include <sys/types.h> | ||||
| #include <sys/socket.h> | ||||
| #include <netinet/in.h> | ||||
| #include <netinet/tcp.h> | ||||
| #include <netdb.h> | ||||
|  | ||||
| #include <micasa_types.h> | ||||
| #include <casa_status.h> | ||||
| #include "casa_c_authtoken.h" | ||||
|  | ||||
| // | ||||
| // Socket Mapping definitions | ||||
| // | ||||
| #undef SOCKET | ||||
| #define SOCKET int | ||||
| #define INVALID_SOCKET -1 | ||||
| #define SOCKET_ERROR -1 | ||||
| #define LINGER struct linger | ||||
| #define SOCKADDR_IN struct sockaddr_in | ||||
| #define closesocket close | ||||
|  | ||||
		Reference in New Issue
	
	Block a user