Skip to content

Commit 71d6363

Browse files
committed
Ip example adapted to smoltcp 0.8
Signed-off-by: Moritz Scheuren <moritz.scheuren@systec-electronic.com>
1 parent b46a041 commit 71d6363

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed

examples/ip.rs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ use core::fmt::Write;
1919
use cortex_m_semihosting::hio;
2020

2121
use log::{Level, LevelFilter, Metadata, Record};
22-
use smoltcp::iface::{EthernetInterfaceBuilder, NeighborCache};
23-
use smoltcp::socket::{SocketSet, TcpSocket, TcpSocketBuffer};
22+
use smoltcp::iface::{InterfaceBuilder, NeighborCache};
23+
use smoltcp::socket::{TcpSocket, TcpSocketBuffer};
2424
use smoltcp::time::Instant;
2525
use smoltcp::wire::{EthernetAddress, IpAddress, IpCidr, Ipv4Address};
2626

@@ -102,8 +102,10 @@ fn main() -> ! {
102102
let mut neighbor_storage = [None; 16];
103103
let neighbor_cache = NeighborCache::new(&mut neighbor_storage[..]);
104104
let ethernet_addr = EthernetAddress(SRC_MAC);
105-
let mut iface = EthernetInterfaceBuilder::new(&mut eth)
106-
.ethernet_addr(ethernet_addr)
105+
106+
let mut sockets: [_; 1] = Default::default();
107+
let mut iface = InterfaceBuilder::new(&mut eth, &mut sockets[..])
108+
.hardware_addr(ethernet_addr.into())
107109
.ip_addrs(&mut ip_addrs[..])
108110
.neighbor_cache(neighbor_cache)
109111
.finalize();
@@ -114,9 +116,7 @@ fn main() -> ! {
114116
TcpSocketBuffer::new(&mut server_rx_buffer[..]),
115117
TcpSocketBuffer::new(&mut server_tx_buffer[..]),
116118
);
117-
let mut sockets_storage = [None, None];
118-
let mut sockets = SocketSet::new(&mut sockets_storage[..]);
119-
let server_handle = sockets.add(server_socket);
119+
let server_handle = iface.add_socket(server_socket);
120120

121121
writeln!(stdout, "Ready, listening at {}", ip_addr).unwrap();
122122
loop {
@@ -125,9 +125,9 @@ fn main() -> ! {
125125
let mut eth_pending = ETH_PENDING.borrow(cs).borrow_mut();
126126
*eth_pending = false;
127127
});
128-
match iface.poll(&mut sockets, Instant::from_millis(time as i64)) {
128+
match iface.poll(Instant::from_millis(time as i64)) {
129129
Ok(true) => {
130-
let mut socket = sockets.get::<TcpSocket>(server_handle);
130+
let socket = iface.get_socket::<TcpSocket>(server_handle);
131131
if !socket.is_open() {
132132
socket
133133
.listen(80)

0 commit comments

Comments
 (0)