summaryrefslogtreecommitdiffstats
path: root/remoting/host
Commit message (Collapse)AuthorAgeFilesLines
* Cleanup AuthenticationMethod usage.sergeyu2016-03-091-7/+4
| | | | | | | | | | | | | | | | | | Previously AuthenticationMethod type was used in many places. Removed all dependencies on it except from NegotiatingAuthenticator classes. AuthenticationMethod has been moved to NegotiatingAuthenticatorBase::Method. Also includes the following cleanups: - removed old authentication functions from auth_util.cc which were no longer needed. - Remove HashFunction enum as it wasn't useful. BUG=589698 Review URL: https://codereview.chromium.org/1768383004 Cr-Commit-Position: refs/heads/master@{#380078}
* Prepare remoting/ for compilation with OS X 10.7 deployment target.erikchen2016-03-092-138/+5
| | | | | | | | | | | | Now that base/ compiles as a 64-bit target, there is no reason for remoting/ to duplicate logic. The logic in base/ has been updated to not emit compile warning when compiling with a OS X 10.7 deployment target. BUG=592663 Review URL: https://codereview.chromium.org/1778763002 Cr-Commit-Position: refs/heads/master@{#380027}
* Change scoped_ptr to a type alias for std::unique_ptr on OS_WINdcheng2016-03-081-1/+1
| | | | | | | | | | | | | | This also removes the infinite recursion part of the ReferenceCycle test. While it's nice not to crash like this, [unique.ptr.single.dtor] doesn't actually require ~unique_ptr to reset the stored pointer to nullptr on destruction. Thus, infinite recursion, while not useful, is allowed per the spec. BUG=554298,579269 Review URL: https://codereview.chromium.org/1763983002 Cr-Commit-Position: refs/heads/master@{#379962}
* Remove first_message argument from AuthenticatorFactory::Create().sergeyu2016-03-073-9/+5
| | | | | | | | | The first_message parameter in AuthenticatorFactory::Create() is no longer used anywhere, so it can be removed. Review URL: https://codereview.chromium.org/1769603005 Cr-Commit-Position: refs/heads/master@{#379592}
* Simplify AuthenticationMethod type and PIN hash handling.sergeyu2016-03-043-19/+46
| | | | | | | | | | | | | | | | | | | | | 1 Previously AuthenticationMethod was a class. Replaced it with a simple enum. 2 Removed SharedSecretHash struct and simplified the code that passes around PIN hash. 3 If the host config contains PIN in plain text then now the host hashes it instead of using spake2_plain authenticator method. This means that spake2_hmac is always used for Me2Me even when the PIN is not hashed in the config. This change will make it easier to add new authentication methods. BUG=589698 Review URL: https://codereview.chromium.org/1755273003 Cr-Commit-Position: refs/heads/master@{#379365}
* [remoting host] Add comments to explain some DCHECKslambroslambrou2016-03-031-0/+5
| | | | | | | | | Some DCHECKS relating to ThirdPartyAuthConfig were non-obvious, so this adds some clarifying comments. Review URL: https://codereview.chromium.org/1760773002 Cr-Commit-Position: refs/heads/master@{#379052}
* Use a non-deprecated method to get a string from an OSStatus error.erikchen2016-03-011-1/+3
| | | | | | | | | | | The functions GetMacOSStatusErrorString() and GetMacOSStatusCommentString() have been deprecated since OSX 10.8. The official replacement is NSError. BUG=547071 Review URL: https://codereview.chromium.org/1753523002 Cr-Commit-Position: refs/heads/master@{#378564}
* remoting: Add out-of-line copy ctors for complex classes.vmpstr2016-02-262-0/+3
| | | | | | | | | | | | | This patch adds out of line copy constructors for classes that our clang-plugin considers heavy. This is an effort to enable copy constructor checks by default. BUG=436357 R=garykac@chromium.org, dcheng@chromium.org, thakis@chromium.org Review URL: https://codereview.chromium.org/1736633002 Cr-Commit-Position: refs/heads/master@{#377988}
* Respect display rotation on Chrome OS.kelvinp2016-02-261-5/+8
| | | | | | | | | | | We need to use layer->GetTargetTransform() instead of layer->transform() as the display may be animating while we are setting the root window transform. BUG=515561 Review URL: https://codereview.chromium.org/1712343004 Cr-Commit-Position: refs/heads/master@{#377725}
* Improve handling of invalid command line in Me2Me host.sergeyu2016-02-256-8/+7
| | | | | | | | | | | | Previously the host was DCHECK'ing in remoting::ExitCodeToString() when started with invalid command line. This was happening because kHostExitCodeStrings didn't contain all possible error codes. Also the host was trying to report offline reason, but it makes no sense to report offline reason in this case. Review URL: https://codereview.chromium.org/1735523003 Cr-Commit-Position: refs/heads/master@{#377472}
* base: Stop overloading ReadFileToString()hashimoto2016-02-241-1/+2
| | | | | | | | | | | | | | | | | | | | With the existing code, base::Bind(&base::ReadFileToString) doesn't compile because the compiler cannot infer the argument's type (2-argument version or 3-argument version). base::Bind<bool(*)(const base::FilePath&, std::string*)>(&base::ReadFileToString) compiles but it doesn't look desirable. As our style guide discourages function overloading(*), rename the 3-argument version (added in http://crrev.com/157593005) to stop overloading. *https://google.github.io/styleguide/cppguide.html#Function_Overloading BUG=None TBR=sgurun@chromium.org for android_webview, derat@chromium.org for chromeos/accelerometer, bartfab@chromium.org for components/policy, dsinclair@chromium.org for components/tracing, estade@chromium.org for content/browser/webui, sergeyu@chromium.org for remoting Review URL: https://codereview.chromium.org/1719983005 Cr-Commit-Position: refs/heads/master@{#377209}
* Removing Linux specific GnubbyAuthHandler header file.joedow2016-02-245-116/+91
| | | | | | | | | | | | | | | | | | | | This change is a result of feedback from the GnubbyAuthHandler refactoring. Since we will have platform specific implementations of the GnubbyAuthHandler, we should try to have a single header defining the interface and platform specific cc files for the impl. The Linux impl had a header which was used by its unit tests, however I think the test methods could be generic enough that the ForTest() methods make sense to have on the interface as the unittests for each impl will use them. This simplifies the code in the unittests and allows us to hide the platform specific impls in the cc file and remove the platform specific headers. BUG=587298 Review URL: https://codereview.chromium.org/1720243002 Cr-Commit-Position: refs/heads/master@{#377167}
* net: move IsLocalhost() function into url_util.htfarina2016-02-232-2/+0
| | | | | | | | | | | | | | This patch moves the last function in net_util.h into url_util.h. We are moving it there because it also operates on a URL part (host). BUG=488531 TEST=net_unittests --gtest_filter=UrlUtilTest.IsLocalhost R=eroman@chromium.org TBR=darin@chromium.org Review URL: https://codereview.chromium.org/1726693002 Cr-Commit-Position: refs/heads/master@{#377115}
* Move Linux specific methods out of GnubbyAuthHandler classjoedow2016-02-224-12/+3
| | | | | | | | | | | | | This change moves the GnubbySocketName static method out of the GnubbyAuthHandler class and into the GnubbySocket class. This cleans up the GnubbyAuthHandler interface for platforms which do not use sockets for gnubby connections. BUG=587298 Review URL: https://codereview.chromium.org/1724443002 Cr-Commit-Position: refs/heads/master@{#376799}
* Move remoting/remoting_host_win.gypi:remoting_breakpad_tester to gnzijiehe2016-02-211-1/+1
| | | | | | | | BUG=512899 Review URL: https://codereview.chromium.org/1710933004 Cr-Commit-Position: refs/heads/master@{#376662}
* Updating webapp to send securityKey capability.joedow2016-02-201-1/+1
| | | | | | | | | | | | | | | | | This change updates the CRD webapp to send the securityKey capability to the host if the appropriate gnubby extension exists (which we would use to resolve gnubby requests). The only interesting bit in this change is that there is no synchronous API to check for extension existence in Chrome (that I could find) so we need to use a promise to wait for either a disconnect message or a response to a Hello message to determine if the extension exists. BUG=585835 Review URL: https://codereview.chromium.org/1707163002 Cr-Commit-Position: refs/heads/master@{#376654}
* Prevent creation of the GnubbyExtension if no socket name is defined.joedow2016-02-181-6/+10
| | | | | | | | | | | | | | | | | | This change fixes a DCHECK on linux when the host is run without specifying a socket name. Typically the host has a name passed in as an argument however it is not required and may be skipped for a number of reasons. The fix here is to skip the creation of the GnubbyExtension if a socket name is not passed in. The net effect of this is that if a CRD client passes a gnubby-auth extension message, the ClientSession will look for a registered extension to handle the message (which won't exist) and the message will be ignored. BUG=587622 Review URL: https://codereview.chromium.org/1710653002 Cr-Commit-Position: refs/heads/master@{#376079}
* Refactoring platform-agnostic Gnubby Auth Handler logic into a Host Extension.joedow2016-02-1729-517/+1006
| | | | | | | | | | | | | | | | | This change breaks the logic in the GnubbyAuthHandlerLinux class into platform-specific and platform-agnostic chunks. The platform-specific logic has remained in the GnubbyAuthHandlerLinux class whereas the platform-agnostic code was moved into a new HostExtension class (GnubbyHostExtensionSession). This allows us to add a Gnubby host extension if it is supported by policy and remove the logic and plumbing for gnubby message handling from ClientSession and the many DesktopEnvironment classes. BUG=584463 Review URL: https://codereview.chromium.org/1689003002 Cr-Commit-Position: refs/heads/master@{#375797}
* Clean up public interface of AttachmentBrokerUnprivileged.erikchen2016-02-173-21/+14
| | | | | | | | | | | | | | | | | In the old interface, a static factory method returns a scoped_ptr, and the caller had to manage the lifetime. Since this is a global object with minimal memory footprint, and is required to outlive every IPC::Channel, it's much easier for the global to never be destroyed. This also matches the interface for AttachmentBrokerPrivileged. BUG=584297 Committed: https://crrev.com/11fea2242b3a197993dbd5a1f977f9a31c6b98e4 Cr-Commit-Position: refs/heads/master@{#375674} Review URL: https://codereview.chromium.org/1679763002 Cr-Commit-Position: refs/heads/master@{#375776}
* Revert of Clean up public interface of AttachmentBrokerUnprivileged. ↵erikchen2016-02-173-14/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (patchset #6 id:120001 of https://codereview.chromium.org/1679763002/ ) Reason for revert: failures on Chromium Memory FYI: http://build.chromium.org/p/chromium.memory.fyi/ Failure notification for "memory test: remoting" on "Chromium Mac (valgrind)(2)". Please see if the failures are related to your commit and take appropriate actions (e.g. revert, update suppressions, notify sheriff, etc.). For more info on the memory waterfall please see these links: http://dev.chromium.org/developers/tree-sheriffs/sheriff-details-chromium/memory-sheriff http://dev.chromium.org/developers/how-tos/using-valgrind http://dev.chromium.org/developers/how-tos/using-valgrind/threadsanitizer By the way, the current memory sheriff is on the CC list. http://build.chromium.org/p/chromium.memory.fyi/builders/Chromium%20Mac%20%28valgrind%29%282%29/builds/37788 Original issue's description: > Clean up public interface of AttachmentBrokerUnprivileged. > > In the old interface, a static factory method returns a scoped_ptr, and the > caller had to manage the lifetime. Since this is a global object with minimal > memory footprint, and is required to outlive every IPC::Channel, it's much > easier for the global to never be destroyed. This also matches the interface for > AttachmentBrokerPrivileged. > > BUG=584297 > > Committed: https://crrev.com/11fea2242b3a197993dbd5a1f977f9a31c6b98e4 > Cr-Commit-Position: refs/heads/master@{#375674} TBR=tsepez@chromium.org,avi@chromium.org,mseaborn@chromium.org,sergeyu@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=584297 Review URL: https://codereview.chromium.org/1704743002 Cr-Commit-Position: refs/heads/master@{#375739}
* Add message from grandchild to parent to indicate successful host launch.jamiewalch2016-02-161-8/+33
| | | | | | | | | | | | | | | | Previously, the grandparent process would assume the host started successfully if the grandchild closed the pipe. However, this happens regardless of the exit code of the grandchild process. This CL allows commands to be sent between the processes in addition to log messages, and defines an explicit command to indicate successful start-up; if the grandparent does not receive this command, it indicates failure via a non-zero exit code. BUG=332930 TEST=chmod -x remoting_me2me_host; linux_me2me_host.py --start; echo $? (should give 1) Review URL: https://codereview.chromium.org/1685793003 Cr-Commit-Position: refs/heads/master@{#375680}
* Clean up public interface of AttachmentBrokerUnprivileged.erikchen2016-02-163-21/+14
| | | | | | | | | | | | | | In the old interface, a static factory method returns a scoped_ptr, and the caller had to manage the lifetime. Since this is a global object with minimal memory footprint, and is required to outlive every IPC::Channel, it's much easier for the global to never be destroyed. This also matches the interface for AttachmentBrokerPrivileged. BUG=584297 Review URL: https://codereview.chromium.org/1679763002 Cr-Commit-Position: refs/heads/master@{#375674}
* Use IpcVideoFrameCapturer on network thread instead of capture thread.sergeyu2016-02-1528-327/+195
| | | | | | | | | | | | | | | | | Previously IpcVideoFrameCapturer was called on the capturer thread, while all IPC messages are sent and received on the network thread. Now DesktopEnvironment implementations are responsible for creation of DesktopCapturerProxy and MouseCursorMonitorProxy if necessary. This allows to avoid capture thread on windows in the network process. Also cleaned up unnecessary references to various task runners from ChromotingHost and ClientSession. BUG=458437 Review URL: https://codereview.chromium.org/1673723002 Cr-Commit-Position: refs/heads/master@{#375412}
* Use scoped_ptr<> for the argument in DesktopSessionAgent::SendToNetwork()sergeyu2016-02-132-22/+26
| | | | | | | | | Previously ownership was passed using a raw pointer, which makes it possible for the parameter to object to leak. Review URL: https://codereview.chromium.org/1689263002 Cr-Commit-Position: refs/heads/master@{#375326}
* Update webrtc::DesktopCapturere clients to use SharedMemoryFactorysergeyu2016-02-128-107/+95
| | | | | | | | | webrtc::DesktopCapturer::Callback::CreateSharedMemory() has been deprecated and webrtc::SharedMemoryFactory should be used instead now. Review URL: https://codereview.chromium.org/1690853002 Cr-Commit-Position: refs/heads/master@{#375224}
* net: move GetHostName() function into network_interfaces.htfarina2016-02-123-3/+3
| | | | | | | | | | | | | | | | This patch moves it from net_util to network_interfaces because the hostname is a name for one of the machine's addresses. There could be multiple names based on the multiple addresses for the various interfaces, so this seems like a reasonable place. BUG=488531 TEST=net_unittests --gtest_filter=NetworkInterfacesTest.* R=eroman@chromium.org TBR=darin@chromium.org # for changes outside of net Review URL: https://codereview.chromium.org/1696533002 Cr-Commit-Position: refs/heads/master@{#375102}
* Use UrlRequest in PortAllocator.sergeyu2016-02-112-4/+8
| | | | | | | | | | | | | | | PepperPortAllocator and ChromiumPortAllocator were different only in how they were sending HTTP requests to allocate relay session. They were using pp::URLLoader and net::URLFetcher respectively, but otherwise contained largely the same logic. Now URL request logic is abstracted with remoting::UrlRequest interface and so a single PortAllocator implementation can be used in all cases. BUG=577954 Review URL: https://codereview.chromium.org/1681393006 Cr-Commit-Position: refs/heads/master@{#375042}
* Delete PolicyWatcherTest.TestRealChromotingPolicyjamiewalch2016-02-111-65/+0
| | | | | | | | BUG=517918 Review URL: https://codereview.chromium.org/1686883002 Cr-Commit-Position: refs/heads/master@{#374961}
* Remove AsyncResult::RESULT_FAILED_DIRECTORY. It's not used anywhere other ↵jamiewalch2016-02-112-6/+0
| | | | | | | | than some code to communicate it to the webapp (where it's also not used). Review URL: https://codereview.chromium.org/1687543004 Cr-Commit-Position: refs/heads/master@{#374837}
* Revert of Clean up public interface of AttachmentBrokerUnprivileged. ↵erikchen2016-02-103-8/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (patchset #4 id:80001 of https://codereview.chromium.org/1679763002/ ) Reason for revert: c:\b\build\slave\win\build\src\remoting\host\remoting_me2me_host.cc(937) : error C2065: 'attachment_broker_' : undeclared identifier http://build.chromium.org/p/chromium/builders/Win/builds/40168 Original issue's description: > Clean up public interface of AttachmentBrokerUnprivileged. > > In the old interface, a static factory method returns a scoped_ptr, and the > caller had to manage the lifetime. Since this is a global object with minimal > memory footprint, and is required to outlive every IPC::Channel, it's much > easier for the global to never be destroyed. This also matches the interface for > AttachmentBrokerPrivileged. > > BUG=584297 TBR=tsepez@chromium.org,avi@chromium.org,mseaborn@chromium.org,sergeyu@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=584297 Review URL: https://codereview.chromium.org/1688433005 Cr-Commit-Position: refs/heads/master@{#374771}
* Clean up public interface of AttachmentBrokerUnprivileged.erikchen2016-02-103-20/+8
| | | | | | | | | | | | | | In the old interface, a static factory method returns a scoped_ptr, and the caller had to manage the lifetime. Since this is a global object with minimal memory footprint, and is required to outlive every IPC::Channel, it's much easier for the global to never be destroyed. This also matches the interface for AttachmentBrokerPrivileged. BUG=584297 Review URL: https://codereview.chromium.org/1679763002 Cr-Commit-Position: refs/heads/master@{#374759}
* Refactor gmock_mutant.htzik2016-02-102-4/+8
| | | | | | | | | | | | | | | | This CL contains: * Expose resulting type of Bind as MakeUnboundRunType. * Refactor testing::CreateFunctor using base::Bind. * Remove generate_gmock_mutant.py. * Change argument ordering of testing::CreateFunctor to align to base::Bind. * Remove LATE_OBJECT_BINDING support, which no one use. BUG=554299 Review URL: https://codereview.chromium.org/1680643002 Cr-Commit-Position: refs/heads/master@{#374689}
* Roll WebRTC 11523:11548, Libjingle 11522:11545kjellander2016-02-102-4/+4
| | | | | | | | | | | | | | | | | | WebRTC 11523:11548 Changes: https://chromium.googlesource.com/external/webrtc/trunk/webrtc.git/+log/4def420..608b2be Libjingle 11522:11545 Changes: https://chromium.googlesource.com/external/webrtc/trunk/talk.git/+log/01cbe5b..bb467ca Updated libjingle GYP+GN for talk/app/webrtc move that happened in https://codereview.webrtc.org/1610243002/ TBR=tommi@chromium.org, sergeyu@chromium.org BUG=webrtc:5418 Review URL: https://codereview.chromium.org/1615433002 Cr-Commit-Position: refs/heads/master@{#374655}
* Add policy to restrict client domain for Me2Me.jamiewalch2016-02-085-5/+38
| | | | | | | | BUG=b/19316131 Review URL: https://codereview.chromium.org/1643793002 Cr-Commit-Position: refs/heads/master@{#374209}
* Moving Gnubby* files to a new directory.joedow2016-02-0815-66/+114
| | | | | | | | | | | | | | | | This CL moves the existing Gnubby files into a new security_key directory. Since I will be refactoring this and expanding the number of files, I thought it would be better to keep them orgainzed in a sub-directory vs. adding all of th files to the host root directory. Also needed to update the Presubmit file for the AllowScopedIO exception. BUG=584463 Review URL: https://codereview.chromium.org/1668393002 Cr-Commit-Position: refs/heads/master@{#374177}
* Remove logging of unused and deprecated PeerConnection::Observer callbacksperkj2016-02-082-12/+0
| | | | | | | | | | | | This removes loggin in OnStateChanged() OnIceComplete() The methods will be deleted from the interface and has been deprecated for a long time. Review URL: https://codereview.chromium.org/1668413003 Cr-Commit-Position: refs/heads/master@{#374109}
* Extract threading logic out of MouseShapePump.sergeyu2016-02-058-161/+357
| | | | | | | | | | | Added MouseCursorMonitorProxy which is now responsible for switching to the capture thread to capture mouse shape. BUG=458437 Review URL: https://codereview.chromium.org/1669143002 Cr-Commit-Position: refs/heads/master@{#373912}
* Creating remote_security_key target and initial exe shelljoedow2016-02-054-0/+58
| | | | | | | | | | | | | | | | This change adds the build targets and base files for the remote_security_key process. Future CLs will build on this and add additional functionality. The new exe will invoke an entry point exposed on remoting_core.dll, this mimics the pattern used for other host related executables that share code. For now the remote_security_key target will only build for Windows although a future CL will also add it for Mac. BUG=584463 Review URL: https://codereview.chromium.org/1665393002 Cr-Commit-Position: refs/heads/master@{#373903}
* Fixing an agument swap typo that was introduced during a refactoring for pin ↵nicholss2016-02-031-1/+1
| | | | | | | | | | | | verification. BUG=583122 R=tfarina@chromium.org, joedow@chromium.org Review URL: https://codereview.chromium.org/1663993002 Cr-Commit-Position: refs/heads/master@{#373383}
* IPC::Message -> base::Picklerockot2016-02-032-22/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This changes consumers of IPC::Message to generally refer refer to base::Pickle instead when performing serialization and deserialization operations. The few specific instances where the IPC::Message interface (Read/WriteAttachent) is needed can safely be static_cast'd, as IPC::Message is the only public subclass of base::Pickle. The purpose of this change is to facilitate the transition to Mojo IPC, as we've trained the Mojo bindings layer to use existing ParamTraits<T> parameterized over base::Pickle. To support this base::Pickle has had some stub interfaces added for WriteAttachment and ReadAttachment, along with a Pickle::Attachment. A follow-up patch will add sizing traits to the standard IPC_STRUCT macros, enabling the majority of Chrome IPC structs to be carried over Mojo message pipes as-is. BUG=577685 R=jam@chromium.org Review URL: https://codereview.chromium.org/1659003003 Cr-Commit-Position: refs/heads/master@{#373323}
* Enable attachment brokering of SharedMemoryHandle on Windows.erikchen2016-02-031-6/+1
| | | | | | | | | | | | | | | | | Whenever a SharedMemoryHandle associated with the current process is passed as a parameter to a Chrome IPC message, the object is automatically brokered into the destination process. This means it is no longer necessary to have a constructor of SharedMemoryHandle that takes a ProcessHandle, since the SharedMemoryHandle is always associated with the current process. BUG=493414 Committed: https://crrev.com/7ceb8901740c35cd8ebfb92739efaf2ee441391e Cr-Commit-Position: refs/heads/master@{#370193} Review URL: https://codereview.chromium.org/1588683003 Cr-Commit-Position: refs/heads/master@{#373174}
* net: add BindAndListen() method to UnixDomainServerSockettfarina2016-02-021-2/+2
| | | | | | | | | | | | | | | | | | This method was designed to support the Unix Domain Socket case, where the address + port pair does not make sense, as it uses files for sockets instead. This makes the callsites cleaner. With this addition there is no need to override ListenWithAddressAndPort from ServerSocket. BUG=None TEST=net_unittests R=mmenke@chromium.org,mkwst@chromium.org TBR=gunsch@chromium.org,boliu@chromium.org,sergeyu@chromium.org,newt@chromium.org Review URL: https://codereview.chromium.org/1644003002 Cr-Commit-Position: refs/heads/master@{#372859}
* Revert of Enable attachment brokering of SharedMemoryHandle on Windows. ↵erikchen2016-01-301-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (patchset #4 id:60001 of https://codereview.chromium.org/1588683003/ ) Reason for revert: Causing Dr.Memory errors. https://code.google.com/p/chromium/issues/detail?id=580636 Original issue's description: > Enable attachment brokering of SharedMemoryHandle on Windows. > > Whenever a SharedMemoryHandle associated with the current process is passed as a > parameter to a Chrome IPC message, the object is automatically brokered into the > destination process. This means it is no longer necessary to have a constructor > of SharedMemoryHandle that takes a ProcessHandle, since the SharedMemoryHandle > is always associated with the current process. > > BUG=493414 > > Committed: https://crrev.com/7ceb8901740c35cd8ebfb92739efaf2ee441391e > Cr-Commit-Position: refs/heads/master@{#370193} TBR=mark@chromium.org,tsepez@chromium.org,thestig@chromium.org,avi@chromium.org,sergeyu@chromium.org # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=493414 Review URL: https://codereview.chromium.org/1645273003 Cr-Commit-Position: refs/heads/master@{#372481}
* allocator cleanup: remove dependencies on allocator from all targetsprimiano2016-01-281-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Overview of the cleanup: ------------------------ - In the context of the discussion in https://goo.gl/K2m649 our illustrious base/ owners suggested that having base being the only target depending on allocator (and having the other targets inherit that recursively) would be a more scalable solution, as opposite to having to remember to add an exec -> allocator to each target. - This base -> allocator dep landed in crrev.com/1616793003. - After that CL, until this point, many targets got two paths that lead to allocator: 1. The indirect one via base (content_shell -> base -> allocator) which is what we want to preserve. 2. The direct one (content_shell -> allocator) which is the inconsistent one we want to drop. This CL gets rid of all the instances of 2. The nice property of this sequencing of CLs is that the effect of this large change on the final .ninja files is minimal. See details below. Effect on the produced ninja files: ----------------------------------- GYP, Linux, static build: https://paste.ee/p/RaJLj Just some small reordering of include paths. Dropping --rdynamic (as expected) in keyboard_unittests GN, Linux, static build: https://paste.ee/p/zYtrQ Various targets lose the dependency on allocator.stamp (expected, the order is enforced by depending on base which depends on allocator.stamp) GN, Android (both component and static are similar): https://paste.ee/p/Iq6DD As above. GN, Linux, component build: https://paste.ee/p/jHUmv This is the most juicy change. As expected all the ODR goes away and random targets stop re-linking tcmalloc .o files. GYP, Win, static: https://paste.ee/p/j0IjL Extremely minimal changes: All.ninja stops depending on libcmt.lib. Sounds fine as base (which depends on that) is definitely depending on libcmt. GN, Win, static: https://paste.ee/p/Q6zTo Minimal change, like Linux GN, dropping dependencies on the .stamp files. BUG=564618 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1647453002 Cr-Commit-Position: refs/heads/master@{#372167}
* remoting: Add AttachmentBroker for daemon and desktop processessergeyu2016-01-275-6/+44
| | | | | | | | | | | | Daemon and desktop processes didn't have attachment brokers, and so the desktop process was failing when trying to pass shared buffer to the network process. BUG=581174 Review URL: https://codereview.chromium.org/1634933007 Cr-Commit-Position: refs/heads/master@{#371858}
* Change IPEndpoint::address() to return a net::IPAddressmartijn2016-01-271-2/+2
| | | | | | | | | | | | | | | This CL is part of the net::IPAddressNumber migration[1]. IPEndpoint::address() currently returns a net::IPAddressNumber but we need it to return a net::IPAddress. BUG=496258 TBR=scheib [1] https://code.google.com/p/chromium/issues/detail?id=496258#c10 Review URL: https://codereview.chromium.org/1565303002 Cr-Commit-Position: refs/heads/master@{#371750}
* Isloate multi-process code in remoting_me2me_host.ccsergeyu2016-01-261-28/+18
| | | | | | | | | Previously some code specific to multi-process architecture was compiled on Linux and Mac, but it doesn't make sense there. Review URL: https://codereview.chromium.org/1637983002 Cr-Commit-Position: refs/heads/master@{#371607}
* Fix crash on It2Me host.kelvinp2016-01-261-1/+1
| | | | | | | | | | | | | This is a regression from https://codereview.chromium.org/1530523002. We should be passing signal_strategy_.get() instead of signal_strategy.get() to the underlying JingleSessionManager in it2me_host.cc BUG=579758 Review URL: https://codereview.chromium.org/1638733002 Cr-Commit-Position: refs/heads/master@{#371452}
* Remove invalid CHECK() from DesktopSessionAgent::OnCaptureCompleted.sergeyu2016-01-251-3/+0
| | | | | | | | | | | | | | | | | | | | crrev.com/370480 added a CHECK() in DesktopSessionAgent. It was added there in last minute during review and it wasn't properly validated. It's supposed to verify that the screen capturer actually uses the shared memory given to it by verifying that frame->data() and shared_memory->data() return the same address. On windows the capturer maps uses shared_memory->handle() to allocate bitmap, so the same file mapping ends up mapped in two different addresses. So frame->data() and shared_memory->data() are different addresses, but the data they contain is always the same. BUG=575427 Review URL: https://codereview.chromium.org/1630953003 Cr-Commit-Position: refs/heads/master@{#371321}
* Fix DesktopSessionAgent to pass shared buffer handle to the capturer.sergeyu2016-01-201-2/+14
| | | | | | | | | | | | After crrev.com/363934 DesktopSessionAgent was passing 0 handle to the capturere for the shared memory buffer. Because of that the screen wasn't captured properly. BUG=575427 Review URL: https://codereview.chromium.org/1594613003 Cr-Commit-Position: refs/heads/master@{#370480}