Continued changes for client port to Linux.
This commit is contained in:
		| @@ -21,26 +21,26 @@ | |||||||
|         } |         } | ||||||
|         "Entry" |         "Entry" | ||||||
|         { |         { | ||||||
|         "MsmKey" = "8:_1231718055D14020BF756DCF44D2BF22" |  | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |  | ||||||
|         "MsmSig" = "8:_UNDEFINED" |  | ||||||
|         } |  | ||||||
|         "Entry" |  | ||||||
|         { |  | ||||||
|         "MsmKey" = "8:_1ED6B3F7C91A4BBE875FC4621FC3CD97" |         "MsmKey" = "8:_1ED6B3F7C91A4BBE875FC4621FC3CD97" | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|         "MsmSig" = "8:_UNDEFINED" |         "MsmSig" = "8:_UNDEFINED" | ||||||
|         } |         } | ||||||
|         "Entry" |         "Entry" | ||||||
|         { |         { | ||||||
|         "MsmKey" = "8:_2EEDD0C5BE8546CBA62A0852850DB473" |         "MsmKey" = "8:_313DE095D13281AF91A64E3F3D472413" | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |         "OwnerKey" = "8:_F0358243F2B34E40852F2185663C5B71" | ||||||
|         "MsmSig" = "8:_UNDEFINED" |         "MsmSig" = "8:_UNDEFINED" | ||||||
|         } |         } | ||||||
|         "Entry" |         "Entry" | ||||||
|         { |         { | ||||||
|         "MsmKey" = "8:_313DE095D13281AF91A64E3F3D472413" |         "MsmKey" = "8:_35590D5026504A138951C430142FECBA" | ||||||
|         "OwnerKey" = "8:_2EEDD0C5BE8546CBA62A0852850DB473" |         "OwnerKey" = "8:_8292EFFD84EF46C6BD2F1F3E20808684" | ||||||
|  |         "MsmSig" = "8:_UNDEFINED" | ||||||
|  |         } | ||||||
|  |         "Entry" | ||||||
|  |         { | ||||||
|  |         "MsmKey" = "8:_3986DA1502244FFBB04A66472E74633B" | ||||||
|  |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|         "MsmSig" = "8:_UNDEFINED" |         "MsmSig" = "8:_UNDEFINED" | ||||||
|         } |         } | ||||||
|         "Entry" |         "Entry" | ||||||
| @@ -64,18 +64,18 @@ | |||||||
|         "Entry" |         "Entry" | ||||||
|         { |         { | ||||||
|         "MsmKey" = "8:_92336612AC7D083F97ED302BB7674A2D" |         "MsmKey" = "8:_92336612AC7D083F97ED302BB7674A2D" | ||||||
|         "OwnerKey" = "8:_EE2A593B866F43FD8D97250E1457988A" |         "OwnerKey" = "8:_3986DA1502244FFBB04A66472E74633B" | ||||||
|         "MsmSig" = "8:_UNDEFINED" |         "MsmSig" = "8:_UNDEFINED" | ||||||
|         } |         } | ||||||
|         "Entry" |         "Entry" | ||||||
|         { |         { | ||||||
|         "MsmKey" = "8:_AFBDE40E9A784962B750ECA4C15ADD85" |         "MsmKey" = "8:_EDA39B5CAD864AF0821AAFC9783DFF12" | ||||||
|         "OwnerKey" = "8:_8292EFFD84EF46C6BD2F1F3E20808684" |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|         "MsmSig" = "8:_UNDEFINED" |         "MsmSig" = "8:_UNDEFINED" | ||||||
|         } |         } | ||||||
|         "Entry" |         "Entry" | ||||||
|         { |         { | ||||||
|         "MsmKey" = "8:_EE2A593B866F43FD8D97250E1457988A" |         "MsmKey" = "8:_F0358243F2B34E40852F2185663C5B71" | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|         "MsmSig" = "8:_UNDEFINED" |         "MsmSig" = "8:_UNDEFINED" | ||||||
|         } |         } | ||||||
| @@ -148,26 +148,6 @@ | |||||||
|             "IsDependency" = "11:FALSE" |             "IsDependency" = "11:FALSE" | ||||||
|             "IsolateTo" = "8:" |             "IsolateTo" = "8:" | ||||||
|             } |             } | ||||||
|             "{A582A373-4685-4296-BEFE-614B80A702C3}:_1231718055D14020BF756DCF44D2BF22" |  | ||||||
|             { |  | ||||||
|             "SourcePath" = "8:..\\mechanisms\\krb5\\Krb5Authenticate.conf" |  | ||||||
|             "TargetName" = "8:Krb5Authenticate.conf" |  | ||||||
|             "Tag" = "8:" |  | ||||||
|             "Folder" = "8:_DEA051CA331E4FEA83D99711FB584664" |  | ||||||
|             "Condition" = "8:" |  | ||||||
|             "Transitive" = "11:FALSE" |  | ||||||
|             "Vital" = "11:TRUE" |  | ||||||
|             "ReadOnly" = "11:FALSE" |  | ||||||
|             "Hidden" = "11:FALSE" |  | ||||||
|             "System" = "11:FALSE" |  | ||||||
|             "Permanent" = "11:FALSE" |  | ||||||
|             "SharedLegacy" = "11:FALSE" |  | ||||||
|             "PackageAs" = "3:1" |  | ||||||
|             "Register" = "3:1" |  | ||||||
|             "Exclude" = "11:FALSE" |  | ||||||
|             "IsDependency" = "11:FALSE" |  | ||||||
|             "IsolateTo" = "8:" |  | ||||||
|             } |  | ||||||
|             "{A582A373-4685-4296-BEFE-614B80A702C3}:_1ED6B3F7C91A4BBE875FC4621FC3CD97" |             "{A582A373-4685-4296-BEFE-614B80A702C3}:_1ED6B3F7C91A4BBE875FC4621FC3CD97" | ||||||
|             { |             { | ||||||
|             "SourcePath" = "8:..\\..\\include\\casa_c_authtoken.h" |             "SourcePath" = "8:..\\..\\include\\casa_c_authtoken.h" | ||||||
| @@ -264,10 +244,30 @@ | |||||||
|             "SharedLegacy" = "11:FALSE" |             "SharedLegacy" = "11:FALSE" | ||||||
|             "PackageAs" = "3:1" |             "PackageAs" = "3:1" | ||||||
|             "Register" = "3:1" |             "Register" = "3:1" | ||||||
|             "Exclude" = "11:FALSE" |             "Exclude" = "11:TRUE" | ||||||
|             "IsDependency" = "11:TRUE" |             "IsDependency" = "11:TRUE" | ||||||
|             "IsolateTo" = "8:" |             "IsolateTo" = "8:" | ||||||
|             } |             } | ||||||
|  |             "{A582A373-4685-4296-BEFE-614B80A702C3}:_EDA39B5CAD864AF0821AAFC9783DFF12" | ||||||
|  |             { | ||||||
|  |             "SourcePath" = "8:..\\mechanisms\\krb5\\windows\\Krb5Authenticate.conf" | ||||||
|  |             "TargetName" = "8:Krb5Authenticate.conf" | ||||||
|  |             "Tag" = "8:" | ||||||
|  |             "Folder" = "8:_DEA051CA331E4FEA83D99711FB584664" | ||||||
|  |             "Condition" = "8:" | ||||||
|  |             "Transitive" = "11:FALSE" | ||||||
|  |             "Vital" = "11:TRUE" | ||||||
|  |             "ReadOnly" = "11:FALSE" | ||||||
|  |             "Hidden" = "11:FALSE" | ||||||
|  |             "System" = "11:FALSE" | ||||||
|  |             "Permanent" = "11:FALSE" | ||||||
|  |             "SharedLegacy" = "11:FALSE" | ||||||
|  |             "PackageAs" = "3:1" | ||||||
|  |             "Register" = "3:1" | ||||||
|  |             "Exclude" = "11:FALSE" | ||||||
|  |             "IsDependency" = "11:FALSE" | ||||||
|  |             "IsolateTo" = "8:" | ||||||
|  |             } | ||||||
|         } |         } | ||||||
|         "FileType" |         "FileType" | ||||||
|         { |         { | ||||||
| @@ -404,7 +404,7 @@ | |||||||
|         } |         } | ||||||
|         "MergeModule" |         "MergeModule" | ||||||
|         { |         { | ||||||
|             "{35A69C6E-5BA4-440D-803D-762B59A45393}:_AFBDE40E9A784962B750ECA4C15ADD85" |             "{35A69C6E-5BA4-440D-803D-762B59A45393}:_35590D5026504A138951C430142FECBA" | ||||||
|             { |             { | ||||||
|             "UseDynamicProperties" = "11:FALSE" |             "UseDynamicProperties" = "11:FALSE" | ||||||
|             "IsDependency" = "11:TRUE" |             "IsDependency" = "11:TRUE" | ||||||
| @@ -430,9 +430,9 @@ | |||||||
|         } |         } | ||||||
|         "ProjectOutput" |         "ProjectOutput" | ||||||
|         { |         { | ||||||
|             "{8062640A-2EEE-46E9-AB67-688E9A886E9F}:_2EEDD0C5BE8546CBA62A0852850DB473" |             "{8062640A-2EEE-46E9-AB67-688E9A886E9F}:_3986DA1502244FFBB04A66472E74633B" | ||||||
|             { |             { | ||||||
|             "SourcePath" = "8:..\\mechanisms\\krb5\\windows\\Release\\krb5mech.dll" |             "SourcePath" = "8:..\\mechanisms\\pwd\\windows\\Release\\pwmech.dll" | ||||||
|             "TargetName" = "8:" |             "TargetName" = "8:" | ||||||
|             "Tag" = "8:" |             "Tag" = "8:" | ||||||
|             "Folder" = "8:_F5F5F604B81645F8B6463F7A7D6A53AD" |             "Folder" = "8:_F5F5F604B81645F8B6463F7A7D6A53AD" | ||||||
| @@ -486,9 +486,9 @@ | |||||||
|                 { |                 { | ||||||
|                 } |                 } | ||||||
|             } |             } | ||||||
|             "{8062640A-2EEE-46E9-AB67-688E9A886E9F}:_EE2A593B866F43FD8D97250E1457988A" |             "{8062640A-2EEE-46E9-AB67-688E9A886E9F}:_F0358243F2B34E40852F2185663C5B71" | ||||||
|             { |             { | ||||||
|             "SourcePath" = "8:..\\mechanisms\\pwd\\windows\\Release\\pwmech.dll" |             "SourcePath" = "8:..\\mechanisms\\krb5\\windows\\Release\\krb5mech.dll" | ||||||
|             "TargetName" = "8:" |             "TargetName" = "8:" | ||||||
|             "Tag" = "8:" |             "Tag" = "8:" | ||||||
|             "Folder" = "8:_F5F5F604B81645F8B6463F7A7D6A53AD" |             "Folder" = "8:_F5F5F604B81645F8B6463F7A7D6A53AD" | ||||||
|   | |||||||
| @@ -20,7 +20,7 @@ | |||||||
| 				Name="VCCLCompilerTool" | 				Name="VCCLCompilerTool" | ||||||
| 				AdditionalOptions="-DSECURITY_WIN32" | 				AdditionalOptions="-DSECURITY_WIN32" | ||||||
| 				Optimization="0" | 				Optimization="0" | ||||||
| 				AdditionalIncludeDirectories="windows;.;"..\..";"C:\Program Files\novell\CASA\include";"..\..\..\include"" | 				AdditionalIncludeDirectories=""C:\Dev\casa\CASA-auth-token\non-java\client\mechanisms\krb5\windows";"C:\Dev\casa\CASA-auth-token\non-java\client\mechanisms\krb5";"C:\Dev\casa\CASA-auth-token\non-java\client";"C:\Program Files\novell\CASA\include";"C:\Dev\casa\CASA-auth-token\non-java\include"" | ||||||
| 				PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS" | 				PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS" | ||||||
| 				MinimalRebuild="TRUE" | 				MinimalRebuild="TRUE" | ||||||
| 				BasicRuntimeChecks="3" | 				BasicRuntimeChecks="3" | ||||||
| @@ -80,7 +80,7 @@ copy $(OutDir)\krb5mech.dll \"Program Files"\novell\casa\lib\krb5mech. | |||||||
| 			<Tool | 			<Tool | ||||||
| 				Name="VCCLCompilerTool" | 				Name="VCCLCompilerTool" | ||||||
| 				AdditionalOptions="-DSECURITY_WIN32" | 				AdditionalOptions="-DSECURITY_WIN32" | ||||||
| 				AdditionalIncludeDirectories="windows;.;"..\..";"C:\Program Files\novell\CASA\include";"..\..\..\include"" | 				AdditionalIncludeDirectories=""C:\Dev\casa\CASA-auth-token\non-java\client\mechanisms\krb5\windows";"C:\Dev\casa\CASA-auth-token\non-java\client\mechanisms\krb5";"C:\Dev\casa\CASA-auth-token\non-java\client";"C:\Program Files\novell\CASA\include";"C:\Dev\casa\CASA-auth-token\non-java\include"" | ||||||
| 				PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS" | 				PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS" | ||||||
| 				RuntimeLibrary="4" | 				RuntimeLibrary="4" | ||||||
| 				UsePrecompiledHeader="0" | 				UsePrecompiledHeader="0" | ||||||
| @@ -139,25 +139,25 @@ copy $(OutDir)\krb5mech.dll \"Program Files"\novell\casa\lib\krb5mech. | |||||||
| 			Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx" | 			Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx" | ||||||
| 			UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"> | 			UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"> | ||||||
| 			<File | 			<File | ||||||
| 				RelativePath=".\windows\dllsup.c"> | 				RelativePath=".\dllsup.c"> | ||||||
| 			</File> | 			</File> | ||||||
| 			<File | 			<File | ||||||
| 				RelativePath=".\windows\get.c"> | 				RelativePath=".\get.c"> | ||||||
| 			</File> | 			</File> | ||||||
| 			<File | 			<File | ||||||
| 				RelativePath=".\interface.c"> | 				RelativePath="..\interface.c"> | ||||||
| 			</File> | 			</File> | ||||||
| 			<File | 			<File | ||||||
| 				RelativePath=".\Krb5Authenticate.conf"> | 				RelativePath=".\Krb5Authenticate.conf"> | ||||||
| 			</File> | 			</File> | ||||||
| 			<File | 			<File | ||||||
| 				RelativePath=".\win32\krb5mech.def"> | 				RelativePath=".\krb5mech.def"> | ||||||
| 			</File> | 			</File> | ||||||
| 			<File | 			<File | ||||||
| 				RelativePath=".\windows\platform.c"> | 				RelativePath=".\platform.c"> | ||||||
| 			</File> | 			</File> | ||||||
| 			<File | 			<File | ||||||
| 				RelativePath=".\util.c"> | 				RelativePath="..\util.c"> | ||||||
| 			</File> | 			</File> | ||||||
| 		</Filter> | 		</Filter> | ||||||
| 		<Filter | 		<Filter | ||||||
| @@ -165,10 +165,10 @@ copy $(OutDir)\krb5mech.dll \"Program Files"\novell\casa\lib\krb5mech. | |||||||
| 			Filter="h;hpp;hxx;hm;inl;inc;xsd" | 			Filter="h;hpp;hxx;hm;inl;inc;xsd" | ||||||
| 			UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"> | 			UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"> | ||||||
| 			<File | 			<File | ||||||
| 				RelativePath=".\internal.h"> | 				RelativePath="..\internal.h"> | ||||||
| 			</File> | 			</File> | ||||||
| 			<File | 			<File | ||||||
| 				RelativePath=".\windows\platform.h"> | 				RelativePath=".\platform.h"> | ||||||
| 			</File> | 			</File> | ||||||
| 		</Filter> | 		</Filter> | ||||||
| 		<Filter | 		<Filter | ||||||
| @@ -22,49 +22,23 @@ | |||||||
|  * |  * | ||||||
|  ***********************************************************************/ |  ***********************************************************************/ | ||||||
|  |  | ||||||
| #include <windows.h> | #include "platform.h" | ||||||
| #include "casa_c_authtoken.h" |  | ||||||
|  |  | ||||||
| // Globals | // Externals | ||||||
| char usageString[] = "usage: test -a serverAddress -p serverPort [-s serviceName] [-h]\n"; | extern | ||||||
|  | char     *pServerAddress; | ||||||
|  |  | ||||||
| char     *pServerAddress = NULL; | extern | ||||||
| int      serverPort = 0; | int      serverPort; | ||||||
| BOOLEAN  execHttpTest = FALSE; |  | ||||||
|  |  | ||||||
| char     serviceName[] = "testService"; | extern | ||||||
| char     *pServiceName = serviceName; | BOOLEAN  execHttpTest; | ||||||
|  |  | ||||||
|  | extern | ||||||
|  | char     serviceName[]; | ||||||
|  |  | ||||||
| /*********************************************************************** | extern | ||||||
|  * | char     *pServiceName; | ||||||
|  * 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; |  | ||||||
| } |  | ||||||
|  |  | ||||||
|  |  | ||||||
| /*********************************************************************** | /*********************************************************************** | ||||||
| @@ -166,16 +140,11 @@ void NonHttpTest(void) | |||||||
|       struct sockaddr_in   remoteAddr = {0}; |       struct sockaddr_in   remoteAddr = {0}; | ||||||
|       struct linger        linger_opt = {1, 15}; |       struct linger        linger_opt = {1, 15}; | ||||||
|       struct hostent       *pLookupResult; |       struct hostent       *pLookupResult; | ||||||
|       int                  winsockStartupResult; |  | ||||||
|       WSADATA              winsockData; |  | ||||||
|  |  | ||||||
|       printf("-NonHttpTest- ObtainAuthToken succedded, tokenlen = %d\n", authTokenLen); |       printf("-NonHttpTest- ObtainAuthToken succedded, tokenlen = %d\n", authTokenLen); | ||||||
|  |  | ||||||
|       // Send the token to the server |       // Send the token to the server | ||||||
|       // |       // | ||||||
|       // First initialize winsock |  | ||||||
|       if ((winsockStartupResult = WSAStartup(MAKEWORD(2,2), &winsockData)) == 0) |  | ||||||
|       { |  | ||||||
|       // Open socket |       // Open socket | ||||||
|       sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); |       sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); | ||||||
|       if (sock != INVALID_SOCKET) |       if (sock != INVALID_SOCKET) | ||||||
| @@ -261,14 +230,6 @@ void NonHttpTest(void) | |||||||
|       { |       { | ||||||
|          printf("-NonHttpTest- Unable to open socket, error = %d\n", errno); |          printf("-NonHttpTest- Unable to open socket, error = %d\n", errno); | ||||||
|       } |       } | ||||||
|  |  | ||||||
|          // Close winsock |  | ||||||
|          WSACleanup(); |  | ||||||
|       } |  | ||||||
|       else |  | ||||||
|       { |  | ||||||
|          printf("-NonHttpTest- WSAStartup failed, error = %d\n", winsockStartupResult); |  | ||||||
|       } |  | ||||||
|    } |    } | ||||||
| } | } | ||||||
|  |  | ||||||
| @@ -297,17 +258,11 @@ void HttpTest(void) | |||||||
|       struct sockaddr_in   remoteAddr = {0}; |       struct sockaddr_in   remoteAddr = {0}; | ||||||
|       struct linger        linger_opt = {1, 15}; |       struct linger        linger_opt = {1, 15}; | ||||||
|       struct hostent       *pLookupResult; |       struct hostent       *pLookupResult; | ||||||
|       int                  winsockStartupResult; |  | ||||||
|       WSADATA              winsockData; |  | ||||||
|  |  | ||||||
|       //printf("ObtainAuthToken succedded, token = %s\n", authToken); |       //printf("ObtainAuthToken succedded, token = %s\n", authToken); | ||||||
|       printf("-HttpTest- ObtainAuthToken succedded, tokenlen = %d\n", authTokenLen); |       printf("-HttpTest- ObtainAuthToken succedded, tokenlen = %d\n", authTokenLen); | ||||||
|  |  | ||||||
|       // Send the token to the server |       // Send the token to the server | ||||||
|       // |  | ||||||
|       // First initialize winsock |  | ||||||
|       if ((winsockStartupResult = WSAStartup(MAKEWORD(2,2), &winsockData)) == 0) |  | ||||||
|       { |  | ||||||
|       // Open socket |       // Open socket | ||||||
|       sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); |       sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); | ||||||
|       if (sock != INVALID_SOCKET) |       if (sock != INVALID_SOCKET) | ||||||
| @@ -365,13 +320,14 @@ void HttpTest(void) | |||||||
|                      pBasicCredentials = (char*) malloc(strlen(CasaPrincipal) + strlen(authToken) + 1); |                      pBasicCredentials = (char*) malloc(strlen(CasaPrincipal) + strlen(authToken) + 1); | ||||||
|                      if (pBasicCredentials) |                      if (pBasicCredentials) | ||||||
|                      { |                      { | ||||||
|                            char *pEncodedCredentials; |  | ||||||
|  |  | ||||||
|                         memcpy(pBasicCredentials, CasaPrincipal, sizeof(CasaPrincipal)); |                         memcpy(pBasicCredentials, CasaPrincipal, sizeof(CasaPrincipal)); | ||||||
|                         strcat(pBasicCredentials, authToken); |                         strcat(pBasicCredentials, authToken); | ||||||
|  |  | ||||||
|                         // Now Base64 encode the credentials |                         // Now Base64 encode the credentials | ||||||
|                            if (EncodeData(pBasicCredentials, strlen(pBasicCredentials), &pEncodedBasicCredentials, &encodedLength) == 0) |                         if (EncodeData((const void*) pBasicCredentials, | ||||||
|  |                                        (const int32_t) strlen(pBasicCredentials), | ||||||
|  |                                        &pEncodedBasicCredentials, | ||||||
|  |                                        (int32_t *) &encodedLength) == 0) | ||||||
|                         { |                         { | ||||||
|                            // Send the encoded credentials |                            // Send the encoded credentials | ||||||
|                            send(sock, pEncodedBasicCredentials, encodedLength - 1, 0); |                            send(sock, pEncodedBasicCredentials, encodedLength - 1, 0); | ||||||
| @@ -422,110 +378,5 @@ void HttpTest(void) | |||||||
|       { |       { | ||||||
|          printf("-HttpTest- Unable to open socket, error = %d\n", errno); |          printf("-HttpTest- Unable to open socket, error = %d\n", errno); | ||||||
|       } |       } | ||||||
|  |  | ||||||
|          // Close winsock |  | ||||||
|          WSACleanup(); |  | ||||||
|       } |  | ||||||
|       else |  | ||||||
|       { |  | ||||||
|          printf("-HttpTest- WSAStartup failed, error = %d\n", winsockStartupResult); |  | ||||||
|       } |  | ||||||
|    } |    } | ||||||
| } | } | ||||||
|  |  | ||||||
|  |  | ||||||
| /*********************************************************************** |  | ||||||
|  * |  | ||||||
|  * main() |  | ||||||
|  * |  | ||||||
|  ***********************************************************************/ |  | ||||||
| int main(int argc, char* argv[]) |  | ||||||
| { |  | ||||||
|    // Process input parameters |  | ||||||
|    int i = 1; |  | ||||||
|    while(argv[i] != NULL) |  | ||||||
|    { |  | ||||||
|       if (stricmp(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 (stricmp(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 (stricmp(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 (stricmp(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; |  | ||||||
| } |  | ||||||
|  |  | ||||||
|  |  | ||||||
|   | |||||||
							
								
								
									
										187
									
								
								CASA-auth-token/non-java/client/test/windows/main.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										187
									
								
								CASA-auth-token/non-java/client/test/windows/main.cpp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,187 @@ | |||||||
|  | /*********************************************************************** | ||||||
|  |  *  | ||||||
|  |  *  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; | ||||||
|  | BOOLEAN  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 (stricmp(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 (stricmp(argv[i], "-p") == 0) | ||||||
|  |       { | ||||||
|  |          // Server port option, the next argument should | ||||||
|  |          // contain the port. | ||||||
|  |          i++; | ||||||
|  |          if (argv[i] != NULL) | ||||||
|  |          { | ||||||
|  |             serverPort = htons(dtoul(argv[i], (int) strlen(argv[i]))); | ||||||
|  |          } | ||||||
|  |          else | ||||||
|  |          { | ||||||
|  |             printf(usageString); | ||||||
|  |             return -1; | ||||||
|  |          } | ||||||
|  |       } | ||||||
|  |       else if (stricmp(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 (stricmp(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) | ||||||
|  |    { | ||||||
|  |       int      winsockStartupResult; | ||||||
|  |       WSADATA  winsockData; | ||||||
|  |  | ||||||
|  |       // First initialize winsock | ||||||
|  |       if ((winsockStartupResult = WSAStartup(MAKEWORD(2,2), &winsockData)) == 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"); | ||||||
|  |          } | ||||||
|  |  | ||||||
|  |          // Close winsock | ||||||
|  |          WSACleanup(); | ||||||
|  |       } | ||||||
|  |       else | ||||||
|  |       { | ||||||
|  |          printf("-main- WSAStartup failed, error = %d\n", winsockStartupResult); | ||||||
|  |       } | ||||||
|  |    } | ||||||
|  |    else | ||||||
|  |    { | ||||||
|  |       printf(usageString); | ||||||
|  |       return -1; | ||||||
|  |    } | ||||||
|  |  | ||||||
|  |    return 0; | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
							
								
								
									
										27
									
								
								CASA-auth-token/non-java/client/test/windows/platform.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								CASA-auth-token/non-java/client/test/windows/platform.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,27 @@ | |||||||
|  | /*********************************************************************** | ||||||
|  |  *  | ||||||
|  |  *  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 <windows.h> | ||||||
|  | #include "casa_c_authtoken.h" | ||||||
| @@ -19,7 +19,7 @@ | |||||||
| 			<Tool | 			<Tool | ||||||
| 				Name="VCCLCompilerTool" | 				Name="VCCLCompilerTool" | ||||||
| 				Optimization="0" | 				Optimization="0" | ||||||
| 				AdditionalIncludeDirectories=""..\..\include";"C:\Program Files\novell\CASA\include"" | 				AdditionalIncludeDirectories=""C:\Dev\casa\CASA-auth-token\non-java\client\test\windows";"C:\Dev\casa\CASA-auth-token\non-java\include";"C:\Program Files\novell\CASA\include"" | ||||||
| 				PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE" | 				PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE" | ||||||
| 				MinimalRebuild="TRUE" | 				MinimalRebuild="TRUE" | ||||||
| 				BasicRuntimeChecks="3" | 				BasicRuntimeChecks="3" | ||||||
| @@ -70,7 +70,7 @@ | |||||||
| 			CharacterSet="2"> | 			CharacterSet="2"> | ||||||
| 			<Tool | 			<Tool | ||||||
| 				Name="VCCLCompilerTool" | 				Name="VCCLCompilerTool" | ||||||
| 				AdditionalIncludeDirectories=""..\..\include";"C:\Program Files\novell\CASA\include"" | 				AdditionalIncludeDirectories=""C:\Dev\casa\CASA-auth-token\non-java\client\test\windows";"C:\Dev\casa\CASA-auth-token\non-java\include";"C:\Program Files\novell\CASA\include"" | ||||||
| 				PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE" | 				PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE" | ||||||
| 				RuntimeLibrary="4" | 				RuntimeLibrary="4" | ||||||
| 				UsePrecompiledHeader="0" | 				UsePrecompiledHeader="0" | ||||||
| @@ -120,22 +120,25 @@ | |||||||
| 			Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx" | 			Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx" | ||||||
| 			UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"> | 			UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"> | ||||||
| 			<File | 			<File | ||||||
| 				RelativePath=".\CASA_Auth.cpp"> | 				RelativePath="..\CASA_Auth.cpp"> | ||||||
|  | 			</File> | ||||||
|  | 			<File | ||||||
|  | 				RelativePath=".\main.cpp"> | ||||||
| 			</File> | 			</File> | ||||||
| 		</Filter> | 		</Filter> | ||||||
| 		<Filter | 		<Filter | ||||||
| 			Name="Header Files" | 			Name="Header Files" | ||||||
| 			Filter="h;hpp;hxx;hm;inl;inc;xsd" | 			Filter="h;hpp;hxx;hm;inl;inc;xsd" | ||||||
| 			UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"> | 			UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"> | ||||||
|  | 			<File | ||||||
|  | 				RelativePath=".\platform.h"> | ||||||
|  | 			</File> | ||||||
| 		</Filter> | 		</Filter> | ||||||
| 		<Filter | 		<Filter | ||||||
| 			Name="Resource Files" | 			Name="Resource Files" | ||||||
| 			Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx" | 			Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx" | ||||||
| 			UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"> | 			UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"> | ||||||
| 		</Filter> | 		</Filter> | ||||||
| 		<File |  | ||||||
| 			RelativePath=".\ReadMe.txt"> |  | ||||||
| 		</File> |  | ||||||
| 	</Files> | 	</Files> | ||||||
| 	<Globals> | 	<Globals> | ||||||
| 	</Globals> | 	</Globals> | ||||||
		Reference in New Issue
	
	Block a user