summaryrefslogtreecommitdiffstats
path: root/net/socket_stream/socket_stream.h
Commit message (Collapse)AuthorAgeFilesLines
* Move some files from base to base/memory.levin@chromium.org2011-03-281-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | raw_scoped_refptr_mismatch_checker.h ref_counted.cc ref_counted.h ref_counted_memory.cc ref_counted_memory.h ref_counted_unittest.cc scoped_callback_factory.h scoped_comptr_win.h scoped_handle.h scoped_native_library.cc scoped_native_library.h scoped_native_library_unittest.cc scoped_nsobject.h scoped_open_process.h scoped_ptr.h scoped_ptr_unittest.cc scoped_temp_dir.cc scoped_temp_dir.h scoped_temp_dir_unittest.cc scoped_vector.h singleton.h singleton_objc.h singleton_unittest.cc linked_ptr.h linked_ptr_unittest.cc weak_ptr.cc weak_ptr.h weak_ptr_unittest.cc BUG=None TEST=Compile Review URL: http://codereview.chromium.org/6714032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79524 0039d316-1c4b-4281-b951-d872f2087c98
* net: Remove prefix net:: from some places that already are in namespace net.tfarina@chromium.org2011-01-191-3/+3
| | | | | | | | | | | This should address the wtc review in http://codereview.chromium.org/6338002/ BUG=64263 TEST=trybots Review URL: http://codereview.chromium.org/6322003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71787 0039d316-1c4b-4281-b951-d872f2087c98
* net: Remove typedef net::URLRequestContext URLRequestContext;tfarina@chromium.org2011-01-151-4/+4
| | | | | | | | | BUG=64263 TEST=compiled locally, trybots Review URL: http://codereview.chromium.org/6338002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71522 0039d316-1c4b-4281-b951-d872f2087c98
* Start reordering the methods in headers in net/.erg@google.com2011-01-071-7/+7
| | | | | | | | | | | | This patch also starts reordering some of the cc files to match their headers. More of both cleanups will be done in future patches. BUG=68682 TEST=compiles Review URL: http://codereview.chromium.org/6085013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70799 0039d316-1c4b-4281-b951-d872f2087c98
* Cache certificate verification results in memory.wtc@google.com2010-12-161-0/+1
| | | | | | | | | R=agl BUG=63357 TEST=none Review URL: http://codereview.chromium.org/5386001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69414 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 67662 - FBTF: Remove unneeded headers from base/ (part 10)thestig@chromium.org2010-11-301-0/+1
| | | | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/5139006 TBR=thestig@chromium.org Review URL: http://codereview.chromium.org/5270010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67674 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Remove unneeded headers from base/ (part 10)thestig@chromium.org2010-11-301-1/+0
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/5139006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67662 0039d316-1c4b-4281-b951-d872f2087c98
* Stop refcounting HostResolver.willchan@chromium.org2010-10-011-1/+1
| | | | | | | | | BUG=46049 TEST=none Review URL: http://codereview.chromium.org/3601002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61256 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: A giant cleanup to net/erg@google.com2010-08-311-0/+1
| | | | | | | | | | | | This moves all sorts of code from h files to cc files and reduces header dependencies. BUG=none TEST=compiles Review URL: http://codereview.chromium.org/3212008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58020 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Remove unnecessary STL #includes from src/net.viettrungluu@chromium.org2010-08-191-1/+0
| | | | | | | | | | | | This removes obviously unneeded inclusions of <map>, <set>, <string>, <vector>, etc. from src/net. BUG=none TEST=builds Review URL: http://codereview.chromium.org/3132022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56654 0039d316-1c4b-4281-b951-d872f2087c98
* Fix flaky WebSocket crash with url-with-credential.htmlukai@chromium.org2010-08-111-1/+1
| | | | | | | | | | | | | | | | | | | | url-with-credential.html sometimes crash: [15193:15197:8597261003639:FATAL:net/socket_stream/socket_stream.cc(393)] Check failed: OK == result (0 vs. -3) Backtrace: StackTrace::StackTrace() [0x81a3fca] logging::LogMessage::~LogMessage() [0x814f89f] net::SocketStream::DoLoop() [0x93ca7f1] net::SocketStream::DoClose() [0x93cb171] This happens if the SocketStream is closed while waiting in STATE_TCP_CONNECT. If state is STATE_TCP_CONNECT and result is not OK, it's ok to close. BUG=50394 TEST=url-with-credential.html doesn't crash Review URL: http://codereview.chromium.org/3154003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55648 0039d316-1c4b-4281-b951-d872f2087c98
* Fix WebSocket crash bug.ukai@chromium.org2010-08-051-0/+3
| | | | | | | | | | | | | | | | | | | | If SocketStream closes while waiting ResolveProxy, it badly calls DoResolveProxyComplete from DoLoop invoked by SocketStream::Close, and real callback of ResolveProxy failed to call SocketStream::OnIOCompleted. So, don't run DoLoop when closed, if SocketStream is calling APIs of proxy_service or resolver. Check closing_ after the API calls back and closes the SocketStream. r54707 broke SocketStreamTest::CloseFlushPendingWrite. This CL fixes this by not closing socket if it is still writing on the socket. BUG=50394, 46750 TEST=websocket/tests doesn't crash, and net_unittests passes Review URL: http://codereview.chromium.org/3076024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55043 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 54707 - Fix WebSocket crash bug.ukai@chromium.org2010-08-031-2/+0
| | | | | | | | | | | | | | | | | | | | If SocketStream closes while waiting ResolveProxy, it badly calls DoResolveProxyComplete from DoLoop invoked by SocketStream::Close, and real callback of ResolveProxy failed to call SocketStream::OnIOCompleted. So, don't run DoLoop when closed, if SocketStream is calling APIs of proxy_service or resolver. Check closing_ after the API calls back and closes the SocketStream. BUG=50394,46750 TEST=websocket/tests doesn't crash Review URL: http://codereview.chromium.org/3054039 TBR=ukai@chromium.org Review URL: http://codereview.chromium.org/3017053 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54709 0039d316-1c4b-4281-b951-d872f2087c98
* Fix WebSocket crash bug.ukai@chromium.org2010-08-031-0/+2
| | | | | | | | | | | | | | | | | If SocketStream closes while waiting ResolveProxy, it badly calls DoResolveProxyComplete from DoLoop invoked by SocketStream::Close, and real callback of ResolveProxy failed to call SocketStream::OnIOCompleted. So, don't run DoLoop when closed, if SocketStream is calling APIs of proxy_service or resolver. Check closing_ after the API calls back and closes the SocketStream. BUG=50394,46750 TEST=websocket/tests doesn't crash Review URL: http://codereview.chromium.org/3054039 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54707 0039d316-1c4b-4281-b951-d872f2087c98
* Net: Convert username and password to string16.thestig@chromium.org2010-07-291-2/+3
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/3040016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54101 0039d316-1c4b-4281-b951-d872f2087c98
* `#pragma once` for app, base, chrome, gfx, ipc, net, skia, viewsthakis@chromium.org2010-07-261-0/+1
| | | | | | | | | BUG=50273 TEST=everything still builds, build is 10% faster on windows, same speed on mac/linux TBR: erg git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53716 0039d316-1c4b-4281-b951-d872f2087c98
* Reduce static initializers by removing inline constructors anddavemoore@chromium.org2010-07-211-2/+2
| | | | | | | | | | | destructors from classes with instance members of type scoped_ptr_malloc<> Also remove #include of iostream from remaining header file. Review URL: http://codereview.chromium.org/2861065 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53190 0039d316-1c4b-4281-b951-d872f2087c98
* HttpAuthHandler's are no longer refcounted.cbentzel@chromium.org2010-06-071-1/+1
| | | | | | | | | | | | Since HttpAuthHandler objects are no longer contained inside of the HttpAuthCache, the lifetime of the handlers is more clearly defined. TEST=net_unittests (including some changes) BUG=42222 Review URL: http://codereview.chromium.org/2635004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49052 0039d316-1c4b-4281-b951-d872f2087c98
* SocketStream::Close() disconnect the socket after all pending data sent.ukai@chromium.org2010-05-211-0/+2
| | | | | | | | | | | | | | SocketStream::Close() immediately disconnected the socket even if it has some data to be sent. It is not desired behavior. Change to that Close() just requests to close the socket, and when all pending data have been processed, close the socket. BUG=none TEST=net_unittests passes Review URL: http://codereview.chromium.org/2066011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47880 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor WebSocket throttling feature.ukai@chromium.org2010-03-171-3/+6
| | | | | | | | | Protocol specific handling should be done in SocketStreamJob subclasss, so websocket throttling should be handled in WebSocketJob. Review URL: http://codereview.chromium.org/669157 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41818 0039d316-1c4b-4281-b951-d872f2087c98
* Generalize the net module's LoadLog facility from a passive container, to an ↵eroman@chromium.org2010-03-161-10/+3
| | | | | | | | | | | | | | | | event stream (NetLog). This makes it possible to associate a single NetLog with a URLRequestContext, and then attach observers to that log to watch the stream of events. This changelist attempts to do the most direct translation, so there will be subsequent iterations to clean up. The user-visible behavior should remain unchanged. BUG=37421 Review URL: http://codereview.chromium.org/848006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41689 0039d316-1c4b-4281-b951-d872f2087c98
* Fix memory leak in WebSocketJobTest.ukai@chromium.org2010-03-011-1/+1
| | | | | | | | | BUG=none TEST=no memory leak in valgrind test: net_unittests Review URL: http://codereview.chromium.org/661266 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40258 0039d316-1c4b-4281-b951-d872f2087c98
* Support HttpOnly cookie on Web Socketukai@chromium.org2010-03-011-9/+12
| | | | | | | | | | | | | | | | | | | | | | | | Web Socket should send "HttpOnly" cookie when handshaking. In WebKit/WebCore, WebSocketHandshake uses cookieRequestHeaderFieldValue() to get cookies including HttpOnly cookie. However, Chrome doesn't trunk renderer process, so we're not allowed to access HttpOnly cookie in WebCore. Thus, we handle HttpOnly cookies in browser process. Add SocketStreamJob as interface for protocol specific handling on SocketStream. WebSocketJob implements Web Socket specific handling. For now, it handles cookies in Web Socket. It checks Web Socket handshake request message from renderer process, and replaces Cookie: header to include HttpOnly cookies. It also checks Web Socket handshake response message, sets cookies if any, and strips Set-Cookie: header, so that renderer process couldn't see Set-Cookie: header. BUG=35660 TEST=net_unittests and layout_tests passes Review URL: http://codereview.chromium.org/601077 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40250 0039d316-1c4b-4281-b951-d872f2087c98
* Added factories for HttpAuthHandler.cbentzel@chromium.org2010-02-151-1/+3
| | | | | | | | | | | | | | | | | | | The driving rationale for this change was to prevent choosing an AuthHandler when it is not supported on the system due to a missing runtime component (such as not being able to locate a gssapi shared library when seeing a Negotiate scheme). It also has the advantage (currently unused) of determining some per-auth-scheme properties only the first time that a challenge for that scheme is seen (such as maximum token length for the SSPI implementation of NTLM). Finally, it may make unit tests easier to generate since the factory can be easily mocked. BUG=34795 TEST=New unit test for HttpAuthHandlerDispatchFactory. Review URL: http://codereview.chromium.org/582007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39065 0039d316-1c4b-4281-b951-d872f2087c98
* Try https proxy for websocket connection.ukai@chromium.org2009-11-161-0/+1
| | | | | | | | | | | | | | | Safari always uses "https" to get proxies for websocket connection, so chrome also tries it as well. Fix url replacement failure. We should use std::string instead of char[]. BUG=none TEST=net_unittests passes Review URL: http://codereview.chromium.org/397008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32050 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 32045.ukai@chromium.org2009-11-161-1/+0
| | | | | | Review URL: http://codereview.chromium.org/396009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32049 0039d316-1c4b-4281-b951-d872f2087c98
* Try https proxy for websocket connection.ukai@chromium.org2009-11-161-0/+1
| | | | | | | | | | | | Safari always uses "https" to get proxies for websocket connection, so chrome also tries it as well. BUG=none TEST=none Review URL: http://codereview.chromium.org/398004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32045 0039d316-1c4b-4281-b951-d872f2087c98
* Style nit -- bind asterisks to the left rather than right.eroman@chromium.org2009-11-131-1/+1
| | | | | | Review URL: http://codereview.chromium.org/384112 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31884 0039d316-1c4b-4281-b951-d872f2087c98
* Plumb LoadLog into SocketStreamukai@chromium.org2009-11-131-0/+12
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/385003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31881 0039d316-1c4b-4281-b951-d872f2087c98
* Metrics of SocketStreamukai@chromium.org2009-11-111-0/+3
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/380004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31650 0039d316-1c4b-4281-b951-d872f2087c98
* Second patch in making destructors of refcounted objects private.jam@chromium.org2009-11-051-2/+6
| | | | | | | | BUG=26749 Review URL: http://codereview.chromium.org/368001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31165 0039d316-1c4b-4281-b951-d872f2087c98
* Implement websocket throttling.ukai@chromium.org2009-11-041-2/+12
| | | | | | | | | | | | | | | | Implement the client-side requirements in the spec. 4.1 Handshake 1. If the user agent already has a Web Socket connection to the remote host (IP address) identified by /host/, even if known by another name, wait until that connection has been established or for that connection to have failed. BUG=none TEST=net_unittests passes Review URL: http://codereview.chromium.org/342052 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30949 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor SocketStream to report error to the delegate.ukai@chromium.org2009-10-301-5/+13
| | | | | | | | | | | | error status will be reported to the delegate (e.g. websocket experiment task) Finish() should be called at most once when STATE_CLOSE to STATE_NONE. BUG=none TEST=net_unittests didn't crash. Review URL: http://codereview.chromium.org/347026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30560 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 30551.ukai@chromium.org2009-10-301-12/+5
| | | | | | Review URL: http://codereview.chromium.org/342050 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30552 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor SocketStream to report error to the delegate.ukai@chromium.org2009-10-301-5/+12
| | | | | | | | | | | error status will be reported to the delegate (e.g. websocket experiment task) BUG=none TEST=none Review URL: http://codereview.chromium.org/346010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30551 0039d316-1c4b-4281-b951-d872f2087c98
* Add proxy basic auth support in net/socket_stream.ukai@chromium.org2009-10-271-1/+36
| | | | | | | | | BUG=none TEST=net_unittests passes Review URL: http://codereview.chromium.org/330016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30176 0039d316-1c4b-4281-b951-d872f2087c98
* A couple new io buffers that encapsulate more data and are therefore easier ↵vandebo@chromium.org2009-10-141-1/+1
| | | | | | | | | | | to use and easier to reason about. Inspired by RequestHeaders and ResponseHeaders in http_network_transaction.h Separated out of the refactoring of HttpNetworkTransaction to support pipelining. (http://codereview.chromium.org/249031) BUG=13289 TEST=none Review URL: http://codereview.chromium.org/264025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28978 0039d316-1c4b-4281-b951-d872f2087c98
* Add net/socket_stream.ukai@chromium.org2009-10-091-0/+254
This is used for WebSocket protocol. BUG=12497 TEST=none Review URL: http://codereview.chromium.org/243077 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28526 0039d316-1c4b-4281-b951-d872f2087c98