Changeset 42536 in webkit


Ignore:
Timestamp:
Apr 14, 2009 11:43:35 PM (15 years ago)
Author:
ap@webkit.org
Message:

Rubber-stamped by Darin Adler.

Don't keep platform objects for authentication challenge in ResourceHandleInternal.
We already have a copy in AuthenticationChallenge object.

  • platform/network/ResourceHandle.cpp: (WebCore::ResourceHandle::clearAuthentication):
  • platform/network/ResourceHandleInternal.h: (WebCore::ResourceHandleInternal::ResourceHandleInternal):
  • platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): (WebCore::ResourceHandle::receivedCredential): (WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential): (WebCore::ResourceHandle::receivedCancellation):
  • platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): (WebCore::ResourceHandle::didCancelAuthenticationChallenge): (WebCore::ResourceHandle::receivedCredential): (WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential): (WebCore::ResourceHandle::receivedCancellation):
Location:
trunk/WebCore
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebCore/ChangeLog

    r42534 r42536  
     12009-04-14  Alexey Proskuryakov  <ap@webkit.org>
     2
     3        Rubber-stamped by Darin Adler.
     4
     5        Don't keep platform objects for authentication challenge in ResourceHandleInternal.
     6        We already have a copy in AuthenticationChallenge object.
     7
     8        * platform/network/ResourceHandle.cpp:
     9        (WebCore::ResourceHandle::clearAuthentication):
     10        * platform/network/ResourceHandleInternal.h:
     11        (WebCore::ResourceHandleInternal::ResourceHandleInternal):
     12        * platform/network/cf/ResourceHandleCFNet.cpp:
     13        (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
     14        (WebCore::ResourceHandle::receivedCredential):
     15        (WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential):
     16        (WebCore::ResourceHandle::receivedCancellation):
     17        * platform/network/mac/ResourceHandleMac.mm:
     18        (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
     19        (WebCore::ResourceHandle::didCancelAuthenticationChallenge):
     20        (WebCore::ResourceHandle::receivedCredential):
     21        (WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential):
     22        (WebCore::ResourceHandle::receivedCancellation):
     23
    1242009-04-14  Geoffrey Garen  <ggaren@apple.com>
    225
  • trunk/WebCore/platform/network/ResourceHandle.cpp

    r31438 r42536  
    104104void ResourceHandle::clearAuthentication()
    105105{
    106 #if PLATFORM(MAC)
    107     d->m_currentMacChallenge = nil;
    108 #elif USE(CFNETWORK)
    109     d->m_currentCFChallenge = 0;
    110 #endif
    111     d->m_currentWebChallenge.nullify();
     106    d->m_currentChallenge.nullify();
    112107}
    113108
  • trunk/WebCore/platform/network/ResourceHandleInternal.h

    r42483 r42536  
    128128#if PLATFORM(MAC)
    129129            , m_startWhenScheduled(false)
    130             , m_currentMacChallenge(nil)
    131 #elif USE(CFNETWORK)
    132             , m_currentCFChallenge(0)
    133130#endif
    134131            , m_failureTimer(loader, &ResourceHandle::fireFailure)
     
    210207        QWebFrame* m_frame;
    211208#endif
    212 #if PLATFORM(MAC)
    213         NSURLAuthenticationChallenge *m_currentMacChallenge;
    214 #endif
    215 #if USE(CFNETWORK)
    216         CFURLAuthChallengeRef m_currentCFChallenge;
    217 #endif
    218         AuthenticationChallenge m_currentWebChallenge;
     209        AuthenticationChallenge m_currentChallenge;
    219210
    220211        ResourceHandle::FailureType m_failureType;
  • trunk/WebCore/platform/network/cf/ResourceHandleCFNet.cpp

    r42486 r42536  
    410410{
    411411    LOG(Network, "CFNet - didReceiveAuthenticationChallenge()");
    412     ASSERT(!d->m_currentCFChallenge);
    413     ASSERT(d->m_currentWebChallenge.isNull());
     412    ASSERT(d->m_currentChallenge.isNull());
    414413    // Since CFURLConnection networking relies on keeping a reference to the original CFURLAuthChallengeRef,
    415414    // we make sure that is actually present
     
    438437    }
    439438
    440     d->m_currentCFChallenge = challenge.cfURLAuthChallengeRef();
    441     d->m_currentWebChallenge = AuthenticationChallenge(d->m_currentCFChallenge, this);
     439    d->m_currentChallenge = AuthenticationChallenge(challenge.cfURLAuthChallengeRef(), this);
    442440   
    443441    if (client())
    444         client()->didReceiveAuthenticationChallenge(this, d->m_currentWebChallenge);
     442        client()->didReceiveAuthenticationChallenge(this, d->m_currentChallenge);
    445443}
    446444
     
    450448    ASSERT(!challenge.isNull());
    451449    ASSERT(challenge.cfURLAuthChallengeRef());
    452     if (challenge != d->m_currentWebChallenge)
     450    if (challenge != d->m_currentChallenge)
    453451        return;
    454452
     
    473471    ASSERT(!challenge.isNull());
    474472    ASSERT(challenge.cfURLAuthChallengeRef());
    475     if (challenge != d->m_currentWebChallenge)
     473    if (challenge != d->m_currentChallenge)
    476474        return;
    477475
     
    484482{
    485483    LOG(Network, "CFNet - receivedCancellation()");
    486     if (challenge != d->m_currentWebChallenge)
     484    if (challenge != d->m_currentChallenge)
    487485        return;
    488486
  • trunk/WebCore/platform/network/mac/ResourceHandleMac.mm

    r42502 r42536  
    407407void ResourceHandle::didReceiveAuthenticationChallenge(const AuthenticationChallenge& challenge)
    408408{
    409     ASSERT(!d->m_currentMacChallenge);
    410     ASSERT(d->m_currentWebChallenge.isNull());
     409    ASSERT(d->m_currentChallenge.isNull());
    411410    // Since NSURLConnection networking relies on keeping a reference to the original NSURLAuthenticationChallenge,
    412411    // we make sure that is actually present
     
    417416                                                                   password:d->m_pass
    418417                                                                persistence:NSURLCredentialPersistenceNone];
    419         d->m_currentMacChallenge = challenge.nsURLAuthenticationChallenge();
    420         d->m_currentWebChallenge = challenge;
     418        d->m_currentChallenge = challenge;
    421419        receivedCredential(challenge, core(credential));
    422420        [credential release];
     
    435433    }
    436434
    437     d->m_currentMacChallenge = challenge.nsURLAuthenticationChallenge();
    438     NSURLAuthenticationChallenge *webChallenge = [[NSURLAuthenticationChallenge alloc] initWithAuthenticationChallenge:d->m_currentMacChallenge
     435    NSURLAuthenticationChallenge *webChallenge = [[NSURLAuthenticationChallenge alloc] initWithAuthenticationChallenge:challenge.nsURLAuthenticationChallenge()
    439436                                                                                       sender:(id<NSURLAuthenticationChallengeSender>)delegate()];
    440     d->m_currentWebChallenge = core(webChallenge);
     437    d->m_currentChallenge = core(webChallenge);
    441438    [webChallenge release];
    442439
    443440    if (client())
    444         client()->didReceiveAuthenticationChallenge(this, d->m_currentWebChallenge);
     441        client()->didReceiveAuthenticationChallenge(this, d->m_currentChallenge);
    445442}
    446443
    447444void ResourceHandle::didCancelAuthenticationChallenge(const AuthenticationChallenge& challenge)
    448445{
    449     ASSERT(d->m_currentMacChallenge);
    450     ASSERT(!d->m_currentWebChallenge.isNull());
    451     ASSERT(d->m_currentWebChallenge == challenge);
     446    ASSERT(!d->m_currentChallenge.isNull());
     447    ASSERT(d->m_currentChallenge == challenge);
    452448
    453449    if (client())
     
    458454{
    459455    ASSERT(!challenge.isNull());
    460     if (challenge != d->m_currentWebChallenge)
    461         return;
     456    if (challenge != d->m_currentChallenge)
     457        return;
     458
     459    NSURLAuthenticationChallenge *currentMacChallenge = challenge.nsURLAuthenticationChallenge();
    462460
    463461#ifdef BUILDING_ON_TIGER
     
    465463        // NSURLCredentialPersistenceNone doesn't work on Tiger, so we have to use session persistence.
    466464        Credential webCredential(credential.user(), credential.password(), CredentialPersistenceForSession);
    467         WebCoreCredentialStorage::set(mac(webCredential), [d->m_currentMacChallenge protectionSpace]);
    468         [[d->m_currentMacChallenge sender] useCredential:mac(webCredential) forAuthenticationChallenge:d->m_currentMacChallenge];
     465        WebCoreCredentialStorage::set(mac(webCredential), [currentMacChallenge protectionSpace]);
     466        [[currentMacChallenge sender] useCredential:mac(webCredential) forAuthenticationChallenge:currentMacChallenge];
    469467    } else
    470468#else
     
    473471        // to ignore it for a particular request (short of removing it altogether).
    474472        Credential webCredential(credential.user(), credential.password(), CredentialPersistenceNone);
    475         WebCoreCredentialStorage::set(mac(webCredential), [d->m_currentMacChallenge protectionSpace]);
    476         [[d->m_currentMacChallenge sender] useCredential:mac(webCredential) forAuthenticationChallenge:d->m_currentMacChallenge];
     473        WebCoreCredentialStorage::set(mac(webCredential), [currentMacChallenge protectionSpace]);
     474        [[currentMacChallenge sender] useCredential:mac(webCredential) forAuthenticationChallenge:currentMacChallenge];
    477475    } else
    478476#endif
    479         [[d->m_currentMacChallenge sender] useCredential:mac(credential) forAuthenticationChallenge:d->m_currentMacChallenge];
     477        [[currentMacChallenge sender] useCredential:mac(credential) forAuthenticationChallenge:currentMacChallenge];
    480478
    481479    clearAuthentication();
     
    485483{
    486484    ASSERT(!challenge.isNull());
    487     if (challenge != d->m_currentWebChallenge)
    488         return;
    489 
    490     [[d->m_currentMacChallenge sender] continueWithoutCredentialForAuthenticationChallenge:d->m_currentMacChallenge];
     485    if (challenge != d->m_currentChallenge)
     486        return;
     487
     488    NSURLAuthenticationChallenge *currentMacChallenge = challenge.nsURLAuthenticationChallenge();
     489    [[currentMacChallenge sender] continueWithoutCredentialForAuthenticationChallenge:currentMacChallenge];
    491490
    492491    clearAuthentication();
     
    495494void ResourceHandle::receivedCancellation(const AuthenticationChallenge& challenge)
    496495{
    497     if (challenge != d->m_currentWebChallenge)
     496    if (challenge != d->m_currentChallenge)
    498497        return;
    499498
Note: See TracChangeset for help on using the changeset viewer.