about summary refs log tree commit diff
path: root/src/libstd/rt/uv/net.rs
AgeCommit message (Collapse)AuthorLines
2013-10-29Register new snapshotsAlex Crichton-853/+0
2013-10-24Test fixes and merge conflictsAlex Crichton-27/+26
2013-10-24Move stdin to using libuv's pipes instead of a ttyAlex Crichton-1/+1
I was seeing a lot of weird behavior with stdin behaving as a tty, and it doesn't really quite make sense, so instead this moves to using libuv's pipes instead (which make more sense for stdin specifically). This prevents piping input to rustc hanging forever.
2013-10-24Move rt::io::stdio from FileStream to a TTYAlex Crichton-38/+1
We get a little more functionality from libuv for these kinds of streams (things like terminal dimentions), and it also appears to more gracefully handle the stream being a window. Beforehand, if you used stdio and hit CTRL+d on a process, libuv would continually return 0-length successful reads instead of interpreting that the stream was closed. I was hoping to be able to write tests for this, but currently the testing infrastructure doesn't allow tests with a stdin and a stdout, but this has been manually tested! (not that it means much)
2013-10-24Finish implementing io::net::addrinfoAlex Crichton-27/+5
This fills in the `hints` structure and exposes libuv's full functionality for doing dns lookups.
2013-10-24Implement io::net::unixAlex Crichton-33/+40
2013-10-22Drop the '2' suffix from logging macrosAlex Crichton-1/+1
Who doesn't like a massive renaming?
2013-10-05std::rt::uv::net: Handle `read_start` errorklutzy-2/+13
cc #9605
2013-09-30std: Remove usage of fmt!Alex Crichton-15/+15
2013-09-30std::rt::uv::net: Enable tests on Win32klutzy-4/+0
Closes #8815.
2013-09-06Upgrade libuv to the current master (again)Alex Crichton-9/+8
This is a reopening of the libuv-upgrade part of #8645. Hopefully this won't cause random segfaults all over the place. The windows regression in testing should also be fixed (it shouldn't build the whole compiler twice). A notable difference from before is that gyp is now a git submodule instead of always git-cloned at make time. This allows bundling for releases more easily. Closes #8850
2013-09-06auto merge of #9000 : brson/rust/dns, r=anasazibors-0/+24
This exposes a very simple function for resolving host names. There's a lot more that needs to be done, but this is probably enough for servo to get started connecting to real websites again.
2013-09-05std::rt: Add libuv bindings for getaddrinfoBrian Anderson-0/+24
2013-09-05Rename str::from_bytes to str::from_utf8, closes #8985Florian Hahn-1/+1
2013-08-29auto merge of #8819 : vadimcn/rust/unit-tests, r=brsonbors-0/+4
Some of the tests are failing. I've only managed to fix 'memory_map_file', the rest are up for grabs... Fixes #5261.
2013-08-29Revert "auto merge of #8645 : alexcrichton/rust/issue-6436-run-non-blocking, ↵Brian Anderson-8/+9
r=brson" This reverts commit b8d1fa399402c71331aefd634d710004e00b73a6, reversing changes made to f22b4b169854c8a4ba86c16ee43327d6bcf94562. Conflicts: mk/rt.mk src/libuv
2013-08-28Turned off libstd unit tests that currently fail on Windows.Vadim Chugunov-0/+4
2013-08-27Implement process bindings to libuvAlex Crichton-6/+6
Closes #6436
2013-08-27Upgrade libuv to the current master + our patchesAlex Crichton-3/+2
There were two main differences with the old libuv and the master version: 1. The uv_last_error function is now gone. The error code returned by each function is the "last error" so now a UvError is just a wrapper around a c_int. 2. The repo no longer includes a makefile, and the build system has change. According to the build directions on joyent/libuv, this now downloads a `gyp` program into the `libuv/build` directory and builds using that. This shouldn't add any dependences on autotools or anything like that. Closes #8407 Closes #6567 Closes #6315
2013-08-19Do not execute the callback before cleaning up resources.Eric Reed-2/+4
2013-08-06Use FromStr for IpAddr in rt::uv::netStepan Koltsov-70/+2
2013-08-05Updated std::Option, std::Either and std::ResultMarvin Löbel-3/+3
- Made naming schemes consistent between Option, Result and Either - Changed Options Add implementation to work like the maybe monad (return None if any of the inputs is None) - Removed duplicate Option::get and renamed all related functions to use the term `unwrap` instead
2013-08-04auto merge of #8243 : stepancheg/rust/ipv, r=brsonbors-61/+57
multicast functions now take IpAddr (without port), because they dont't need port. Uv* types renamed: * UvIpAddr -> UvSocketAddr * UvIpv4 -> UvIpv4SocketAddr * UvIpv6 -> UvIpv6SocketAddr "Socket address" is a common name for (ip-address, port) pair (e.g. in sockaddr_in struct). P. S. Are there any backward compatibility concerns? What is std::rt module, is it a part of public API?
2013-08-03remove obsolete `foreach` keywordDaniel Micay-4/+4
this has been replaced by `for`
2013-08-03Rename IpAddr -> SocketAddr, extract IpAddr from SocketAddrStepan Koltsov-61/+57
multicast functions now take IpAddr (without port), because they dont't need port. Uv* types renamed: * UvIpAddr -> UvSocketAddr * UvIpv4 -> UvIpv4SocketAddr * UvIpv6 -> UvIpv6SocketAddr "Socket address" is a common name for (ip-address, port) pair (e.g. in sockaddr_in struct).
2013-08-01migrate many `for` loops to `foreach`Daniel Micay-4/+5
2013-07-30std::rt: Change Thread interface to require an explicit joinBrian Anderson-4/+8
Makes it more obvious what's going on
2013-07-25libstd: Handle IPv4-Mapped/Compatible IPv6 addresses.Luqman Aden-1/+30
2013-07-25libstd: Implement {peer, socket}_name for new rt tcp & udp.Luqman Aden-11/+11
2013-07-19Missed the methods of UdpWatcher.Eric Reed-16/+14
2013-07-17test: Fix tests.Patrick Walton-3/+3
2013-07-17test: Fix tests.Patrick Walton-1/+1
2013-07-16Rename Option swap_unwrap to take_unwrap. Fixes Issue#7764Austin King-5/+5
2013-07-09std::rt: Ignore 0-byte udp readsBrian Anderson-0/+7
2013-07-09std::rt: size_t, not u64Brian Anderson-2/+2
2013-07-08TidyBrian Anderson-5/+9
2013-07-08changed .each() to .iter().advance()Eric Reed-10/+10
2013-07-08Merge remote-tracking branch 'upstream/io' into ioEric Reed-1/+2
Conflicts: src/libstd/rt/uvio.rs
2013-07-02IPv6 support for UDP and TCP.Eric Reed-90/+329
2013-06-26changed NOTE to TODOEric Reed-4/+4
2013-06-26cleaned up uv/netEric Reed-68/+32
2013-06-25changed outdated match on IpAddrEric Reed-4/+2
2013-06-25satisfy the formatting checkEric Reed-10/+13
2013-06-25removed unncessary unsafe block that was stopping compliation.Eric Reed-1/+1
2013-06-25UDP networking with testsEric Reed-32/+114
2013-06-23vec: remove BaseIter implementationDaniel Micay-1/+2
I removed the `static-method-test.rs` test because it was heavily based on `BaseIter` and there are plenty of other more complex uses of static methods anyway.
2013-06-19Changed visibility from being on the impl to being on methods per language ↵Eric Reed-13/+13
syntax change.
2013-06-17Merge remote-tracking branch 'upstream/io' into ioEric Reed-21/+19
Conflicts: src/libstd/rt/uvio.rs
2013-06-17added a function to convert C's ipv4 data structure into the Rust ipv4 data ↵Eric Reed-0/+8
structure.
2013-06-14Added a UdpWatcher and UdpSendRequest with associated callbacksEric Reed-2/+172