Followup:

I found something strange in the neon source. In the file src/ne_sspi.c, line 466 ff (the 0.25.4 tag):

    if (base64Token) {
        SecBufferDesc inBufferDesc;
        SecBuffer inBuffer;

        if (!sspiContext->continueNeeded) {
            NE_DEBUG(NE_DBG_HTTPAUTH, "sspi: Got an unexpected token.\n");
            return -1;
        }

        initSingleEmptyBuffer(&inBufferDesc, &inBuffer);

        status = base64ToBuffer(base64Token, &inBufferDesc);
        if (status) {
            return status;
        }

        securityStatus =
            initializeSecurityContext(&sspiContext->credentials,
                                      &(sspiContext->context),
sspiContext->serverName, contextFlags, &inBufferDesc, &(sspiContext->context),
                                      &outBufferDesc);
        freeBuffer(&inBufferDesc);
    } else {
        if (sspiContext->continueNeeded) {
NE_DEBUG(NE_DBG_HTTPAUTH, "sspi: Expected a token from server.\n");
            return -1;
        }


First, there's 'if (!sspiContext->continueNeeded)' which returns -1, for non-base64Tokens, there's 'if (sspiContext->continueNeeded)'.

Could that be the bug?

Stefan

--
       ___
  oo  // \\      "De Chelonian Mobile"
 (_,\/ \_/ \     TortoiseSVN
   \ \_/_\_/>    The coolest Interface to (Sub)Version Control
   /_/   \_\     http://tortoisesvn.tigris.org
_______________________________________________
neon mailing list
[email protected]
http://mailman.webdav.org/mailman/listinfo/neon

Reply via email to