Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(135)

Side by Side Diff: third_party/WebKit/Source/modules/fetch/FetchManager.cpp

Issue 2852423002: Expose passwords to JavaScript in Credential Manager API (Closed)
Patch Set: More Interface Listings Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "modules/fetch/FetchManager.h" 5 #include "modules/fetch/FetchManager.h"
6 6
7 #include <memory> 7 #include <memory>
8 #include "bindings/core/v8/ExceptionState.h" 8 #include "bindings/core/v8/ExceptionState.h"
9 #include "bindings/core/v8/ScriptPromiseResolver.h" 9 #include "bindings/core/v8/ScriptPromiseResolver.h"
10 #include "bindings/core/v8/V8ThrowException.h" 10 #include "bindings/core/v8/V8ThrowException.h"
11 #include "core/dom/DOMArrayBuffer.h" 11 #include "core/dom/DOMArrayBuffer.h"
12 #include "core/dom/Document.h" 12 #include "core/dom/Document.h"
13 #include "core/dom/ExecutionContext.h" 13 #include "core/dom/ExecutionContext.h"
14 #include "core/fileapi/Blob.h" 14 #include "core/fileapi/Blob.h"
15 #include "core/frame/Deprecation.h"
15 #include "core/frame/Frame.h" 16 #include "core/frame/Frame.h"
16 #include "core/frame/SubresourceIntegrity.h" 17 #include "core/frame/SubresourceIntegrity.h"
18 #include "core/frame/UseCounter.h"
17 #include "core/frame/csp/ContentSecurityPolicy.h" 19 #include "core/frame/csp/ContentSecurityPolicy.h"
18 #include "core/inspector/ConsoleMessage.h" 20 #include "core/inspector/ConsoleMessage.h"
19 #include "core/loader/ThreadableLoader.h" 21 #include "core/loader/ThreadableLoader.h"
20 #include "core/loader/ThreadableLoaderClient.h" 22 #include "core/loader/ThreadableLoaderClient.h"
21 #include "core/page/ChromeClient.h" 23 #include "core/page/ChromeClient.h"
22 #include "core/page/Page.h" 24 #include "core/page/Page.h"
23 #include "core/probe/CoreProbes.h" 25 #include "core/probe/CoreProbes.h"
24 #include "modules/fetch/Body.h" 26 #include "modules/fetch/Body.h"
25 #include "modules/fetch/BodyStreamBuffer.h" 27 #include "modules/fetch/BodyStreamBuffer.h"
26 #include "modules/fetch/BytesConsumer.h" 28 #include "modules/fetch/BytesConsumer.h"
(...skipping 691 matching lines...) Expand 10 before | Expand all | Expand 10 after
718 request.SetFetchCredentialsMode(request_->Credentials()); 720 request.SetFetchCredentialsMode(request_->Credentials());
719 for (const auto& header : request_->HeaderList()->List()) { 721 for (const auto& header : request_->HeaderList()->List()) {
720 request.AddHTTPHeaderField(AtomicString(header.first), 722 request.AddHTTPHeaderField(AtomicString(header.first),
721 AtomicString(header.second)); 723 AtomicString(header.second));
722 } 724 }
723 725
724 if (request_->Method() != HTTPNames::GET && 726 if (request_->Method() != HTTPNames::GET &&
725 request_->Method() != HTTPNames::HEAD) { 727 request_->Method() != HTTPNames::HEAD) {
726 if (request_->Buffer()) 728 if (request_->Buffer())
727 request.SetHTTPBody(request_->Buffer()->DrainAsFormData()); 729 request.SetHTTPBody(request_->Buffer()->DrainAsFormData());
728 if (request_->AttachedCredential()) 730 if (request_->AttachedCredential()) {
731 Deprecation::CountDeprecation(GetExecutionContext(),
732 UseCounter::kCredentialManagerCustomFetch);
Mike West 2017/05/04 11:13:33 I think it would be better to put this counter in
jdoerrie 2017/05/04 14:24:10 Done.
729 request.SetAttachedCredential(request_->AttachedCredential()); 733 request.SetAttachedCredential(request_->AttachedCredential());
734 }
730 } 735 }
731 request.SetFetchRedirectMode(request_->Redirect()); 736 request.SetFetchRedirectMode(request_->Redirect());
732 request.SetUseStreamOnResponse(true); 737 request.SetUseStreamOnResponse(true);
733 request.SetExternalRequestStateFromRequestorAddressSpace( 738 request.SetExternalRequestStateFromRequestorAddressSpace(
734 execution_context_->GetSecurityContext().AddressSpace()); 739 execution_context_->GetSecurityContext().AddressSpace());
735 740
736 // "2. Append `Referer`/empty byte sequence, if |HTTPRequest|'s |referrer| 741 // "2. Append `Referer`/empty byte sequence, if |HTTPRequest|'s |referrer|
737 // is none, and `Referer`/|HTTPRequest|'s referrer, serialized and utf-8 742 // is none, and `Referer`/|HTTPRequest|'s referrer, serialized and utf-8
738 // encoded, otherwise, to HTTPRequest's header list. 743 // encoded, otherwise, to HTTPRequest's header list.
739 // 744 //
(...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after
921 loaders_.erase(loader); 926 loaders_.erase(loader);
922 loader->Dispose(); 927 loader->Dispose();
923 } 928 }
924 929
925 DEFINE_TRACE(FetchManager) { 930 DEFINE_TRACE(FetchManager) {
926 visitor->Trace(loaders_); 931 visitor->Trace(loaders_);
927 ContextLifecycleObserver::Trace(visitor); 932 ContextLifecycleObserver::Trace(visitor);
928 } 933 }
929 934
930 } // namespace blink 935 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698