OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef LIBRARIES_NACL_IO_KERNEL_PROXY_H_ | 5 #ifndef LIBRARIES_NACL_IO_KERNEL_PROXY_H_ |
6 #define LIBRARIES_NACL_IO_KERNEL_PROXY_H_ | 6 #define LIBRARIES_NACL_IO_KERNEL_PROXY_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 #include <string> | 9 #include <string> |
10 | 10 |
11 #include "nacl_io/host_resolver.h" | 11 #include "nacl_io/host_resolver.h" |
12 #include "nacl_io/kernel_object.h" | 12 #include "nacl_io/kernel_object.h" |
13 #include "nacl_io/mount_factory.h" | 13 #include "nacl_io/mount_factory.h" |
| 14 #include "nacl_io/mount_socket.h" |
14 #include "nacl_io/ossocket.h" | 15 #include "nacl_io/ossocket.h" |
15 #include "nacl_io/ostypes.h" | 16 #include "nacl_io/ostypes.h" |
16 #include "nacl_io/osutime.h" | 17 #include "nacl_io/osutime.h" |
17 | 18 |
18 struct timeval; | 19 struct timeval; |
19 | 20 |
20 namespace nacl_io { | 21 namespace nacl_io { |
21 | 22 |
22 class PepperInterface; | 23 class PepperInterface; |
23 | 24 |
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
167 int optname, | 168 int optname, |
168 const void* optval, | 169 const void* optval, |
169 socklen_t len); | 170 socklen_t len); |
170 virtual int shutdown(int fd, int how); | 171 virtual int shutdown(int fd, int how); |
171 virtual int socket(int domain, int type, int protocol); | 172 virtual int socket(int domain, int type, int protocol); |
172 virtual int socketpair(int domain, int type, int protocol, int* sv); | 173 virtual int socketpair(int domain, int type, int protocol, int* sv); |
173 #endif // PROVIDES_SOCKET_API | 174 #endif // PROVIDES_SOCKET_API |
174 | 175 |
175 protected: | 176 protected: |
176 MountFactoryMap_t factories_; | 177 MountFactoryMap_t factories_; |
| 178 sdk_util::ScopedRef<MountSocket> socket_mount_; |
177 int dev_; | 179 int dev_; |
178 PepperInterface* ppapi_; | 180 PepperInterface* ppapi_; |
179 static KernelProxy *s_instance_; | 181 static KernelProxy *s_instance_; |
180 #ifdef PROVIDES_SOCKET_API | 182 #ifdef PROVIDES_SOCKET_API |
181 HostResolver host_resolver_; | 183 HostResolver host_resolver_; |
182 #endif | 184 #endif |
183 | 185 |
184 #ifdef PROVIDES_SOCKET_API | 186 #ifdef PROVIDES_SOCKET_API |
185 virtual int AcquireSocketHandle(int fd, ScopedKernelHandle* handle); | 187 virtual int AcquireSocketHandle(int fd, ScopedKernelHandle* handle); |
186 #endif | 188 #endif |
187 | 189 |
188 DISALLOW_COPY_AND_ASSIGN(KernelProxy); | 190 DISALLOW_COPY_AND_ASSIGN(KernelProxy); |
189 }; | 191 }; |
190 | 192 |
191 } // namespace nacl_io | 193 } // namespace nacl_io |
192 | 194 |
193 #endif // LIBRARIES_NACL_IO_KERNEL_PROXY_H_ | 195 #endif // LIBRARIES_NACL_IO_KERNEL_PROXY_H_ |
OLD | NEW |