And I fixed the challenge too (got curious - damn you ;) Here's the code which creates $response from $challenge and $password - note the "tolower" bit, cost me a couple of hours, doesn't work without it... all the rest is the same as in the previous example, except for using auth_challenge and auth_response, of course. The whole script is too long to post because it's using some xml processing function which I've found elsewhere, but I can send it if you need.
set encoded [string tolower [md5::md5 -hex $password] ]
set cat $challenge$encoded
set response [string tolower [md5::md5 -hex $cat] ]
This post starts to be difficult to navigate... ;)