|
Lines 51-57
namespace WebKit {
a/Source/WebKit2/Shared/linux/SeccompFilters/SeccompBroker.cpp_sec1
|
| 51 |
|
51 |
|
| 52 |
class SeccompBrokerClient { |
52 |
class SeccompBrokerClient { |
| 53 |
public: |
53 |
public: |
| 54 |
static SeccompBrokerClient& shared(int socket = -1); |
54 |
static SeccompBrokerClient& singleton(int socket = -1); |
| 55 |
~SeccompBrokerClient(); |
55 |
~SeccompBrokerClient(); |
| 56 |
|
56 |
|
| 57 |
void dispatch(Syscall*) const; |
57 |
void dispatch(Syscall*) const; |
|
Lines 177-183
static void registerSIGSYSHandler()
a/Source/WebKit2/Shared/linux/SeccompFilters/SeccompBroker.cpp_sec2
|
| 177 |
CRASH(); |
177 |
CRASH(); |
| 178 |
} |
178 |
} |
| 179 |
|
179 |
|
| 180 |
SeccompBrokerClient& SeccompBrokerClient::shared(int socket) |
180 |
SeccompBrokerClient& SeccompBrokerClient::singleton(int socket) |
| 181 |
{ |
181 |
{ |
| 182 |
DEPRECATED_DEFINE_STATIC_LOCAL(SeccompBrokerClient, brokerClient, (socket)); |
182 |
DEPRECATED_DEFINE_STATIC_LOCAL(SeccompBrokerClient, brokerClient, (socket)); |
| 183 |
|
183 |
|
|
Lines 306-312
void SeccompBroker::initialize()
a/Source/WebKit2/Shared/linux/SeccompFilters/SeccompBroker.cpp_sec3
|
| 306 |
pid_t pid = fork(); |
306 |
pid_t pid = fork(); |
| 307 |
if (pid) { // Sandboxed process. |
307 |
if (pid) { // Sandboxed process. |
| 308 |
close(sockets[1]); |
308 |
close(sockets[1]); |
| 309 |
SeccompBrokerClient::shared(sockets[0]); |
309 |
SeccompBrokerClient::singleton(sockets[0]); |
| 310 |
registerSIGSYSHandler(); |
310 |
registerSIGSYSHandler(); |
| 311 |
} else { // Broker. |
311 |
} else { // Broker. |
| 312 |
// TODO: The broker should setup seccomp filters |
312 |
// TODO: The broker should setup seccomp filters |