This gets us to the point of seemingly being able to wrap and unwrap IPv4
Remarkably hard to test this on a single computer
This commit is contained in:
@@ -23,7 +23,7 @@ int main(int argc, char** argv)
|
||||
int result = 0;
|
||||
|
||||
if ( argc < 4 ) {
|
||||
warn( "Usage: %s <rloc database> <listen_ifname> <output_ifname>", argv[0] );
|
||||
warn( "Usage: %s <rloc database> <listen_ifname> <output_ifname> [ <rloc> <keyfile> ]n", argv[0] );
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -49,10 +49,22 @@ int main(int argc, char** argv)
|
||||
|
||||
switch( recv_pkt.hdr.ip.version ) {
|
||||
case 0x04 :
|
||||
//result = wrap_ipv4_packet( wrap.rlocs, &recv_pkt, &to_send );
|
||||
if ( recv_pkt.hdr.ip.protocol == IPPROTO_HIDE_EID ) {
|
||||
result = unwrap_ipv4_packet( session.rlocs, &recv_pkt, &to_send );
|
||||
} else {
|
||||
result = wrap_ipv4_packet( session.rlocs, &recv_pkt, &to_send );
|
||||
}
|
||||
break;
|
||||
case 0x06 :
|
||||
//result = wrap_ipv6_packet( wrap.rlocs, &recv_pkt, &to_send );
|
||||
/* TODO: ip6.protocol doesn't exist. And we're not wrapping
|
||||
* IPv6 packets yet anyway.
|
||||
if ( recv_pkt.hdr.ip6.protocol == IPPROTO_HIDE_EID ) {
|
||||
result = unwrap_ipv6_packet( wrap.rlocs, &recv_pkt, &to_send );
|
||||
} else {
|
||||
result = wrap_ipv6_packet( wrap.rlocs, &recv_pkt, &to_send );
|
||||
}
|
||||
*/
|
||||
warn( "TODO: wrap/unwrap IPv6 packets" );
|
||||
break;
|
||||
default:
|
||||
warn( "Unknown IP version: %i", recv_pkt.hdr.ip.version );
|
||||
|
Reference in New Issue
Block a user