Commit Graph

2660 Commits

Author SHA1 Message Date
Thomas Zimmermann
2733233cf3 Bug 1170466: Implement accept and connect in |ConnectionOrientedSocketIO|, r=kmachulis
|ConnectionOrientedSocketIO| now handles accepting and connecting
sockets. All sub-classes have been changed accordingly.
2015-06-03 11:53:50 +02:00
Thomas Zimmermann
47314e313a Bug 1170466: Share socket I/O methods in |ConnectionOrientedSocketIO|, r=kmachulis
With this patch, |ConnectionOrientedSocketIO| implements methods
for sending and receiving data. All sub-classes have been changed
accordingly.
2015-06-03 11:53:50 +02:00
Thomas Zimmermann
754c294fc9 Bug 1170466: Inherit |ConnectionOrientedSocketIO| from |UnixSocketWatcher|, r=kmachulis
Inheriting |ConncetionOrientedSocketIO| from |UnixSocketWatcher| will
allow for sharing common I/O code of the sub-class.
2015-06-03 11:53:50 +02:00
Wes Kocher
f7cf1609c1 Merge b2ginbound to central, a=merge 2015-06-02 18:34:21 -07:00
Thomas Zimmermann
21a30b633f Bug 1168806: Use 'consumer thread' in socket interface, r=kmachulis
The socket IPC interfaces still use 'main thread' in a number of
places. This patch changes all such interfaces and documentation
to speak of 'consumer thread' instead.
2015-06-02 10:01:58 +02:00
Thomas Zimmermann
364b0a0542 Bug 1168806: Configurable consumer thread for socket IPC classes, r=kmachulis
The consumer thread handles socket creation, destruction, and
data processing for socket IPC. Traditionally this has been
done on the main thread.

This patch extends the socket IPC classes to support arbitrary
consumer threads. The thread is configured when establishing a
connection, and performs all of the above operations until the
socket is closed.
2015-06-02 10:01:57 +02:00
Thomas Zimmermann
425da7831c Bug 1168806: Configurable I/O thread for socket IPC classes, r=kmachulis
The I/O thread sends and receives data on a file descriptor. This
has traditionally been performed on a single I/O thread.

