OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 27 matching lines...) Expand all Loading... |
38 class LocalFrame; | 38 class LocalFrame; |
39 class FrameLoaderClient; | 39 class FrameLoaderClient; |
40 class KURL; | 40 class KURL; |
41 class SecurityOrigin; | 41 class SecurityOrigin; |
42 | 42 |
43 class MixedContentChecker { | 43 class MixedContentChecker { |
44 WTF_MAKE_NONCOPYABLE(MixedContentChecker); | 44 WTF_MAKE_NONCOPYABLE(MixedContentChecker); |
45 public: | 45 public: |
46 MixedContentChecker(LocalFrame*); | 46 MixedContentChecker(LocalFrame*); |
47 | 47 |
48 bool canDisplayInsecureContent(SecurityOrigin* securityOrigin, const KURL& u
rl) const | 48 bool canDisplayInsecureContent(SecurityOrigin*, const KURL&) const; |
49 { | |
50 return canDisplayInsecureContentInternal(securityOrigin, url, MixedConte
ntChecker::Display); | |
51 } | |
52 bool canSubmitToInsecureForm(SecurityOrigin* securityOrigin, const KURL& url
) const | |
53 { | |
54 return canDisplayInsecureContentInternal(securityOrigin, url, MixedConte
ntChecker::Submission); | |
55 } | |
56 | |
57 bool canRunInsecureContent(SecurityOrigin* securityOrigin, const KURL& url)
const | 49 bool canRunInsecureContent(SecurityOrigin* securityOrigin, const KURL& url)
const |
58 { | 50 { |
59 return canRunInsecureContentInternal(securityOrigin, url, MixedContentCh
ecker::Execution); | 51 return canRunInsecureContentInternal(securityOrigin, url, false); |
60 } | 52 } |
61 bool canConnectInsecureWebSocket(SecurityOrigin* securityOrigin, const KURL&
url) const | 53 bool canConnectInsecureWebSocket(SecurityOrigin* securityOrigin, const KURL&
url) const |
62 { | 54 { |
63 return canRunInsecureContentInternal(securityOrigin, url, MixedContentCh
ecker::WebSocket); | 55 return canRunInsecureContentInternal(securityOrigin, url, true); |
64 } | 56 } |
65 static bool isMixedContent(SecurityOrigin*, const KURL&); | 57 static bool isMixedContent(SecurityOrigin*, const KURL&); |
66 | 58 |
67 private: | 59 private: |
68 enum MixedContentType { | |
69 Display, | |
70 Execution, | |
71 WebSocket, | |
72 Submission | |
73 }; | |
74 | |
75 // FIXME: This should probably have a separate client from FrameLoader. | 60 // FIXME: This should probably have a separate client from FrameLoader. |
76 FrameLoaderClient* client() const; | 61 FrameLoaderClient* client() const; |
77 | 62 |
78 bool canDisplayInsecureContentInternal(SecurityOrigin*, const KURL&, const M
ixedContentType) const; | 63 bool canRunInsecureContentInternal(SecurityOrigin*, const KURL&, bool isWebS
ocket) const; |
79 | 64 |
80 bool canRunInsecureContentInternal(SecurityOrigin*, const KURL&, const Mixed
ContentType) const; | 65 void logWarning(bool allowed, const String& action, const KURL&) const; |
81 | |
82 void logWarning(bool allowed, const KURL& i, const MixedContentType) const; | |
83 | 66 |
84 LocalFrame* m_frame; | 67 LocalFrame* m_frame; |
85 }; | 68 }; |
86 | 69 |
87 } // namespace WebCore | 70 } // namespace WebCore |
88 | 71 |
89 #endif // MixedContentChecker_h | 72 #endif // MixedContentChecker_h |
OLD | NEW |