Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(243)

Unified Diff: native_client_sdk/src/libraries/nacl_io/mount_node_tcp.h

Issue 26703008: [NaCl SDK] nacl_io: Add support for non-blocking connect/accept (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: native_client_sdk/src/libraries/nacl_io/mount_node_tcp.h
diff --git a/native_client_sdk/src/libraries/nacl_io/mount_node_tcp.h b/native_client_sdk/src/libraries/nacl_io/mount_node_tcp.h
index 85758be517690973ed5673628e2c2f70a619511a..afd593a79b59fe3d45fb991e9205e65804156518 100644
--- a/native_client_sdk/src/libraries/nacl_io/mount_node_tcp.h
+++ b/native_client_sdk/src/libraries/nacl_io/mount_node_tcp.h
@@ -27,20 +27,27 @@ class MountNodeTCP : public MountNodeSocket {
virtual void Destroy();
public:
- virtual EventEmitterTCP* GetEventEmitter();
+ virtual EventEmitter* GetEventEmitter();
+ virtual void QueueAccept();
+ virtual void QueueConnect();
virtual void QueueInput();
virtual void QueueOutput();
- virtual Error Accept(PP_Resource* out_sock,
+ virtual Error Accept(const HandleAttr& attr,
+ PP_Resource* out_sock,
struct sockaddr* addr,
socklen_t* len);
virtual Error Bind(const struct sockaddr* addr, socklen_t len);
virtual Error Listen(int backlog);
- virtual Error Connect(const struct sockaddr* addr, socklen_t len);
+ virtual Error Connect(const HandleAttr& attr,
+ const struct sockaddr* addr,
+ socklen_t len);
+
+ void ConnectDone_Locked();
+ void ConnectFailed_Locked();
protected:
- void ConnectDone();
virtual Error Recv_Locked(void* buf,
size_t len,
PP_Resource* out_addr,
@@ -52,6 +59,7 @@ class MountNodeTCP : public MountNodeSocket {
int* out_len);
ScopedEventEmitterTCP emitter_;
+ PP_Resource accepted_socket_;
};

Powered by Google App Engine
This is Rietveld 408576698