summaryrefslogtreecommitdiffstats
path: root/base/unix_domain_socket_posix.h
diff options
context:
space:
mode:
authoragl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-12 17:36:55 +0000
committeragl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-12 17:36:55 +0000
commitcc8f146d34a3b13cd80d8b3530fd76445774b1c6 (patch)
tree65ddd346a7b468f716f0022507112ec7215a17f7 /base/unix_domain_socket_posix.h
parent9ab7d838fba71523a32d1b1e50e5d9a1c20815b2 (diff)
downloadchromium_src-cc8f146d34a3b13cd80d8b3530fd76445774b1c6.zip
chromium_src-cc8f146d34a3b13cd80d8b3530fd76445774b1c6.tar.gz
chromium_src-cc8f146d34a3b13cd80d8b3530fd76445774b1c6.tar.bz2
Linux: refactor zygote support
http://code.google.com/p/chromium/wiki/LinuxZygote * Move Chrome specific bits out of base * Move away from the idea of reserved file descriptors (which don't really work with zygotes) * Load resources before forking renderers (means that we don't need communication between the zygote process and the renderers) * Make sure that gdb works against the browser again * Make sure that we have different ASLR between the renderers and the browser. http://codereview.chromium.org/119335 (This is a reland. First landed in r18109, reverted in r18112.) git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18291 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/unix_domain_socket_posix.h')
-rw-r--r--base/unix_domain_socket_posix.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/base/unix_domain_socket_posix.h b/base/unix_domain_socket_posix.h
new file mode 100644
index 0000000..46c473a
--- /dev/null
+++ b/base/unix_domain_socket_posix.h
@@ -0,0 +1,22 @@
+// Copyright (c) 2009 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef BASE_UNIX_DOMAIN_SOCKET_POSIX_H_
+#define BASE_UNIX_DOMAIN_SOCKET_POSIX_H_
+
+#include <vector>
+
+namespace base {
+
+// Use sendmsg to write the given msg and include a vector
+// of file descriptors. Returns true iff successful.
+bool SendMsg(int fd, const void* msg, size_t length,
+ std::vector<int>& fds);
+// Use recvmsg to read a message and an array of file descriptors. Returns
+// -1 on failure. Note: will read, at most, 16 descriptors.
+ssize_t RecvMsg(int fd, void* msg, size_t length, std::vector<int>* fds);
+
+} // namespace base
+
+#endif // BASE_UNIX_DOMAIN_SOCKET_POSIX_H_