Commit Graph

26 Commits

Author SHA1 Message Date
Adam Wright
56bd362fb1 Modify serve_async to expose the bound address
serve_async was taking a SocketAddr, and then binding to it. This is fine if
your'e always sure of the exact address you want to bind to, but in some cases
you don't know.

One such case is when you want the OS to assign you and ephemeral port number,
like we do in our tests. In this case, you pass 0.0.0.0:0 as the address, and
then call bind. After that, you don't know which address the listener bound to,
so we can't make the subsequent call to TcpStream::connect without getting a
weird error.

This is fixed by the ServeHandle object exposing a local_addr() method, which
returns the address that the listener bound to.
2016-01-10 02:29:06 -08:00
Tim Kuehn
7c89df7b09 Rustfmt 2016-01-09 14:23:55 -08:00
Tim Kuehn
b17b8c60d4 Remove failed requests from requests map. Fix #14. 2016-01-09 13:02:23 -08:00
Tim Kuehn
195cb4235d Rename wtf method 2016-01-09 12:48:21 -08:00
Tim Kuehn
98a34e4256 printlns => logging 2016-01-09 12:45:16 -08:00
Tim Kuehn
40b0aecec1 Fix failing tests 2016-01-09 04:43:59 -08:00
Tim Kuehn
e32ef30c8d Warn if an error occurs when disconnecting client from server 2016-01-09 04:33:55 -08:00
Adam Wright
2d9964293e Implement drop for tarpc::Client 2016-01-09 03:57:46 -08:00
Adam Wright
a63c935a33 modify macros to use tarpc:: stuff 2016-01-09 03:42:40 -08:00
Adam Wright
2f324f1689 Remove silly requirement of clone for fn rpc 2016-01-09 03:01:59 -08:00
Adam Wright
e0f9c89c0e Make handle_conn be private 2016-01-09 02:13:44 -08:00
Adam Wright
096cf25824 Remove commented code 2016-01-09 01:34:25 -08:00
Adam Wright
2f1b8e931d Clean up warnings 2016-01-09 01:34:08 -08:00
Adam Wright
df8d0f2303 Clean up those unused thingies
Closes #2.
2016-01-09 01:18:44 -08:00
Adam Wright
55f1686e52 Concurrency actually works 2016-01-09 01:15:29 -08:00
Adam Wright
47828e2c8e Tests pass, hooray 2016-01-09 00:45:30 -08:00
Adam Wright
e266aa81dc LOL Shutdown works LOL 2016-01-09 00:27:07 -08:00
Adam Wright
f10712f16a Clean shutdown except for server 2016-01-08 21:12:01 -08:00
Adam Wright
b011cbe1dc Sketch of Client with only one reader thread 2016-01-08 20:36:31 -08:00
Adam Wright
3a3e2d1e4d Really have a non-clone thing? tests are a mess though 2016-01-08 19:56:02 -08:00
Adam Wright
eac0e56be7 A number of improvements
- Support non clonable Serve objects by wrapping in an Arc
- Support multiple RPCs per connection
- Support cleanish shutdown
2016-01-08 05:49:00 -08:00
Adam Wright
c62d66839d Join the client, and update reader to handle EOF 2016-01-08 04:31:51 -08:00
Adam Wright
44b3765d70 Removed a bunch of over-engineered code 2016-01-08 04:15:10 -08:00
Adam Wright
579d3909e5 I made le test pass 2016-01-08 02:39:40 -08:00
Adam Wright
dbf7113cf3 WIP, doesn't compile :( 2016-01-08 00:08:20 -08:00
Adam Wright
4b0180d17f Initial commit 2016-01-06 21:01:11 -08:00