whitequark
|
f468f47959
|
Validate ACK even in TCP LISTEN state.
|
2016-12-26 13:00:39 +00:00 |
whitequark
|
2de98aea06
|
Add tests for TCP error conditions.
|
2016-12-26 12:44:41 +00:00 |
whitequark
|
25d453447f
|
Generalize the TCP tests to accept multiple packets.
|
2016-12-26 12:38:40 +00:00 |
whitequark
|
ea78053dc1
|
Factor out IpRepr into the wire module.
|
2016-12-26 11:20:20 +00:00 |
whitequark
|
ea07e79bdf
|
Group IP header parts in the socket layer as struct IpRepr.
|
2016-12-26 10:06:49 +00:00 |
whitequark
|
b5a9917950
|
Implement TCP data acknowledgement.
|
2016-12-25 11:19:50 +00:00 |
whitequark
|
0ae27678a0
|
Implement TCP data reception.
|
2016-12-25 11:09:50 +00:00 |
whitequark
|
bdfb99ea16
|
Validate TCP ACKs.
|
2016-12-25 09:22:49 +00:00 |
whitequark
|
fa1a51b90a
|
Add tests for TCP state machine.
|
2016-12-24 23:06:42 +00:00 |
whitequark
|
f5f0b8e435
|
Add basic TCP three-way handshake.
|
2016-12-23 08:05:50 +00:00 |
whitequark
|
3c05139204
|
Add logging capability.
|
2016-12-23 07:59:38 +00:00 |
whitequark
|
f46c77bdd6
|
Fix autoselection of source address.
|
2016-12-23 07:57:54 +00:00 |
whitequark
|
6539019f19
|
Get rid of explicit backlog.
|
2016-12-23 07:34:10 +00:00 |
whitequark
|
6d8d3cb29d
|
Use correct sequence numbers in TCP RST packets.
|
2016-12-23 07:34:10 +00:00 |
whitequark
|
3bd715e1bc
|
Use signed integers to represent TCP sequence numbers.
|
2016-12-23 07:34:07 +00:00 |
whitequark
|
2f24fb263b
|
Populate ARP cache from incoming IP packets.
|
2016-12-23 07:31:42 +00:00 |
whitequark
|
1ad8f9c9bd
|
Implement conversion of incoming TCP connections into TCP streams.
|
2016-12-20 22:57:21 +00:00 |
whitequark
|
53ddc9476f
|
Fix no_std build.
|
2016-12-20 22:06:36 +00:00 |
whitequark
|
bddb5f9127
|
Implement TCP server sockets.
|
2016-12-20 19:51:52 +00:00 |
whitequark
|
5a64a87dbe
|
Reply with ICMP dest. unreachable or TCP RST from unused ports.
|
2016-12-20 19:18:35 +00:00 |
whitequark
|
a3481537d9
|
Add some sanity into buffer names (avoid clases with wire::*).
|
2016-12-20 13:56:59 +00:00 |
whitequark
|
0d9a8a417d
|
Add some sanity into enumeration names (avoid "*Type").
|
2016-12-20 13:54:11 +00:00 |
whitequark
|
c562ea784d
|
Fix TcpRepr field visibility.
|
2016-12-20 13:44:41 +00:00 |
whitequark
|
3d5f47b89f
|
Implement TCP representation printing.
|
2016-12-20 13:16:29 +00:00 |
whitequark
|
513923725e
|
Implement TCP representation parsing and emission.
|
2016-12-20 12:52:33 +00:00 |
whitequark
|
31040bf0fc
|
In Repr::emit, do not assume that the packet is pre-zeroed.
|
2016-12-20 09:41:08 +00:00 |
whitequark
|
77b2819691
|
Fix a pointless crash in smoltcpserver.
|
2016-12-20 00:17:49 +00:00 |
whitequark
|
6d2c11fb61
|
Fix IP checksum calculation for odd-length packets.
|
2016-12-20 00:17:29 +00:00 |
whitequark
|
095005a597
|
Empty transmit buffers before starting to receive.
|
2016-12-20 00:07:02 +00:00 |
whitequark
|
f86fac2223
|
Sort out buffer lengths.
|
2016-12-19 23:50:04 +00:00 |
whitequark
|
9c922d0306
|
Implement TCP packet support.
|
2016-12-18 21:42:44 +00:00 |
whitequark
|
71fc81b7c5
|
Implement TCP stream ring buffers.
|
2016-12-18 19:40:50 +00:00 |
whitequark
|
fe96ff3015
|
UdpBufferElem → UdpPacket
|
2016-12-18 19:40:02 +00:00 |
whitequark
|
2dc837be9d
|
Fix lifetime variance.
|
2016-12-17 06:39:18 +00:00 |
whitequark
|
666b615171
|
Fix a Cargo warning.
|
2016-12-17 06:39:18 +00:00 |
whitequark
|
a1401b2861
|
I was going to license this under 0-clause BSD.
|
2016-12-17 05:14:47 +00:00 |
whitequark
|
31e44445f5
|
Working UDP loopback.
|
2016-12-17 05:12:45 +00:00 |
whitequark
|
c672b94ef7
|
Rethink the buffering strategy with Managed<T>.
|
2016-12-17 04:15:55 +00:00 |
whitequark
|
d1d910b46d
|
Significantly simplify buffering.
|
2016-12-15 17:27:17 +00:00 |
whitequark
|
3fb5f04b07
|
Implement network part of communication through UDP sockets.
|
2016-12-15 05:40:55 +00:00 |
whitequark
|
fb172ed1ed
|
Implement UDP sockets.
|
2016-12-14 17:39:44 +00:00 |
whitequark
|
2b01a3dace
|
Implement UDP representation parsing and emission.
|
2016-12-14 02:11:50 +00:00 |
whitequark
|
5a721a7b11
|
Implement UDP packet support.
|
2016-12-14 00:11:45 +00:00 |
whitequark
|
57e544cc8c
|
Return interior pointers more uniformly.
|
2016-12-13 22:37:05 +00:00 |
whitequark
|
53309f8271
|
Simplify checksum computation.
|
2016-12-13 17:31:08 +00:00 |
whitequark
|
1c616218a1
|
Respond with ICMP echo request data in echo reply.
|
2016-12-13 17:02:50 +00:00 |
whitequark
|
9eb28ed6d7
|
README: clarify.
|
2016-12-13 12:31:33 +00:00 |
whitequark
|
d587981ef5
|
Implement ICMPv4 echo replies.
|
2016-12-12 23:22:59 +00:00 |
whitequark
|
c18d6bf04d
|
Actually commit ARP snooping.
|
2016-12-12 22:41:34 +00:00 |
whitequark
|
2482117682
|
Implement ICMPv4 echo request/reply representation parsing and emission.
|
2016-12-12 22:38:13 +00:00 |