summaryrefslogtreecommitdiffstats
path: root/remoting/protocol
Commit message (Collapse)AuthorAgeFilesLines
* The authenticated_ fields are moved out of stubs and intosimonmorris@chromium.org2011-03-3113-274/+51
| | | | | | | | | | | | ClientSession. Messages to the stubs are dispatched via ClientSession, and the stub classes are pure virtual. BUG=none TEST=none Review URL: http://codereview.chromium.org/6724033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79991 0039d316-1c4b-4281-b951-d872f2087c98
* Moved socket adapters from remoting/jingle_glue to jingle/glue.sergeyu@chromium.org2011-03-313-16/+19
| | | | | | | | | BUG=None TEST=compiles, unittests Review URL: http://codereview.chromium.org/6776003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79929 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a few uninitialized members in remoting classes.finnur@chromium.org2011-03-285-10/+17
| | | | | | | | | BUG=None TEST=None CID=15507, 13722, 13617, 13913, 13614. Review URL: http://codereview.chromium.org/6696106 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79545 0039d316-1c4b-4281-b951-d872f2087c98
* Move some files from base to base/memory.levin@chromium.org2011-03-2822-44/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* ChromotingHost can have multiple connections, but only onesimonmorris@chromium.org2011-03-236-27/+44
| | | | | | | | | | | | | | | | | | | | authenticated connection. When a connection is authenticated, the host disconnects all other connections. The result is that if a client has disconnected without the host noticing, another client can connect immediately, without having to wait for the older connection to time out. The new ClientSession class encapsulates a ConnectionToClient and per-client state. It has taken the HostStub implementation away from DesktopEnvironment. BUG=70013 TEST=extra unit test; also see repro steps in BUG Review URL: http://codereview.chromium.org/6711033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79114 0039d316-1c4b-4281-b951-d872f2087c98
* Code cleanup related to allowed_bad_certs.wtc@chromium.org2011-03-141-1/+2
| | | | | | | | | | | | | | | | cert_status is a bitwise-OR of CERT_STATUS_xxx, not ERR_CERT_xxx. Initialize a CertAndStatus structure after checking it is needed. Fix a typo in comments. R=hclam BUG=none TEST=none Review URL: http://codereview.chromium.org/6677022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78123 0039d316-1c4b-4281-b951-d872f2087c98
* Clear authenticated state on client disconnection.lambroslambrou@chromium.org2011-03-147-0/+40
| | | | | | | | | BUG=75553 TEST=Connect client to host, disconnect then connect again (after 2 minutes). Review URL: http://codereview.chromium.org/6684006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78046 0039d316-1c4b-4281-b951-d872f2087c98
* Inject custom NetworkManager to JingelClienthclam@google.com2011-03-091-0/+2
| | | | | | | | | | | This will enable using p2papi in the renderer by chromoting client. BUG=None TEST=None Review URL: http://codereview.chromium.org/6660005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77540 0039d316-1c4b-4281-b951-d872f2087c98
* Fix handling of invalid certificates in JingleSessionManager.sergeyu@chromium.org2011-03-081-1/+4
| | | | | | | | | BUG=None TEST=None Review URL: http://codereview.chromium.org/6649005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77359 0039d316-1c4b-4281-b951-d872f2087c98
* Replace libjingle's HttpPortAllocatorSession with Pepper's http clienthclam@google.com2011-03-083-5/+16
| | | | | | | | | | | | | | | | | HttpPortAllocatorSession uses libjingle's http client to establish relay connection. This will not work in the sanboxed case since it access OS level of network directly. This patch replaces the http client with URL loader in pepper. This goes through the standard URL fetching system for chrome to get around the sandbox problem. BUG=51198 TEST=Force libjingle to use relay and try it with this code. Review URL: http://codereview.chromium.org/6623048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77218 0039d316-1c4b-4281-b951-d872f2087c98
* Chromoting client don't submit login info if not connectedhclam@chromium.org2011-03-072-6/+24
| | | | | | | | | | | Chromoting client was crashing if it sends login info when not connected. BUG=None TEST=None Review URL: http://codereview.chromium.org/6621046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77190 0039d316-1c4b-4281-b951-d872f2087c98
* Configure Nagle's & Delayed ACK settings for Chromoting channels.wez@chromium.org2011-03-071-0/+13
| | | | | | | | | BUG=74944 TEST=See bug description. Review URL: http://codereview.chromium.org/6621027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77167 0039d316-1c4b-4281-b951-d872f2087c98
* Wire up the codepath from Javascript into Jingle for IQ packets.ajwong@chromium.org2011-03-072-10/+32
| | | | | | | | | | | Flushes out XmppProxy, the thread-safe interface that matches up Pepper with Jingle and plumbs a ConnectSandboxed method through everything so that the connection type can be chosen at runtime. BUG=51198 TEST=Check that stanzas are sent/received from JS, and that xmpp still works. Review URL: http://codereview.chromium.org/6603036 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77148 0039d316-1c4b-4281-b951-d872f2087c98
* Block event processing on host/client until the client has authenticated.garykac@chromium.org2011-03-0414-46/+253
| | | | | | | | | | | | | | | | | | Input events: * Client will not send them * Host will not process them Control events: * Client will only process BeginSessionResponse * Host will only process BeginSessionRequest All other control messages will be ignored. BUG=72466 TEST=manual+tests Review URL: http://codereview.chromium.org/6594138 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76974 0039d316-1c4b-4281-b951-d872f2087c98
* Integrate P2P Sockets IPC with chromoting plugin.sergeyu@chromium.org2011-03-042-5/+19
| | | | | | | | | BUG=None TEST=None Review URL: http://codereview.chromium.org/6624020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76964 0039d316-1c4b-4281-b951-d872f2087c98
* Switch to new libjingle branch.sergeyu@chromium.org2011-03-042-1/+7
| | | | | | | | | BUG=None TEST=Compiles, Unittests Review URL: http://codereview.chromium.org/6626010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76913 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor JingleClient to support thunking the xmpp signaling into Javascript.ajwong@chromium.org2011-03-033-5/+17
| | | | | | | | | | | We do this so that we may make HTTP requests using the javascript libraries available to Google Talk. This is required to allow us to sandbox. BUG=none TEST=none Review URL: http://codereview.chromium.org/6597092 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76746 0039d316-1c4b-4281-b951-d872f2087c98
* SocketWrapper for interfacing between JingleSession and SSL socketshclam@chromium.org2011-03-024-15/+122
| | | | | | | | | | | | | | | | Remoting code allows sockets to be destroyed on threads other than the network thread, although they are only accessed on network thread. If SSL sockets are destroyed too early some remotings objects will crash accessing them. This patch introduces a SocketWrapper that destroys SSL sockets on the network thread but stay alive so that remoting objects can operate safely. BUG=72670 TEST=None Review URL: http://codereview.chromium.org/6525007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76635 0039d316-1c4b-4281-b951-d872f2087c98
* Fix up mac test client and simple host for remoting.dmaclach@chromium.org2011-03-021-0/+5
| | | | | | | | | | | | | Remoting's test client and simple host weren't initializing the NSApplication correctly which is required for MessageLoops to work on the Mac. These are just test apps that we use, so I felt it was ok to bring in code from base/test. Also added a check to message_pump_mac.mm to verify that NSApp is initialized before we attempt to use it. BUG=NONE TEST=BUILD Review URL: http://codereview.chromium.org/6461023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76624 0039d316-1c4b-4281-b951-d872f2087c98
* Fold jingle_connection_to_host into connection_to_host.garykac@chromium.org2011-02-284-305/+221
| | | | | | | | | BUG=none TEST=unittests Review URL: http://codereview.chromium.org/6532099 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76306 0039d316-1c4b-4281-b951-d872f2087c98
* [chromoting] Fix crash in JingleSession.sergeyu@chromium.org2011-02-091-2/+3
| | | | | | | | | | | | | With ToT JingleSession may DCHECK in SetState() when the other end disconnects. Don't call SetState() in ReleaseSession(), as it is not neccessary. BUG=None TEST=Unittests Review URL: http://codereview.chromium.org/6456015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74235 0039d316-1c4b-4281-b951-d872f2087c98
* Another big out-of-lining of test code. Hits a lot of gmock objectserg@google.com2011-02-081-1/+1
| | | | | | | | | BUG=none TEST=compiles Review URL: http://codereview.chromium.org/6413036 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74168 0039d316-1c4b-4281-b951-d872f2087c98
* Fix and enable JingleSessionTest.*. Disable these tests under TSan.sergeyu@chromium.org2011-02-084-57/+58
| | | | | | | | | BUG=70225 TEST=None Review URL: http://codereview.chromium.org/6246051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74080 0039d316-1c4b-4281-b951-d872f2087c98
* More out-of-lining of test code, along with a bunch of GMOCK objects.erg@google.com2011-02-083-13/+59
| | | | | | | | | | | Most notably, rename various mock_objects.h files in remoting/ because after deinlining, there were compile failures. This fixes Windows compiling because you can't have two implementation files with the same name in a project, even if they are in different directories. (The output from one compile will clobber the others!) BUG=none TEST=compiles Review URL: http://codereview.chromium.org/6250198 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74059 0039d316-1c4b-4281-b951-d872f2087c98
* Disable JingleSessionTest.TestEventChannel, flakily triggersphajdan.jr@chromium.org2011-02-071-1/+2
| | | | | | | | | | | | | | | | | a libjingle assertion on a Windows trybot. This is not a tsan-specific issue. http://build.chromium.org/p/tryserver.chromium/builders/win/builds/14297 vm7-m4 TBR=sergeyu BUG=70225 TEST=remoting_unittests Review URL: http://codereview.chromium.org/6312182 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73974 0039d316-1c4b-4281-b951-d872f2087c98
* Remove auto generation of certificate when chromoting client connectshclam@chromium.org2011-02-045-53/+45
| | | | | | | | | | | Generate certificate once and reuse it in all chromoting session. BUG=None TEST=None Review URL: http://codereview.chromium.org/6246077 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73781 0039d316-1c4b-4281-b951-d872f2087c98
* Disable JingleSessionTest.Connect, JingleSessionTest.TestControlChannelphajdan.jr@chromium.org2011-02-021-2/+4
| | | | | | | | | | | | | | Those tests flakily trigger a libjingle assertion: Error(common.cc:67): e:\b\build\slave\win\build\src\third_party\libjingle\source\talk\session\tunnel\pseudotcpchannel.cc(281): ASSERT FAILED: stream_ != NULL && stream_thread_->IsCurrent() @ cricket::PseudoTcpChannel::Close TBR=hclam BUG=70225 TEST=remoting_unittests Review URL: http://codereview.chromium.org/6334046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73436 0039d316-1c4b-4281-b951-d872f2087c98
* Chromoting host to respond to BeginSessionRequesthclam@chromium.org2011-01-292-0/+15
| | | | | | | | | | | | ChromotingHost to respond to BeginSessionRequest, pretending login was successul. This allows chromoting client to send login command and proceed. BUG=None TEST=None Review URL: http://codereview.chromium.org/6144002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73052 0039d316-1c4b-4281-b951-d872f2087c98
* Resubmit "Fix crashes in ChromotingHost"hclam@chromium.org2011-01-282-6/+35
| | | | | | | | | | | | Simplified the test to run on the main message loop. Also fixed a possible memory leak caught by valgrind. BUG=70903 TEST=None Review URL: http://codereview.chromium.org/6245016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73023 0039d316-1c4b-4281-b951-d872f2087c98
* Remove aggressive DCHECK in remoting::protocol::MessageReader()hclam@chromium.org2011-01-281-2/+0
| | | | | | | | | | | DCHECK(!read_pending_) actually may happen and causes unnecessary crashes. BUG=None TEST=None Review URL: http://codereview.chromium.org/6359018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72971 0039d316-1c4b-4281-b951-d872f2087c98
* Use a random number to generate a self-signed certiciate for chromotinghclam@chromium.org2011-01-271-1/+5
| | | | | | | | | | | | | | | | Chromoting host to use a random number to generate self-signed certificate. This method is still not optimal, in case of collision SSLServerSocketNSS will fail to start due to NSS rejecting the certificate. Using a random number is a temporary solution until we can assign certificates to the host. BUG=70013 TEST=Connect to the same chromoting host after client is disconnected. Review URL: http://codereview.chromium.org/6315009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72745 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Fix crashes in ChromotingHost"hclam@chromium.org2011-01-262-35/+6
| | | | | | | | | | | | | | Reverting the patch since it exposed several memory leaks and threading problems. TBR=thakis BUG=70935 TEST=None Review URL: http://codereview.chromium.org/6266023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72679 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed memory leaks in remoting_unittests.sergeyu@chromium.org2011-01-261-6/+11
| | | | | | | | | BUG=70826 TEST=remoting_unittests under valgrind Review URL: http://codereview.chromium.org/6266020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72601 0039d316-1c4b-4281-b951-d872f2087c98
* Add PepperViewProxy to protect PepperView and ChromotingInstance on shutdownhclam@chromium.org2011-01-261-1/+0
| | | | | | | | | | | | | | Adding a refcounted PepperViewProxy so that we can detach PepperView when ChromotingInstance is destroyed. PepperViewProxy also performs the task of thread delegation for PepperView so we can assume PepperView is used only on pepper thread. BUG=65696 TEST=None Review URL: http://codereview.chromium.org/6359010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72568 0039d316-1c4b-4281-b951-d872f2087c98
* Fix crashes in ChromotingHosthclam@chromium.org2011-01-252-6/+35
| | | | | | | | | | | | Capturer should be owned by ScreenRecoder. This patch also addes test to test reconnection of ChromotingHost. BUG=69969 TEST=ChromotingHostTest.* Review URL: http://codereview.chromium.org/6266010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72543 0039d316-1c4b-4281-b951-d872f2087c98
* Changed MessageReader so that it doesn't read from the socket if there aresergeyu@chromium.org2011-01-2216-138/+418
| | | | | | | | | | | other messages being processed. Added unittests for MessageReader. BUG=None TEST=Unittests Review URL: http://codereview.chromium.org/6271004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72262 0039d316-1c4b-4281-b951-d872f2087c98
* Enable session resumption in SSLServerSocketNSS and unit testshclam@chromium.org2011-01-211-1/+0
| | | | | | | | | | | | SSL_ConfigServerSessionIDCache() is being used in SSLServerSocketNSS and enabling session resumption since passes are now passing. BUG=67236 TEST=net_unittests, remoting_unittests Review URL: http://codereview.chromium.org/6370008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72186 0039d316-1c4b-4281-b951-d872f2087c98
* Fix memory leak in JingleSessionTest.Connect and friendshclam@chromium.org2011-01-211-1/+1
| | | | | | | | | | | | Private key is cloned instead of transferred. This eliminates the leak in JingleSessionTest.*. BUG=70291 TEST=valgrind bot is green Review URL: http://codereview.chromium.org/6317009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72164 0039d316-1c4b-4281-b951-d872f2087c98
* Remove obsolete base/lock.h and fix up callers to use the new header file andbrettw@chromium.org2011-01-215-18/+16
| | | | | | | | | | | the base namespace. Fix several files including lock.h unnecessarily. BUG=none TEST=none Original review=http://codereview.chromium.org/6142009/ Patch by leviw@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72106 0039d316-1c4b-4281-b951-d872f2087c98
* Enable JingleSessionTest on windowshclam@chromium.org2011-01-191-23/+1
| | | | | | | | | | | TBR=wtc BUG=67928 TEST=JingleSessionTest.* should pass on XP bot Review URL: http://codereview.chromium.org/6338010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71875 0039d316-1c4b-4281-b951-d872f2087c98
* Simplified MessageReader and MessageDecoder classes.sergeyu@chromium.org2011-01-1417-164/+110
| | | | | | | | | | | | Now these two classes are not templates, and just handle raw data. New ProtobufMessageReader is used to parse messages. BUG=None TEST=Unittests. Review URL: http://codereview.chromium.org/6277003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71497 0039d316-1c4b-4281-b951-d872f2087c98
* Move CancellationFlag and WaitableEvent to the synchronization subdirectory.brettw@chromium.org2011-01-021-1/+1
| | | | | | | | TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/5977010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70369 0039d316-1c4b-4281-b951-d872f2087c98
* Disable JingleSessionTests on Windowshclam@chromium.org2010-12-231-1/+2
| | | | | | | | | | | | Fixing remoting_unittests crash on XP. TBR=sergeyu BUG=67928 TEST=None Review URL: http://codereview.chromium.org/5963005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70103 0039d316-1c4b-4281-b951-d872f2087c98
* Use certificate and key files instead of generating them each time for unit ↵hclam@chromium.org2010-12-233-10/+58
| | | | | | | | | | | tests. BUG= TEST= Review URL: http://codereview.chromium.org/6018008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70097 0039d316-1c4b-4281-b951-d872f2087c98
* Send certificate in content description in jingle for Chromotinghclam@chromium.org2010-12-235-61/+96
| | | | | | | | | | | | Transmit the server certificate to the client via content description. This allow secure encryption between Chromoting host and client. BUG=None TEST=remoting_unittests Review URL: http://codereview.chromium.org/5804001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70075 0039d316-1c4b-4281-b951-d872f2087c98
* Add an extra SSL layer in JingleSession for Chromotinghclam@chromium.org2010-12-235-66/+341
| | | | | | | | | | | | | | | Wrap the existing StreamSocketAdpaters in JingleSession with an extra of SSLClientSocket and SSLServerSocket. Since the server certificate is self-signed, SSLClientSocket will refuse to connect. An additional patch is needed to transmit the certificate via other channels so client sSL socket can accept this untrusted certificate. BUG=None TEST=remoting_unittests Review URL: http://codereview.chromium.org/5675003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70074 0039d316-1c4b-4281-b951-d872f2087c98
* Chromoting protocol layers to receive and send login messageshclam@chromium.org2010-12-2315-110/+274
| | | | | | | | | BUG=None TEST=None Review URL: http://codereview.chromium.org/6030007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70036 0039d316-1c4b-4281-b951-d872f2087c98
* Fix leaks in RtpVideoReaderTest.sergeyu@chromium.org2010-12-101-0/+4
| | | | | | | | | BUG=65988 TEST=unittests under heapcheck Review URL: http://codereview.chromium.org/5777001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68878 0039d316-1c4b-4281-b951-d872f2087c98
* Simplified frame rate control in the chromoting host.sergeyu@chromium.org2010-12-097-32/+64
| | | | | | | | | | | | | | | | Insted of keeping semi-fixed frame rate, now capturing rate is controlled by how fast we can send data to the client. Capturing of frame n is started only after frame n-2 is sent (while n-1 is being encoded). This guarantees that we don't clog the video channel buffers, and that we start capturing only if we know that the frame will not need to wait for too long in the buffer. TEST=None BUG=None Review URL: http://codereview.chromium.org/5634002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68688 0039d316-1c4b-4281-b951-d872f2087c98
* Remove ChromotingClientMessagegarykac@chromium.org2010-12-082-14/+14
| | | | | | | | | BUG=None TEST=Remoting unittests Review URL: http://codereview.chromium.org/5559011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68627 0039d316-1c4b-4281-b951-d872f2087c98