/*++ Copyright (c) 1989 Microsoft Corporation Module Name: os2null.c Abstract: This is a test OS/2 application to test the LPC overhead for calling the OS/2 Emulation Subsystem Author: Steve Wood (stevewo) 22-Aug-1989 Environment: User Mode Only Revision History: --*/ #define OS2_API32 #define INCL_OS2V20_MEMORY #define INCL_OS2V20_QUEUES #define INCL_OS2V20_SEMAPHORES #define INCL_OS2V20_ERRORS #define INCL_OS2V20_TASKING #include APIRET Od2Canonicalize( IN PSZ Path, IN ULONG ExpectedType, OUT PSTRING OutputString, OUT PHANDLE OutputDirectory OPTIONAL, OUT PULONG ParseFlags OPTIONAL, OUT PULONG FileType OPTIONAL ); #define CANONICALIZE_FILE_DEV_OR_PIPE 0x00000000 #define CANONICALIZE_FILE_OR_DEV 0x00000001 #define CANONICALIZE_SHARED_MEMORY 0x00000002 #define CANONICALIZE_SEMAPHORE 0x00000003 #define CANONICALIZE_QUEUE 0x00000004 PCHAR NullApiArguments[] = { "String Number One", "String Number Two", "String Number Three", NULL }; #define EXP_SUCCESS (BOOLEAN)1 #define EXP_FAILURE (BOOLEAN)0 struct _TEST_PATHS { char *Path; ULONG ExpectedType; BOOLEAN Success; } TestPaths[] = { ".", CANONICALIZE_FILE_DEV_OR_PIPE, EXP_SUCCESS, "\\sharemem\\a\\", CANONICALIZE_SHARED_MEMORY, EXP_FAILURE, // bad name "\\sharemem\\a/", CANONICALIZE_SHARED_MEMORY, EXP_FAILURE, // bad name "\\sharemem\\.", CANONICALIZE_SHARED_MEMORY, EXP_FAILURE, // bad name "\\sharemem\\..", CANONICALIZE_SHARED_MEMORY, EXP_FAILURE, // bad name "pmwin.dll", CANONICALIZE_FILE_DEV_OR_PIPE, EXP_SUCCESS, "c:pmwin.dll", CANONICALIZE_FILE_DEV_OR_PIPE, EXP_SUCCESS, "c:.\\pmwin.dll", CANONICALIZE_FILE_DEV_OR_PIPE, EXP_SUCCESS, "\\pmwin.dll", CANONICALIZE_FILE_DEV_OR_PIPE, EXP_SUCCESS, ".\\pmwin.dll", CANONICALIZE_FILE_DEV_OR_PIPE, EXP_SUCCESS, "DLL\\..\\pmwin.dll", CANONICALIZE_FILE_DEV_OR_PIPE, EXP_SUCCESS, "C:\\nt\\dll\\pmwin.dll", CANONICALIZE_FILE_DEV_OR_PIPE, EXP_SUCCESS, "c:..\\DLL\\pmwin.dll", CANONICALIZE_FILE_DEV_OR_PIPE, EXP_FAILURE, // back up too far "c:..\\..\\NT\\.\\DLL\\pmwin.dll", CANONICALIZE_FILE_DEV_OR_PIPE, EXP_FAILURE, // back up too far "c:\\DLL\\..\\..\\pmwin.dll", CANONICALIZE_FILE_DEV_OR_PIPE, EXP_FAILURE, // back up too far "c:\\DLL\\..\\pmwin