test2057 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. <testcase>
  2. <info>
  3. <keywords>
  4. HTTP
  5. HTTP GET
  6. HTTP Negotiate auth (stub ntlm)
  7. </keywords>
  8. </info>
  9. # Server-side
  10. <reply>
  11. <!-- First request, expect 401 (ntlm challenge) -->
  12. <data1>
  13. HTTP/1.1 401 Authorization Required
  14. Server: Microsoft-IIS/7.0
  15. Content-Type: text/html; charset=iso-8859-1
  16. WWW-Authenticate: Negotiate Qw==
  17. Content-Length: 19
  18. Still not yet sir!
  19. </data1>
  20. <!-- Second request, expect success -->
  21. <data2>
  22. HTTP/1.1 200 Things are fine in server land
  23. Server: Microsoft-IIS/7.0
  24. Content-Type: text/html; charset=iso-8859-1
  25. WWW-Authenticate: Negotiate RA==
  26. Content-Length: 15
  27. Nice auth sir!
  28. </data2>
  29. <datacheck>
  30. HTTP/1.1 401 Authorization Required
  31. Server: Microsoft-IIS/7.0
  32. Content-Type: text/html; charset=iso-8859-1
  33. WWW-Authenticate: Negotiate Qw==
  34. Content-Length: 19
  35. HTTP/1.1 200 Things are fine in server land
  36. Server: Microsoft-IIS/7.0
  37. Content-Type: text/html; charset=iso-8859-1
  38. WWW-Authenticate: Negotiate RA==
  39. Content-Length: 15
  40. Nice auth sir!
  41. </datacheck>
  42. </reply>
  43. # Client-side
  44. <client>
  45. <server>
  46. http
  47. </server>
  48. <name>
  49. HTTP Negotiate authentication (stub ntlm)
  50. </name>
  51. <features>
  52. GSS-API
  53. ld_preload
  54. !debug
  55. </features>
  56. <setenv>
  57. LD_PRELOAD=%PWD/libtest/.libs/libstubgss.so
  58. CURL_STUB_GSS_CREDS="NTLM_Alice"
  59. </setenv>
  60. <command>
  61. -u: --negotiate http://%HOSTIP:%HTTPPORT/%TESTNUMBER
  62. </command>
  63. </client>
  64. # Verify data after the test has been "shot"
  65. <verify>
  66. <protocol>
  67. GET /%TESTNUMBER HTTP/1.1
  68. Host: %HOSTIP:%HTTPPORT
  69. Authorization: Negotiate Ik5UTE1fQWxpY2UiOkhUVFBAMTI3LjAuMC4xOjI6QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQ==
  70. User-Agent: curl/%VERSION
  71. Accept: */*
  72. GET /%TESTNUMBER HTTP/1.1
  73. Host: %HOSTIP:%HTTPPORT
  74. Authorization: Negotiate Ik5UTE1fQWxpY2UiOkhUVFBAMTI3LjAuMC4xOjM6QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQ==
  75. User-Agent: curl/%VERSION
  76. Accept: */*
  77. </protocol>
  78. </verify>
  79. </testcase>