This patch extends the socket IPC classes to support arbitrary I/O
threads. The thread is configured when a connection is established
and used until the socket gets closed.
2015-06-02 10:01:57 +02:00
Randell Jesup
bddc272e14 Bug 1109338: Part 2: Sharing UDPSocket between PNecko and PBackground r=bent 2015-05-29 10:14:14 -04:00
Botond Ballo
53a2fa35ef Bug 1166583 - Move chromium's MakeTuple function into namespace 'base' to avoid conflicts with mozilla::MakeTuple. r=froydnj 2015-05-09 21:09:40 -05:00
Nicholas Nethercote
88d6136d16 Bug 1164374 - Use StaticMutex in BrowserProcessSubThread. r=froydnj.
This removes a static constructor.
2015-05-13 01:59:52 -07:00
Birunthan Mohanathas
084be39cfd Bug 968520 - Add mozilla::fallible to FallibleTArray::AppendElement calls. r=froydnj 2015-05-28 11:07:44 -07:00
Birunthan Mohanathas
f7fa42cc65 Bug 968520 - Add mozilla::fallible to FallibleTArray::AppendElements calls. r=froydnj 2015-05-28 11:07:43 -07:00
Ryan VanderMeulen
094299de37 Merge m-c to inbound. a=merge 2015-05-28 10:20:38 -04:00
Ryan VanderMeulen
d81ade8a20 Merge inbound to m-c. a=merge 2015-05-28 10:03:07 -04:00
Wes Kocher
7b905b25aa Merge m-c to b2ginbound, a=merge CLOSED TREE 2015-05-27 17:23:19 -07:00
Thomas Zimmermann
92a42ffbe4 Bug 1167210: Replace |union sockaddr_any| with |struct sockaddr_storage|, r=kmachulis
Both types, |union sockaddr_any| and |struct sockaddr_storage|, provide
a sockaddr type that can hold any address. The latter is standardized by
POSIX, so we prefer it.
2015-05-27 13:49:07 +02:00
Thomas Zimmermann
19b95544ab Bug 1167207: Remove |BluetoothDaemonChannel|, r=shuang
This patch integrates the functionality of |BluetoothDaemonChannel|
into |BluetoothDaemonConnection|. All users are adapted, the former
class is removed.
2015-05-26 18:29:02 +02:00
Thomas Zimmermann
21c3ae4f13 Bug 1167207: Add |BluetoothDaemonConnectionConsumer|, r=shuang
Instances of |BluetoothDaemonConnectionConsumer| handle socket events
for |BluetoothDaemonConnection|.
2015-05-26 18:29:01 +02:00
Wes Kocher
4cb22f4274 Merge m-c to inbound, a=merge CLOSED TREE 2015-05-26 16:25:11 -07:00
Botond Ballo
ad4aea9284 Bug 1119980 - Use 'snprintf' instead of 'sprintf' to avoid a warning on Lollipop-based builds. r=froydnj 2015-05-26 14:33:55 -04:00
Thomas Zimmermann
d4f5bad1fa Bug 1166638: Use |ListenSocketConsumer| in |ListenSocket|, r=kmachulis, dlee, chucklee, shuang
This patch converts |ListenSocket| to forward events to an instance
of |ListenSocketConsumer|. All users are converted and the related
listener and consumer classes are removed.
2015-05-26 13:24:20 +02:00
Thomas Zimmermann
f34b93e76f Bug 1166638: Add |ListenSocketConsumer|, r=kmachulis
|ListenSocketConsumer| receives events from a listening socket. It
unifies all existing consumer and listener classes of the socket I/O
users.
2015-05-26 13:24:20 +02:00
Thomas Zimmermann
f07de924ac Bug 1166638: Use |StreamSocketConsumer| in |StreamSocket|, r=kmachulis, dlee, chucklee, htsai
This patch converts |StreamSocket| to forward events and data to an
instance of |StreamSocketConsumer|. All users are converted and the
related listener and consumer classes are removed.
2015-05-26 13:24:20 +02:00
Thomas Zimmermann
6dc6f61bb6 Bug 1166638: Add |StreamSocketConsumer|, r=kmachulis
|StreamSocketConsumer| receives events and data from a stream
socket. It unifies all existing consumer and listener classes
of the socket I/O users.
2015-05-26 13:24:19 +02:00
Lee Salzman
a2e0cf32cd Bug 1168843 - use thread-safe refcounting for shared memory surfaces to avoid shutdown crashes. r=jmuizelaar 2015-05-27 11:20:26 -04:00
Michael Layzell
c38dc26e08 Bug 1167396 - Make ProtocolCloneContext::mContentParent a smart pointer. r=bent 2015-05-22 10:10:00 -04:00
Phil Ringnalda
642204bc61 Back out 7842a044a183 (bug 1167431) for widespread bustage
CLOSED TREE
2015-05-22 18:53:41 -07:00
Ben Turner
9fdd41fd60 Bug 1167431 - 'Properly clean up actors whose RecvFooConstructor method returns false', r=billm. 2015-05-22 16:10:02 -07:00
Nathan Froyd
a85264333c Bug 1170656 - remove tabs from moz.build files; r=me
DONTBUILD because whitespace-only fix.
2015-05-04 08:20:33 -04:00
Cervantes Yu
74016aa142 Bug 1151672 - Part 2: Block PHal::Msg_NotifyNetworkChange__ID to the Nuwa process after it is ready. r=khuey 2015-05-22 15:08:20 +08:00
Thomas Zimmermann
c3aad11cb9 Bug 1164417: Add |ConnectionOrientedSocket::PrepareAccept| for accepting socket connections, r=kmachulis
With this patch, stream and listening sockets handle the setup of
accepted sockets internally. Sub-classes of |StreamSocket| don't
have to overload StreamSocket's |GetIO| any longer.
2015-05-21 13:34:37 +02:00
Thomas Zimmermann
c81d8f912a Bug 1164417: Store PDU consumer in |BluetoothDaemonConnection|, r=kmachulis 2015-05-21 13:34:37 +02:00
Thomas Zimmermann
a385885364 Bug 1164417: Add |UnixSocketConnector::Duplicate|, r=kmachulis
The new method |UnixSocketConnector::Duplicate| allows a socket
connector to duplicate itself. Listening sockets will used this
feature to create socket connectors for accepted connections.
2015-05-21 13:34:37 +02:00
Carsten "Tomcat" Book
a1b96b13aa merge mozilla-inbound to mozilla-central a=merge 2015-05-20 15:52:31 +02:00
Carsten "Tomcat" Book
85f07e1472 merge b2g-inbound to mozilla-central a=merge 2015-05-20 15:31:22 +02:00
Thomas Zimmermann
56879e97d6 Bug 1164425: Cleanup interfaces of |BluetoothDaemonConnection|, r=shuang
Bluetooth never actively opens a connection to the daemon, so this
patch removes the connect functionality.
2015-05-20 10:50:43 +02:00
Thomas Zimmermann
f3630711c2 Bug 1164425: Cleanup interfaces of |ListenSocket|, r=kmachulis
This patch removes |ListenSocket::GetSocketAddr|, which is unused
and not thread-safe. The |Listen| methods now return error codes.
2015-05-20 10:50:43 +02:00
Thomas Zimmermann
36febad848 Bug 1164425: Cleanup interfaces of |StreamSocket|, r=kmachulis
This patch cleans up the interface of |StreamSocket|. All arguments
that contain protocol parameters are removed from |Connect|. They are
stored in the connector class. |Connect| now returns error codes. The
method |GetSocketAddr| is unused and not thread-safe and therefore
removed. The method |SendSocketData| for strings is unused and removed.
2015-05-20 10:50:43 +02:00
Thomas Zimmermann
ca2120fb35 Bug 1164425: Rename |SocketBase::CloseSocket| to |SocketBase::Close|, r=kmachulis 2015-05-20 10:50:43 +02:00
Carsten "Tomcat" Book
24a87517b4 Backed out changeset 1e93024c9fec (bug 1164425) for bustage 2015-05-20 10:31:55 +02:00
Carsten "Tomcat" Book
39f2504a79 Backed out changeset 2fd186d1a288 (bug 1164425) 2015-05-20 10:31:09 +02:00
Carsten "Tomcat" Book
1f415f3e51 Backed out changeset 17bd0777339a (bug 1164425) 2015-05-20 10:30:55 +02:00
Carsten "Tomcat" Book
260bf15436 Backed out changeset 97ccb9e0cefb (bug 1164425) 2015-05-20 10:30:41 +02:00
Thomas Zimmermann
a5b79e7bab Bug 1164425: Cleanup interfaces of |BluetoothDaemonConnection|, r=shuang
Bluetooth never actively opens a connection to the daemon, so this
patch removes the connect functionality.
2015-05-20 09:54:27 +02:00
Thomas Zimmermann
ab30c72531 Bug 1164425: Cleanup interfaces of |ListenSocket|, r=kmachulis
This patch removes |ListenSocket::GetSocketAddr|, which is unused
and not thread-safe. The |Listen| methods now return error codes.
2015-05-20 09:54:27 +02:00
Thomas Zimmermann
ce9f51f947 Bug 1164425: Cleanup interfaces of |StreamSocket|, r=kmachulis
This patch cleans up the interface of |StreamSocket|. All arguments
that contain protocol parameters are removed from |Connect|. They are
stored in the connector class. |Connect| now returns error codes. The
method |GetSocketAddr| is unused and not thread-safe and therefore
removed. The method |SendSocketData| for strings is unused and removed.
2015-05-20 09:54:27 +02:00
Thomas Zimmermann
a0c499fc22 Bug 1164425: Rename |SocketBase::CloseSocket| to |SocketBase::Close|, r=kmachulis 2015-05-20 09:54:27 +02:00
Wes Kocher
b73580fb15 Merge b2ginbound to central, a=merge 2015-05-19 16:42:57 -07:00
Thomas Zimmermann
aedad80f8c Bug 1161020: Remove old interface and implementation from socket-connector classes, r=kmachulis 2015-05-19 13:28:46 +02:00
Thomas Zimmermann
fef18979cc Bug 1161020: Use new socket-connector interface in socket classes, r=kmachulis
This patch converts the socket I/O classes to use the new interface
of the socket-connector classes. All sockets are now created and set
up by a socket connector.
2015-05-19 13:28:46 +02:00