extern crate rips_packets;
use rips_packets::ethernet::{EthernetPacket, MacAddr, MutEthernetPacket, EtherType};
fn main() {
let mut buffer = [0; 14];
{
let mut ethernet_packet = MutEthernetPacket::new(&mut buffer[..])
.expect("Too short buffer");
ethernet_packet.set_destination(MacAddr::BROADCAST);
ethernet_packet.set_source(MacAddr([0x01, 0x02, 0x03, 0x04, 0x05, 0x06]));
ethernet_packet.set_ether_type(EtherType::IPV4);
}
let packet = EthernetPacket::new(&buffer[..]).expect("Too short buffer");
println!("Destination MAC: {}", packet.destination());
println!("Source MAC: {}", packet.source());
println!("EtherType: {:?}", packet.ether_type());
println!("Packet data, including header: {:?}", packet.data())
}