<testcase> <info> <keywords> HTTP HTTP GET HTTP Negotiate auth (stub krb5) </keywords> </info> # Server-side <reply> <!-- First request, expect 401 Negotiate --> <data> HTTP/1.1 401 Authorization Required Server: Microsoft-IIS/7.0 Content-Type: text/html; charset=iso-8859-1 WWW-Authenticate: Negotiate Content-Length: 13 Not yet sir! </data> <!-- Second request, expect success in one shot --> <data1> HTTP/1.1 200 Things are fine in server land Server: Microsoft-IIS/7.0 Content-Type: text/html; charset=iso-8859-1 WWW-Authenticate: Negotiate RA== Content-Length: 15 Nice auth sir! </data1> <datacheck> HTTP/1.1 401 Authorization Required Server: Microsoft-IIS/7.0 Content-Type: text/html; charset=iso-8859-1 WWW-Authenticate: Negotiate Content-Length: 13 HTTP/1.1 200 Things are fine in server land Server: Microsoft-IIS/7.0 Content-Type: text/html; charset=iso-8859-1 WWW-Authenticate: Negotiate RA== Content-Length: 15 Nice auth sir! </datacheck> </reply> # Client-side <client> <server> http </server> <name> HTTP Negotiate authentication (stub krb5) </name> <features> GSS-API ld_preload !debug </features> <setenv> LD_PRELOAD=%PWD/libtest/.libs/libstubgss.so CURL_STUB_GSS_CREDS="KRB5_Alice" </setenv> <command> -u: --negotiate http://%HOSTIP:%HTTPPORT/2056 </command> </client> # Verify data after the test has been "shot" <verify> <strip> ^User-Agent:.* </strip> <protocol> GET /2056 HTTP/1.1 Host: %HOSTIP:%HTTPPORT Accept: */* GET /2056 HTTP/1.1 Host: %HOSTIP:%HTTPPORT Authorization: Negotiate IktSQjVfQWxpY2UiOkhUVFBAMTI3LjAuMC4xOjE6QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQ== Accept: */* </protocol> </verify> </testcase>