Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

68 lines
1.8 KiB

  1. /**********************************************************************/
  2. /** Microsoft Windows NT **/
  3. /** Copyright(c) Microsoft Corp., 1995 **/
  4. /**********************************************************************/
  5. /*
  6. urlutil.hxx
  7. This module contains various URL utility functions
  8. FILE HISTORY:
  9. Johnl 04-Apr-1995 Created
  10. */
  11. #ifndef _URLUTIL_H_
  12. #define _URLUTIL_H_
  13. #ifdef __cplusplus
  14. extern "C" {
  15. #endif
  16. //
  17. // This indicates the URL is an enumerated type that should use
  18. // InternetFindFirstFile/<Protocol>FindNextFile
  19. //
  20. // URL_FLAGS_DIR_OR_FILE indicates we can't tell whether the URL is a
  21. // directory or a file, so assume it's a directory and if that fails, retry
  22. // as a file (handles ftp case where there isn't a trailing '/')
  23. //
  24. #define URL_FLAGS_DIRECTORY_OP 0x00000001
  25. #define URL_FLAGS_SEARCH_OP 0x00000002
  26. #define URL_FLAGS_GOPHER_PLUS 0x00000004
  27. #define URL_FLAGS_DIR_OR_FILE 0x00000008
  28. typedef struct _URL_DESCRIPTOR
  29. {
  30. DWORD dwFlags;
  31. DWORD dwServiceType;
  32. CHAR * pszProtocol;
  33. CHAR * pszServer;
  34. INTERNET_PORT sPort;
  35. CHAR * pszPath;
  36. CHAR * pszUserName;
  37. CHAR * pszPassword;
  38. CHAR * pszSearchTerms; // Gopher search items
  39. CHAR * pszExtra; // Gopher+ data
  40. DWORD GopherType;
  41. } URL_DESCRIPTOR, *LPURL_DESCRIPTOR;
  42. BOOL
  43. CrackURLInPlace(
  44. IN OUT CHAR * pszURL,
  45. OUT URL_DESCRIPTOR * pUrlDesc
  46. );
  47. VOID
  48. Unescape(
  49. CHAR * pch
  50. );
  51. #ifdef __cplusplus
  52. }
  53. #endif
  54. #endif // _URLUTIL_H_
  55.