summaryrefslogtreecommitdiff
path: root/cesar/cp/beacon/src/beacon.c
diff options
context:
space:
mode:
authorJean-Philippe SAVE2011-04-19 17:46:25 +0200
committerJean-Philippe SAVE2011-04-19 17:46:25 +0200
commit471b8e21841c41dd59e1051ae5333bd0288abff7 (patch)
treee7ad3b7abd68dabaf61c02247258108551f2d295 /cesar/cp/beacon/src/beacon.c
parent46fc4b6bff67de6791e71a994b01853a948f0805 (diff)
Revert "Revert "cesar/cp/{beacon, cco/action}: merge two avlns""
This reverts commit ab757cebd85f7dd3c964cb181231ae42f5bec66f.
Diffstat (limited to 'cesar/cp/beacon/src/beacon.c')
-rw-r--r--cesar/cp/beacon/src/beacon.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/cesar/cp/beacon/src/beacon.c b/cesar/cp/beacon/src/beacon.c
index 2a105f5b27..ca7b2ea3b1 100644
--- a/cesar/cp/beacon/src/beacon.c
+++ b/cesar/cp/beacon/src/beacon.c
@@ -812,7 +812,7 @@ cp_beacon_process_beacon (cp_t *ctx, bsu_beacon_t *beacon)
&& ctx->beacon.snids.snidcd == 0)
cp_fsm_post_new_event (ctx, bare, cco__snid_conflict);
}
- /* Raise the event in the FSM for station action. */
+ /* Raise the events in the FSM for station action. */
if (beacon->vf.bt == BSU_BEACON_TYPE_CENTRAL
|| beacon->vf.bt == BSU_BEACON_TYPE_PROXY)
{
@@ -820,8 +820,9 @@ cp_beacon_process_beacon (cp_t *ctx, bsu_beacon_t *beacon)
if (sta)
cp_fsm_post_new_event (
ctx, beacon, BEACON, beacon, net, sta);
- /* The beacon comes from another ALVN. */
- else
+
+ if (cp_sta_own_data_get_cco_status (ctx) &&
+ (cp_sta_own_data_get_nid (ctx) == beacon->vf.nid))
cp_fsm_post_new_event (
ctx, beacon, BEACON_WITH_SAME_NID, beacon, net, NULL);
}