diff options
author | Shihuan Liu <chiaweic@codeaurora.org> | 2017-05-19 20:14:45 -0700 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2017-07-09 21:00:28 -0700 |
commit | 4f82daedd2534f248900628fa3227f73431ea3c8 (patch) | |
tree | e7f2aab011f4e89e8b1f06cdd9f3ff0bb1abde10 /ipacm/src/IPACM_Wlan.cpp | |
parent | dfda87d642c35b9185081a837182a9cc182dd0f7 (diff) | |
download | ipacfg-mgr-4f82daedd2534f248900628fa3227f73431ea3c8.tar.gz |
IPACM: add support for L2TP
Add support for L2TP in IPACM. For WLAN->ETH direction, we
use UCP to do two-pass processing to add 80 bytes header.
For ETH->WLAN direction, we use UCP to do single-pass
processing to remove 80 bytes header.
Change-Id: I296aee0fe857a7db4fc29f87c833224d7c0ffd9d
Acked-by: Shihuan Liu <shihuanl@qti.qualcomm.com>
Diffstat (limited to 'ipacm/src/IPACM_Wlan.cpp')
-rw-r--r-- | ipacm/src/IPACM_Wlan.cpp | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/ipacm/src/IPACM_Wlan.cpp b/ipacm/src/IPACM_Wlan.cpp index b47c5ef..54a2e66 100644 --- a/ipacm/src/IPACM_Wlan.cpp +++ b/ipacm/src/IPACM_Wlan.cpp @@ -1,5 +1,5 @@ /* -Copyright (c) 2013-2016, The Linux Foundation. All rights reserved. +Copyright (c) 2013-2017, The Linux Foundation. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are @@ -683,7 +683,7 @@ void IPACM_Wlan::event_callback(ipa_cm_event_id event, void *param) { if(data->attribs[i].attrib_type == WLAN_HDR_ATTRIB_MAC_ADDR) { - eth_bridge_post_event(IPA_ETH_BRIDGE_CLIENT_ADD, IPA_IP_MAX, data->attribs[i].u.mac_addr); + eth_bridge_post_event(IPA_ETH_BRIDGE_CLIENT_ADD, IPA_IP_MAX, data->attribs[i].u.mac_addr, NULL, NULL); break; } } @@ -700,7 +700,7 @@ void IPACM_Wlan::event_callback(ipa_cm_event_id event, void *param) if (ipa_interface_index == ipa_if_num) { IPACMDBG_H("Received IPA_WLAN_CLIENT_DEL_EVENT\n"); - eth_bridge_post_event(IPA_ETH_BRIDGE_CLIENT_DEL, IPA_IP_MAX, data->mac_addr); + eth_bridge_post_event(IPA_ETH_BRIDGE_CLIENT_DEL, IPA_IP_MAX, data->mac_addr, NULL, NULL); handle_wlan_client_down_evt(data->mac_addr); } } @@ -802,7 +802,7 @@ void IPACM_Wlan::event_callback(ipa_cm_event_id event, void *param) { handle_SCC_MCC_switch(ip_type); } - eth_bridge_post_event(IPA_ETH_BRIDGE_WLAN_SCC_MCC_SWITCH, IPA_IP_MAX, NULL); + eth_bridge_post_event(IPA_ETH_BRIDGE_WLAN_SCC_MCC_SWITCH, IPA_IP_MAX, NULL, NULL, NULL); break; case IPA_WLAN_SWITCH_TO_MCC: @@ -816,7 +816,7 @@ void IPACM_Wlan::event_callback(ipa_cm_event_id event, void *param) { handle_SCC_MCC_switch(ip_type); } - eth_bridge_post_event(IPA_ETH_BRIDGE_WLAN_SCC_MCC_SWITCH, IPA_IP_MAX, NULL); + eth_bridge_post_event(IPA_ETH_BRIDGE_WLAN_SCC_MCC_SWITCH, IPA_IP_MAX, NULL, NULL, NULL); break; case IPA_CRADLE_WAN_MODE_SWITCH: @@ -1804,7 +1804,7 @@ int IPACM_Wlan::handle_down_evt() } IPACMDBG_H("finished deleting default RT rules\n "); - eth_bridge_post_event(IPA_ETH_BRIDGE_IFACE_DOWN, IPA_IP_MAX, NULL); + eth_bridge_post_event(IPA_ETH_BRIDGE_IFACE_DOWN, IPA_IP_MAX, NULL, NULL, NULL); /* free the wlan clients cache */ IPACMDBG_H("Free wlan clients cache\n"); @@ -2163,23 +2163,23 @@ void IPACM_Wlan::eth_bridge_handle_wlan_mode_switch() /* ====== post events to mimic WLAN interface goes down/up when AP mode is changing ====== */ /* first post IFACE_DOWN event */ - eth_bridge_post_event(IPA_ETH_BRIDGE_IFACE_DOWN, IPA_IP_MAX, NULL); + eth_bridge_post_event(IPA_ETH_BRIDGE_IFACE_DOWN, IPA_IP_MAX, NULL, NULL, NULL); /* then post IFACE_UP event */ if(ip_type == IPA_IP_v4 || ip_type == IPA_IP_MAX) { - eth_bridge_post_event(IPA_ETH_BRIDGE_IFACE_UP, IPA_IP_v4, NULL); + eth_bridge_post_event(IPA_ETH_BRIDGE_IFACE_UP, IPA_IP_v4, NULL, NULL, NULL); } if(ip_type == IPA_IP_v6 || ip_type == IPA_IP_MAX) { - eth_bridge_post_event(IPA_ETH_BRIDGE_IFACE_UP, IPA_IP_v6, NULL); + eth_bridge_post_event(IPA_ETH_BRIDGE_IFACE_UP, IPA_IP_v6, NULL, NULL, NULL); } /* at last post CLIENT_ADD event */ for(i = 0; i < num_wifi_client; i++) { eth_bridge_post_event(IPA_ETH_BRIDGE_CLIENT_ADD, IPA_IP_MAX, - get_client_memptr(wlan_client, i)->mac); + get_client_memptr(wlan_client, i)->mac, NULL, NULL); } return; |