Valentin Lorentz
2d716883b6
Add support for IPv6 gateways.
...
Closes : #207
Approved by: dlrobertson
2018-05-14 09:39:39 +08:00
Kai Lüke
febe22b578
Mention that Probing Zero Windows is not implemented for TCP
...
Closes : #201
Approved by: whitequark
2018-05-08 01:47:24 +08:00
Dan Robertson
879e3ea3cd
Update README detailing IPv6 support
...
Add sections detailing the current support for IPv6.
Closes : #196
Approved by: whitequark
2018-05-07 23:49:56 +08:00
Michal Podhradsky
31ab2c788e
Update README.md
2018-04-17 18:04:55 +00:00
Adam Greig
96118d370d
Use core::time::Duration. Closes #182 .
...
Duration is now in core, so we can use that instead of conditional
compilation on std and std::time::Duration.
Closes : #189
Approved by: whitequark
2018-04-11 07:24:32 +08:00
Herman J. Radtke III
d612a93163
Fix mistakes in README
...
- Fix binary path in tcpdump example
- Fix IP address in ping example
2018-01-13 18:42:17 +00:00
Dan Robertson
439e0a2cc1
Add the proto-ipv4 feature.
2017-12-24 13:28:59 +00:00
whitequark
d8685dbb1e
Unswitch the IP checksum loop for 30% improvement in performance.
2017-12-23 12:17:39 +00:00
whitequark
fb11c4a84d
Convert the stress.rs example into a simple benchmark.
...
There are no more bugs exposed by stress.rs as far as I can tell,
so let's make it do something more useful.
2017-12-22 20:59:30 +00:00
whitequark
ae17151f2a
Fix a few documentation issues. NFC.
2017-12-22 13:13:43 +00:00
whitequark
8b6050f711
Clean up our feature story and more aggressively test features.
2017-12-22 08:54:58 +00:00
whitequark
8863eb8db1
Add an HTTP client example.
2017-12-18 14:53:09 +00:00
whitequark
eaa50d0003
Rewrite the ARP cache to allow for flood protection and expiration.
2017-11-21 10:53:55 +00:00
whitequark
cee79f30f3
Update README.
2017-11-10 02:02:17 +00:00
whitequark
5c2deb5dd2
Update README.
2017-10-25 00:30:57 +00:00
whitequark
1cd3625bf4
Small adjustments to TTL code; style, docs, and tests. NFCI.
2017-10-24 23:12:55 +00:00
Dan Robertson
eef65d2676
Implement set_ttl for Tcp and Udp sockets
...
- Add the ttl member to the IpRepr
- Add the ttl member along with setters and getters to the tcp and udp
socket types
- Add unit tests for the new set_ttl parameter
- Update usage of IpRepr to include the ttl value
2017-10-24 23:02:18 +00:00
Egor Karavaev
5be76b8dc1
Add support for IPv4 default gateway.
2017-10-03 15:17:29 +00:00
whitequark
4826d37c45
Allow disabling any of: raw, TCP or UDP sockets.
2017-09-25 00:20:22 +00:00
whitequark
0a8a962e94
Reorganize features using namespaces, to match module hierarchy.
...
I'm about to add a whole lot more features, and it's going to get
quite confusing otherwise.
2017-09-24 23:51:19 +00:00
Egor Karavaev
0e88617b82
Uncomment associated constants.
2017-09-24 23:25:18 +00:00
whitequark
2bb1d1bfc1
Clarify README paragraph about features.
...
We can easily (although annoyingly) do IP fragmentation with
the assembler now, so I don't see *any* features that are apriori
impossible to implement anymore.
2017-09-24 16:07:24 +00:00
whitequark
42b3a71f72
Add a keep-alive and timeout demo to the examples.
2017-09-24 13:58:53 +00:00
whitequark
73462b9503
Bump version.
2017-09-22 20:01:44 +00:00
whitequark
94e3109ab0
Update features to reflect merge of alloc and collections crates.
2017-09-22 19:54:47 +00:00
whitequark
4f6f6d7610
Update README.
...
Mention SACKs, don't spend many words on junk no one wants,
reword everything, and reorder the features so that the ones
with a higher cost/benefit ratio are higher up.
2017-09-22 19:49:54 +00:00
whitequark
e38ec8f397
Update README.
...
We don't really care about fast open one way or another, this entry
was a misunderstanding of RFC 793's behavior wrt data in SYN packets.
2017-09-22 19:20:24 +00:00
whitequark
7a2cd7842d
Implement reassembly of out-of-order TCP segments.
2017-09-22 10:06:40 +00:00
whitequark
9281733209
Implement TCP timeouts.
2017-09-18 11:05:40 +00:00
whitequark
fe80bca19d
Implement TCP keep-alive.
2017-09-16 10:54:59 +00:00
whitequark
bdb9c03081
Update feature list in README to mention everything from RFC 1122.
2017-09-03 12:03:55 +00:00
whitequark
9a5d056d7f
Add a TCP data source endpoint to the server example.
2017-08-31 09:09:16 +00:00
whitequark
a9c958612c
README: add some notable omissions.
2017-08-30 06:15:39 +00:00
whitequark
acf4688ad8
README: fix typo.
2017-08-25 06:20:10 +00:00
whitequark
afdf73ffef
TcpRepr::push → TcpControl::Psh.
...
This is done for simplification. FIN implies PSH, RST doesn't have
any meaning with PSH, and SYN|PSH only makes sense in the context
of TCP Fast Open, in the context of which, any data in the original
SYN already implies PSH.
2017-08-25 06:05:17 +00:00
whitequark
66a6dde59c
README.md: cleanup.
2017-08-21 07:28:32 +00:00
whitequark
e0d8fcfb72
Emit exceptional events with the DEBUG log level, not TRACE.
2017-08-01 11:21:58 +00:00
whitequark
7825bc6070
Implement fmt::Write for TcpSocket.
2017-07-30 06:59:01 +00:00
whitequark
ae903e8841
Add UdpSocket::is_open, similar to TcpSocket::is_open in function.
...
Fixes #31 .
2017-07-30 01:17:58 +00:00
whitequark
7b194c5d36
Update README.
...
Fixes #30 .
2017-07-30 00:56:56 +00:00
whitequark
bcd9be3d17
Update README.
2017-07-23 22:36:56 +00:00
whitequark
75ddbe9776
Add a bare-metal usage example.
2017-07-14 03:18:11 +00:00
whitequark
62c9b7d6fa
In examples, trace the packets being dropped by the fault injector.
2017-06-26 08:44:07 +00:00
Egor Karavaev
8d7fa94a6d
Add the `ping` example.
2017-06-21 03:51:02 +00:00
Egor Karavaev
59fc0c0358
Factor out the "raw_socket" and "tap_interface" features
...
This makes it possible to build smoltcp with the "std" feature on platforms
without libc, such as redox.
2017-06-15 10:12:11 +00:00
whitequark
53be7a7747
Add a sinkhole to the server example.
2017-05-29 16:54:51 +00:00
whitequark
91ef5c60c3
Add packet shaping to the fault injector.
2017-05-29 10:53:30 +00:00
whitequark
73bb4b8593
Implement TCP TIME-WAIT timeouts.
2017-04-21 16:01:49 +00:00
whitequark
06a019becf
Update README to mention lack of multicast support.
2017-03-06 04:01:06 +00:00
whitequark
c9a2ac7a40
Update README.
2017-03-05 06:18:50 +00:00