Fixes for the Forwarding option.

This commit is contained in:
Guus Sliepen 2010-03-02 23:27:50 +01:00
parent 3e4829e78a
commit 8ae54dc7c7
2 changed files with 4 additions and 4 deletions

View file

@ -360,11 +360,11 @@ bool setup_myself(void) {
if(get_config_string(lookup_config(config_tree, "Forwarding"), &mode)) { if(get_config_string(lookup_config(config_tree, "Forwarding"), &mode)) {
if(!strcasecmp(mode, "off")) if(!strcasecmp(mode, "off"))
routing_mode = FMODE_OFF; forwarding_mode = FMODE_OFF;
else if(!strcasecmp(mode, "internal")) else if(!strcasecmp(mode, "internal"))
routing_mode = FMODE_INTERNAL; forwarding_mode = FMODE_INTERNAL;
else if(!strcasecmp(mode, "kernel")) else if(!strcasecmp(mode, "kernel"))
routing_mode = FMODE_KERNEL; forwarding_mode = FMODE_KERNEL;
else { else {
logger(LOG_ERR, "Invalid forwarding mode!"); logger(LOG_ERR, "Invalid forwarding mode!");
return false; return false;

View file

@ -844,7 +844,7 @@ static void route_mac(node_t *source, vpn_packet_t *packet) {
} }
void route(node_t *source, vpn_packet_t *packet) { void route(node_t *source, vpn_packet_t *packet) {
if(forwarding_mode == FMODE_KERNEL) { if(forwarding_mode == FMODE_KERNEL && source != myself) {
send_packet(myself, packet); send_packet(myself, packet);
return; return;
} }