From 2dbe6fbd4f794924b1ef4dbd2f648f840dc2e99c Mon Sep 17 00:00:00 2001 From: Kirill Andreev Date: Mon, 12 Dec 2011 18:40:41 +0300 Subject: [PATCH] Bug 1021: Beacon collision avoidance in Mesh module works wrong. fixed. --- .../model/dot11s/peer-management-protocol.cc | 98 ++++++++++-------- .../model/dot11s/peer-management-protocol.h | 7 +- src/mesh/model/mesh-wifi-interface-mac.cc | 1 - .../hwmp-proactive-regression-test-0-1.pcap | Bin 8198 -> 8295 bytes .../hwmp-proactive-regression-test-1-1.pcap | Bin 12499 -> 12811 bytes .../hwmp-proactive-regression-test-2-1.pcap | Bin 13760 -> 13978 bytes .../hwmp-proactive-regression-test-3-1.pcap | Bin 12527 -> 12915 bytes .../hwmp-proactive-regression-test-4-1.pcap | Bin 8100 -> 8216 bytes .../hwmp-reactive-regression-test-0-1.pcap | Bin 14384 -> 9776 bytes .../hwmp-reactive-regression-test-1-1.pcap | Bin 20603 -> 18731 bytes .../hwmp-reactive-regression-test-2-1.pcap | Bin 22332 -> 18839 bytes .../hwmp-reactive-regression-test-3-1.pcap | Bin 22322 -> 15190 bytes .../hwmp-reactive-regression-test-4-1.pcap | Bin 20875 -> 21614 bytes .../hwmp-reactive-regression-test-5-1.pcap | Bin 14761 -> 16788 bytes .../hwmp-simplest-regression-test-0-1.pcap | Bin 77039 -> 77039 bytes .../hwmp-simplest-regression-test-1-1.pcap | Bin 80402 -> 80478 bytes ...hwmp-target-flags-regression-test-0-1.pcap | Bin 10436 -> 10534 bytes ...hwmp-target-flags-regression-test-1-1.pcap | Bin 14980 -> 14888 bytes ...hwmp-target-flags-regression-test-2-1.pcap | Bin 13355 -> 13264 bytes ...hwmp-target-flags-regression-test-3-1.pcap | Bin 7211 -> 7398 bytes src/olsr/test/bug780-2-0.pcap | Bin 103402 -> 104122 bytes 21 files changed, 61 insertions(+), 45 deletions(-) diff --git a/src/mesh/model/dot11s/peer-management-protocol.cc b/src/mesh/model/dot11s/peer-management-protocol.cc index e91e6275b..fa1dd1bdb 100644 --- a/src/mesh/model/dot11s/peer-management-protocol.cc +++ b/src/mesh/model/dot11s/peer-management-protocol.cc @@ -164,7 +164,6 @@ PeerManagementProtocol::ReceiveBeacon (uint32_t interface, Mac48Address peerAddr { //PM STATE Machine //Check that a given beacon is not from our interface - Simulator::Schedule (beaconInterval - TuToTime (m_maxBeaconShift + 1), &PeerManagementProtocol::DoShiftBeacon, this, interface); for (PeerManagementProtocolMacMap::const_iterator i = m_plugins.begin (); i != m_plugins.end (); i++) { if (i->second->GetAddress () == peerAddress) @@ -180,6 +179,10 @@ PeerManagementProtocol::ReceiveBeacon (uint32_t interface, Mac48Address peerAddr peerLink = InitiateLink (interface, peerAddress, Mac48Address::GetBroadcast ()); peerLink->MLMEActivePeerLinkOpen (); } + else + { + return; + } } peerLink->SetBeaconInformation (Simulator::Now (), beaconInterval); if (GetBeaconCollisionAvoidance ()) @@ -371,81 +374,93 @@ PeerManagementProtocol::ShouldAcceptOpen (uint32_t interface, Mac48Address peerA } void -PeerManagementProtocol::DoShiftBeacon (uint32_t interface) +PeerManagementProtocol::CheckBeaconCollisions (uint32_t interface) { if (!GetBeaconCollisionAvoidance ()) { return; } - // If beacon interval is equal to the neighbor's one and one o more beacons received - // by my neighbor coincide with my beacon - apply random uniformly distributed shift from - // [-m_maxBeaconShift, m_maxBeaconShift] except 0. - UniformVariable beaconShift (-m_maxBeaconShift, m_maxBeaconShift); PeerLinksMap::iterator iface = m_peerLinks.find (interface); NS_ASSERT (iface != m_peerLinks.end ()); - PeerManagementProtocolMacMap::const_iterator plugin = m_plugins.find (interface); - NS_ASSERT (plugin != m_plugins.end ()); - // cast plugin to void, to suppress 'plugin' set but not used, compiler warning - // in optimized builds - (void) plugin; + NS_ASSERT (m_plugins.find (interface) != m_plugins.end ()); + std::map::const_iterator lastBeacon = m_lastBeacon.find (interface); std::map::const_iterator beaconInterval = m_beaconInterval.find (interface); if ((lastBeacon == m_lastBeacon.end ()) || (beaconInterval == m_beaconInterval.end ())) { return; } - if (TuToTime (m_maxBeaconShift) > m_beaconInterval[interface]) + //my last beacon in 256 us units + uint16_t lastBeaconInTimeElement = (uint16_t) ((lastBeacon->second.GetMicroSeconds () >> 8) & 0xffff); + + NS_ASSERT_MSG (TuToTime (m_maxBeaconShift) <= m_beaconInterval[interface], "Wrong beacon shift parameters"); + + if (iface->second.size () == 0) { - NS_FATAL_ERROR ("Wrong beacon shift parameters"); + //I have no peers - may be our beacons are in collision + ShiftOwnBeacon (interface); return; } + //check whether all my peers receive my beacon and I'am not in collision with other beacons + for (PeerLinksOnInterface::iterator i = iface->second.begin (); i != iface->second.end (); i++) { - IeBeaconTiming::NeighboursTimingUnitsList neighbours; - neighbours = (*i)->GetBeaconTimingElement ().GetNeighboursTimingElementsList (); - //Going through all my timing elements and detecting future beacon collisions - for (IeBeaconTiming::NeighboursTimingUnitsList::const_iterator j = neighbours.begin (); j - != neighbours.end (); j++) + bool myBeaconExists = false; + IeBeaconTiming::NeighboursTimingUnitsList neighbors = (*i)->GetBeaconTimingElement ().GetNeighboursTimingElementsList (); + for (IeBeaconTiming::NeighboursTimingUnitsList::const_iterator j = neighbors.begin (); j != neighbors.end (); j++) { if ((*i)->GetPeerAid () == (*j)->GetAid ()) { - // I am present at neighbour's list of neighbors + // I am presented at neighbour's list of neighbors + myBeaconExists = true; continue; } - //Beacon interval is stored in TU's - if (((*j)->GetBeaconInterval ()) != TimeToTu (beaconInterval->second)) + if ( + ((int16_t) ((*j)->GetLastBeacon () - lastBeaconInTimeElement) >= 0) && + (((*j)->GetLastBeacon () - lastBeaconInTimeElement) % (4 * TimeToTu (beaconInterval->second)) == 0) + ) { - continue; + ShiftOwnBeacon (interface); + return; } - //Timing element keeps beacon receiving times in 256us units, TU=1024us - if ((int)((int)(*j)->GetLastBeacon () / 4 - (int)TimeToTu (lastBeacon->second)) % TimeToTu ( - beaconInterval->second) - != 0) - { - continue; - } - int shift = 0; - do - { - shift = (int) beaconShift.GetValue (); - } - while (shift == 0); - PeerManagementProtocolMacMap::iterator plugin = m_plugins.find (interface); - NS_ASSERT (plugin != m_plugins.end ()); - plugin->second->SetBeaconShift (TuToTime (shift)); + } + if (!myBeaconExists) + { + // If I am not present in neighbor's beacon timing element, this may be caused by collisions with + ShiftOwnBeacon (interface); return; } } } + +void +PeerManagementProtocol::ShiftOwnBeacon (uint32_t interface) +{ + // If beacon interval is equal to the neighbor's one and one o more beacons received + // by my neighbor coincide with my beacon - apply random uniformly distributed shift from + // [-m_maxBeaconShift, m_maxBeaconShift] except 0. + UniformVariable beaconShift (-m_maxBeaconShift, m_maxBeaconShift); + int shift = 0; + do + { + shift = (int) beaconShift.GetValue (); + } + while (shift == 0); + // Apply beacon shift parameters: + PeerManagementProtocolMacMap::iterator plugin = m_plugins.find (interface); + NS_ASSERT (plugin != m_plugins.end ()); + plugin->second->SetBeaconShift (TuToTime (shift)); +} + Time -PeerManagementProtocol::TuToTime (uint32_t x) +PeerManagementProtocol::TuToTime (int x) { return MicroSeconds (x * 1024); } -uint32_t +int PeerManagementProtocol::TimeToTu (Time x) { - return (uint32_t)(x.GetMicroSeconds () / 1024); + return (int)(x.GetMicroSeconds () / 1024); } void @@ -522,6 +537,7 @@ void PeerManagementProtocol::NotifyBeaconSent (uint32_t interface, Time beaconInterval) { m_lastBeacon[interface] = Simulator::Now (); + Simulator::Schedule (beaconInterval - TuToTime (m_maxBeaconShift + 1), &PeerManagementProtocol::CheckBeaconCollisions,this, interface); m_beaconInterval[interface] = beaconInterval; } PeerManagementProtocol::Statistics::Statistics (uint16_t t) : diff --git a/src/mesh/model/dot11s/peer-management-protocol.h b/src/mesh/model/dot11s/peer-management-protocol.h index b2cb481f5..094b3c21c 100644 --- a/src/mesh/model/dot11s/peer-management-protocol.h +++ b/src/mesh/model/dot11s/peer-management-protocol.h @@ -194,13 +194,14 @@ private: */ void PeerLinkStatus (uint32_t interface, Mac48Address peerAddress, Mac48Address peerMeshPointAddres, PeerLink::PeerState ostate, PeerLink::PeerState nstate); ///\brief BCA - void DoShiftBeacon (uint32_t interface); + void CheckBeaconCollisions (uint32_t interface); + void ShiftOwnBeacon (uint32_t interface); /** * \name Time<-->TU converters: * \{ */ - Time TuToTime (uint32_t x); - uint32_t TimeToTu (Time x); + Time TuToTime (int x); + int TimeToTu (Time x); // \} /// Aux. method to register open links diff --git a/src/mesh/model/mesh-wifi-interface-mac.cc b/src/mesh/model/mesh-wifi-interface-mac.cc index 7da9c16eb..1f46d3e18 100644 --- a/src/mesh/model/mesh-wifi-interface-mac.cc +++ b/src/mesh/model/mesh-wifi-interface-mac.cc @@ -379,7 +379,6 @@ MeshWifiInterfaceMac::SendBeacon () NS_LOG_DEBUG (GetAddress () << " is sending beacon"); NS_ASSERT (!m_beaconSendEvent.IsRunning ()); - NS_ASSERT (Simulator::Now ().GetMicroSeconds () == GetTbtt ().GetMicroSeconds ()); // assert that beacon is just on time // Form & send beacon MeshWifiBeacon beacon (GetSsid (), GetSupportedRates (), m_beaconInterval.GetMicroSeconds ()); diff --git a/src/mesh/test/dot11s/hwmp-proactive-regression-test-0-1.pcap b/src/mesh/test/dot11s/hwmp-proactive-regression-test-0-1.pcap index be42d0a20dfbba18d07b79ea0e9b8939000b792b..9d06e7c1eb4213cda162fd4969bed90b931af146 100644 GIT binary patch literal 8295 zcmd5>OK4nG82-;BH#41?WTpxxpiZW-O~BR|Y1;Z~JJlpjCCE_0ZfDVl;sgc+U5IdN z7gmT6v(SyuXltS&wWXlNT_9i=rZkJJ3ewR{Q&eb0x)S35pL1X5p8w7@Mmjlg?(3X< z|NAi~D~ngYNI)yNV{HxKP3I+d5a308rfJ&%YjViNtb3h3AfI4W&|Rb^9_rdYFj}cT z3WKfVC*FQTtpYrQSV!@N=CVzQI21}oKI63juMmn4q9As637F3T%{AvP-=BkhEg;EC zfcr?H1D|NF*zyyA!p4`+O8{lO)AZ=8RZo_Jko1EbG@xw>5uiSg_y%=_j1)gO#7M7E z&u>urDWnih{|>Gi(remB`u|$`1ZrNFe(oiPx~Kc|FEgv{s1`Yn3^BZ^RmU<#mp4?n z=U@?*QM@GrmU()Z(Y=O0uuk0*jTT6_0>H76M)HlE1VGo6)AKxyehG>&+zoi8(N4f; zAC}MRlJ!XejGYR=opl1~zr!8H2=%zzINTuSj{gzv{#yWOJ~@|dE(4WOYePFgbPHEu zp8h_?FCrO8TF#EHYJf*J6%}I)k_j4Q0pX0u^L+o+afX;?u8JZi&;f90+{-T-v6~1N zp%6tfGoTcbD3}V_g`YTu%s(mM5YnO<%JU8=CSTk`!^ra%+Iv;#$^KwH2^bS{h5((A z&cn4^Nggl_JH@IHzZs}YKc!;W%meMA!LV6R2H7NOy3tb`vsr}OHdY=EFbzv7WOD*9 zzVL(^ugxO-Ud{8U7M#w70pqnf0Lh+C9xx5#d1SL6FFKp?+8lsvM;DK3K~HB8km4a; znu$4FvUas4KF9bHcF{BXTAv^1ItbM1CS-xg7yw8&}B9 zAe_s)X0A!ayPNJ@Wl*w~L*xBKZ=`-5Rg{%}69rShPYGVX@c~+bU6)ikX7b2lA?*2I zo=?IUGEXygMz2z;{7g&HAP0{lPcSz}Qm5Lmn}N1gpigLsv=ElsjZg9$iF94VX8Pt_ zh5nj4-6GvW*h(uI7g156eYEh=g=7QI==>^Ds*K{ZMnK3pJhon`#%6-pOcRs4tgtg6 z?XVuH{+?%~k}gOx@BB6igiSMb#-Xfy$qBIqT)~01qMJjRqTHtU(pCVn6lrupz!s>| z*9S9*{}+&dquY?2)9Mtij^UkV$P*o#*|>rOy(Q9S(px-Fv}ikF4_}VN&Z^zZw3V=B zGZwO$^k|5{{`fmaD$i!mejlXF*{m)JhivA?7cuX|mwfV~ffhy)J6fOTaMkb@scq+% zWo}YJhN3U*ErL7-wxGXM)%FK*CF$x{8R?|A)9SGw80mt^I(Jtwsz>3bkuJV5D#PL9 zy;24vk*DEOH+CE~y!ed~X(hffD#KX0k4LrOcyADp5`AYY^8-PunN~+Izzi4D5|UdW zn1qBu)y#xM{J)O;^8rMw7dh#)0Gh^KIP~(RT+ElQDFHA*$3m{**rUVf2A6{~Y_trGdCU+D4Z8n{a7I~@iJMkW z*BN5L#GSQ;B<7y;&>xXP{BxclvFtCA3Q?6jQ%BzM94%2W74kfKIH!9j87F7Cp?B~f3xrX|tw*{Cjr zq`QheiqSy^ojEtHY{&f$-UQOccOjE-ZFNW*$Vhi-7(9SU^e-dl#djf-u(UGFqgrrh ID40b50cY5DNB{r; literal 8198 zcmd5>U1(fI6h3pao85F1ca4$+Qj>kCDZV6&wuypix0pn$VuO^5NM#Xh6&kxDRBTl) z=D{kpUH=mCL8DcxrGHvYU#diX5-eS$`19n?gFg=iAFO>#JZI+KyEFHm+3ObC&A{y4 zo0)v)obUWiCg;BX6v&zRsRi zg*!?+)+DALe&UgvdITKF0?j4wDc^5_krtp|P~$6_; zRlK8i&P=`4k8w4^oZ-1Vc+3ecTP(~um?uf$XqoaQCq3}n@mWT?k*Nh=`v34-LQ2>D zwsW_D3FLrgC{L9R_<8Xu#d9Q2SHM0@Ua=oP%#58MOv465q!~i>qAdrsheiZ73A;rY z@IY@{jG8&<#yu>cr{+*vMu*Ed0L=Fsz>p}FZ zEXI8uqz`HMBR)k+JF4J2?HWMPh{+1h<1im%az;1#EW$-PwFDwz58loQGg79agbAb= zN5C)k5j6~9e<7TO5Ks4lBE;#767rbf2}y0#bYz{@kdE<1sR&OlDs!VXP;~Z(WAxpF zDYzTSpqZXFqd>WLPEnPG>(E3ve3<-`Zp9J=tqHF=XIBW3RJ-vTZIi)p#=!PYqk1r8 zi?kIWgS_GhVJng|J|ajdw2u~EcrR5aGB&-hTg9A%vnL3MBulOuk^G&3Z7`Nm98ej@ zk%g6wGWO;X#wr=nWb-#iQ$TvtOiz1OsnGOTUBDF_=qq}7R#8y9^j^FgfILNvE(mCY z9rV*HGf4lRQ2$6aOU-Gua7_0Z$7@NciqT@_RYpq?iAnke!v5m86}w&SuKL*hjbcCW zDPvXOv)0da$(+xAQIbuc`T0f4qd&=O@>`G%w9tjvc0Q+YH4-gG_LU`MDEq?EBBbm# zjF&4MEyv~=>w?<<`zgjcz4mAS_N~)1eA!qRe;k^G;gbW>hG-#&#YiEKKMqa8?Axm? zfa2tU-WjOIcPDJ8V_KcSc#K4sQH%WEz|vD8ILywa zqN`?IQ*wv&Ki|q&C%r?fQ~2j(#CJySRkvkUc)SSPcCtUJS5XXH*r z63OOH&AO)LPRECgbwTdz`H1nIkvj!@?kofA;`>e+c3oI&33b>o6b|+HzEg%DejT;| ziVJIXKx{d6`VOte_no5R-#kyL+J)iS%-kXU?R|$<nwm`b~Ft5#-euH;Q#MLuTJeH zVca-T!8UK4$Wb)tIgWokt;Z+LDtmcR5)HtO;cfmnLeb=JoXQ9%Z=6UkIXXxW(r_m} z!#7T}whci89etDac9S^)^>xhXCTATd+S_FHr(JL1YDAd9uPdZ5(T}^e`?A`NlP>Ir z7Aqm@IFMOD-H{NdFG@%fbA==15AJ3}>PVuyxbAG6Jt`^(x%!C!&90vV*0Tp$_Y7y9 z9t_zkxrMKvHS3yIKR-WYJA06Iqp@d?IpsU^R!jB1Wnf+W*`osUBUByO`Z>KWT<+q} S9u??bMgOql0L9JYI^chF2W@Ns diff --git a/src/mesh/test/dot11s/hwmp-proactive-regression-test-1-1.pcap b/src/mesh/test/dot11s/hwmp-proactive-regression-test-1-1.pcap index 698fb1566210a9a35536e819f4c881bb534282b4..115ddb9088dc5851e2a0879fe338aa2a28273092 100644 GIT binary patch literal 12811 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 diff --git a/src/mesh/test/dot11s/hwmp-proactive-regression-test-2-1.pcap b/src/mesh/test/dot11s/hwmp-proactive-regression-test-2-1.pcap index 605f61e5c91e9dbd752179e3a8b8c7493154fbcc..081d79b2908e693afec1907546950ee8c65b8f99 100644 GIT binary patch literal 13978 zcmd5?Yiv|S6h61Kw6JY=)hHx}vM5p$Bi2|%RG>%!9|S5S;wxrN@J-VuCYtz&i~JA+ zhWd;oCIV_vH1hC42qvKX;E$0S35oCOA5mg_gb;pc@H;d2&feKMvqQnKdy_ley>s_F z=R4=jIdg9B!F@Y6)=@nr$B7d}55!-NWQmsGGoM4nYxPxJ!_k_IZFFOV&r#Fbv&T>F zxW2HWv%dG9hwr~)d_?czR-7l|zv}x8nm&s72l^OumWE=ugT?rwmVhsrvn$PR$7~Po z;#1ZxM{SYPF0G$OvpQ(j5Jf57va^YpGoQsG(Ft|n3sG}2Zl0w+(P2fYWQ6lcn?cVK zT@EbAk{YE&-GlM;EO`tP*ou}VGl~4yx&&M4S;OVzZAFf)o}MG{v+&`I(~6WW*Hz;8 z17?kVSI3e1zuNbWxq^J{I~e(fZo$5KHnwj*iA98%St}J|u`U&hw*lYru11FR%jTun zC+pOb-Z4V!^J*AHbxHWpY)J6Se+9G7O0=whDl4%hec60Ly0QKCWkd)+b(XDDR$2XY z4({Q@S*Hz@#YKCueubM&FeT>HP+DjUoH?RkE;r|^w^kxF>o&ohT5?S2RD!8w&PBj? zoT-svqRF=l>@Df18%&*$;FrG!vraH+?PBXgzE0~Wv6Sjns;Wzc^1?d==^7dA=iWnv zXjbP?(MtNU^e)O%_eDf`mGW^bwXkVdpTi$fXc|*>LSLdz6jY>Vbq*!jNyEk2fkEd@ z1gQFj1*onxm%K;R4LHYsCK==&^a|5fYz+x(O$*Bd&Jm`8pxN(fVaZa_%wk~$%`5^r z9ERB|>MMq9TG+o8g&ljy>zmk&JrD-pL=&R~-V!MJX737tpQ)RRdQ--<`Nbkb{4!~N zcLB~ZrUrt-i;oZ?)2Xv8k!h1+djdZH5>zZT6byAXMvTBx*mhAYd8ivsPTev zKGfbEP^V(BQNuCNK^w33qW*oJh#HQ84%+&K7xjX1K)nV-NmpKh;TY(m_I+(W3$%_0 z>H!Be90OhS>9=0g7u!VCa13i1u9#dJt=QeR?8?D#8=t) zu16rdqV-Nru} z3HGKpym~j6={;ej*w4P%=vvG~`NF}pA>^4P;GNjgQ87npn9(5#k(zfGE zJaH$m9bYL_p8Y_QtV2S}&-ODA(9y5p7>VTm&4Ofw%9782Ti~o~ot9tXJYl4gKYK@z ztgu;f`@4K*5FqqjdddayU|5Ik;H z>w_PrB}=PyShKQMYf??vFmW|epG=nIiN}ELUrAp|lC71rK|yk@;SXYNRCP?@~b`;I9pLZtRNvd9pxv*d3dKF*;JxsyM*JU^gw{7PE(bdcup^IYmSbx0pTjN3Pwc>vBeY5<^K>-UD|bCfz*$MZCYomDk*;DAG_8YOmBsT!>RM(FQE zriwkDJub0Rahp_)A?8-zBb7&H)!5A#E3h+>c|W}9_|B>t#&?w>vuf$Pd`pLO&iCs(^_ybk>xc1m+*cT8euRgGchC|8XdU^o3O zft^{K_u}b{<2$Qr7~i>Tvj*6;;2DqOJ5x0t$5R@IomDkD{8gjGu4pJ(l&?^A>D1NyOYfT?5?0VlT06aJUd+&dz z^;W*Q5Lqv`r2+AKyiLtl_~5^{0M6NUDj=S{_=l7*`%OB%&RPpmWnrypVOIgp5vG9n zuJ#|j=8A>&LzsHs%r(~_0LtGtW6-|=>WEZ(FP>dFoZ=_`tG^g2e#uJ={3G^`d5Iy* zSNPz+&jZd8X829|IVH?CX6(6QR9RRiE$ni@Il_$Ra^60dF=k7hpsou_UCIpjcPs#? z_Ksz-x6fsEgAzM!V$Ctrk+5^?LJhF{MSA~1Y0m7<3--CjcWzy%0d~F8n+~eaWp+E! z1v|ZxwPV@f-?5a~Rjumnm%4bfDrW@y+<3QXzd@p(FVz6M$F>O1C`@F&BfU*w^|{7( zl_Ilhz6=4|mLYYXATM literal 13760 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 diff --git a/src/mesh/test/dot11s/hwmp-proactive-regression-test-3-1.pcap b/src/mesh/test/dot11s/hwmp-proactive-regression-test-3-1.pcap index 799438c8051c0f550c0bacbee49b4fd80fffb25b..f94fe75aa8f9320212e9b98d3607cfb98c186890 100644 GIT binary patch literal 12915 zcmd5?ZHQD=7=G`%)2_4a&Q_8_HBM$qkhY|iWgjDHNFTQ55Bne*!#*`!2rBx3Yf%VE zEl5$(kG0Hd4KnRRvuGozA5rd)EwV3HDN-Z~ky?VV=RNPaXYQGE&R(~TW)9ptvvbZo z@B6&(InQ~|+#UL4+r}nprlcJ`N_3b0qg)`m81MOtW1^#~sZR8u;r>mBdPfH$evMk! zpEzZD*W$|RQ)q7UJ-6L^r}Prtim}(>555LtMnn@7LBPF8S29W!L?Gr&iRcXs#dTD_ zs=qI!3nq{>K0;LmH8sl{3DKmkpF0XsxgjicG`yvf7fiazWgGy7(>SkvrF zzz@g%z1xT|o7FWKTcWRXU#1c*Jd>zow6~oTyY3|1(4v;qJ|Q2`9)Lmw)MeDy3Mqpw znhH?$4GU0x(ovl|M0;-!`l#nexA+)Mb$xsmcs?KZ-{J95;Pehr%J8v}_VF;_oG63Z*^ind7ce{XU9|C{$$r2*9X=Uu&hD&rGduHL z^yZgA)M=A}Iv=+xc~-aV%$Mo<4Mo4NIdTEBGhe2UzY757X+sfi?snYF&U~46uMz3- zWd0LI{T?@)`~{~+A<@>0NpCw;GCM*01jHh=HS(w%06Mx-_J~sA&dmZ;pLDPZZVY$s zv=p3I<;Mg!?~EX2y)a|=g=!$0>QeUYv^;A5^puau<{)rdKFS%C3u($%0gk`T*HDZb zHwDDTUQQbue?YD}(_>8SHEgUfBN#5tOwW*}q8l#Xw$7vG0o2Tp@iW*5I44{x`fO~% z%#^VtH!{1`80zSi+$0-!GQX=EcRDv)02emax3Pt;hEcv+AG2!Bf)tSz^q>`_*zE6T z?AGH@^V4z76iHt`igGd<@6=~ZBS|Xs2&*<6QP65E%cN^d;zR|G9gpLV%Yp6WN}+P^3qH#-sl|R_ zD+3X=(P{iL7R$?D^H^4>Z25`TTZpmwYJJS&EcV+pXUq}|Ni4He$NYC0KaDU?W<3zm zL|VnH7jfJ4YS|80i_q;F|peGwuhBj7)#$tv(lEWh0&)B!*Y6I9Fye@J3W@o7Bcd_ zXGto*^pdO!dD?RAl8jU?CqhvFXE|-%D zc4pRO9~HZ4-@^ep%G2B#IM?({tv%Od9~Halx6YX=ZjQ+1X(gjRf?M^p#ARAD7Ne61 znP+<2?vqT|iXoZ6ck8)rv;ULe1G~%DP>dTlR^`Z*sq7!1DijrG`vLRx z^(=_r2{UWOFZ&0m3Kg~mQFF6_TExwk)af{PI;oY3t0k3t(R`AM1z>oeTfjUA~55 z+_)J@ebUFylGKt+T)P+((P;p7pTF#3r?SJ#@~=&v+*y)3%+c^mY6Gy_;XB0|N&Url zij|ou87%xR?0k}1Wmh*z{S*E>Gt)@w5}a|Jb!SOxS6EUTfZbC#g*)ub%*;OH_Rx;| z&QtmGNUAGS*;Q%}o&He(Fi-cN2l3nHh+lS<+C%3oJKyhSo;EY;N4QlbwHafxtJDF7 z=#^Bg>v~Em`yZ}Sxi`B?Er%tw0oaABRA!f5rJ5Stt>YSiU4O7jWp;Zqt5j3RjmEAn zlFI%cg#V7{C`sksa%Pp<9hTH;?&`)a4pynmF1t#N>6^)yV5H~CbB0O&RNR}hmw&~*5ckF`C^{x?qg8xoHP4?zz9=m!)iG9be24MG4@Yu!Er9bo7 z)s?VwchLr5cf|K-)XdCFGml+mVdpz`RoT^T7hMuOc5&`r@v)N?r&nKJ!Y=*DS$+^` z0CqnIAB{4*>|<9ijqF&6k=`1?-FLH(UA?p-;;qI5n5Uf!v6~-pcJu6GS1+x3CWv~F KQKLoa8sQ&63uV>- literal 12527 zcmd5?TWDNG82-;@x7lV*Hnu`5)nt(x5urq@hJvN3ZQ3eDLhG9-`{E@SVWD2ARyk6w zMPs^Bt>QyXTdkT_jIDTmFc6TU4-J?HFAo-My@Dv-zz5^^&zzk-v-8g$x1zfPbIxvN z_W%FyzkD-uPUdEg9Y|4{Ds6tAXe9d5_ZZO-K69T9iRM*PgPoOYf!1G4R0z~}Tsl*@ z>|U(D2JNw*L^Ec_h_1nB?qMhky$N%;eXGO<*|9}Sm-lZfjxM7s(|6sv?G8OkbO!Ub z;0yQJkR_sN)4J4WTzlwxmQod>MXX#J(9t|`pO5b9`zjh}BZG$idNQVA_kW>bW}JwP zh~e7~`Hpri85;MOh0$}AVYn>Y z8}m)Y`<88mf9d_ppuun5c8of{v7+CIZ&HZ7?VD9k3)(e4p#Ku1j&|*vC^G$($iU$y zh3iHp6^qP=&j{YNo9MJ_QXdko#PS3pXtrAHKw>6EHoht>{9!>Qed#0n_Oc57-MY3fi?~ zX#WVK4pmv&kuD8U64Wt~ zPh!+zMa#Od!isQw(lVx5v5l&>aS^VCjojrz?WYePU81lE@mbVe>&^q~v#vW;I!8Od z&T@n9)I^$ACa^o-fChg;&tueam{rm!7`==%;IOLp4~7Ko3Lo3{Jw}~n#L|v}Ig4ea z8nD+l)YE_aMghI${fP>CY@?IXC9U>c=~%kl2l;;AC-ZYZ9Y5wvCfcT%;1aVG|D?zO6XGxh=;bpBXKzPv1 zfqS3&ii@S}`Hg}y(}l|^|nj> z_0xhujG*PI00lHT$-c`j0GrT)H1VG>))535JsY3Y-&pp?e%W1m_5}Z$W%o8J`}c!h zyF0b)X(bx6dm5EJ_ENi>5yoTZzZ};bJ%iBMtn(s2t2O69{b)5F(}BxX{G@%y^LXG= z$aZp3N#)T{(yS9h>(5WIAfg;y$hSr`uYN_)Y!Y+y)plap+_O6^%vyhLm=&rl;ajAc z>ptY~gXa=)jxg%!fELmy|MmZA?71DV-|?%d@gF60@fy!fYg3V@{Grv*tvDi}GqJn* zs1Q4q&Cw1mcdCLep06zvyYZ=by;%$uRr*ibe$<<{(p9|~hEnGh&Wm^bvLl9?t;oKx zQQ4>8h}$jIOi{}Qv+@VAS{1XZX@)V_?q4C>pU-a}6Es`-d`gLA-sKOCXukWnpxNYF z@0)^VE7vM3MjdYSV4kyNTX_(zR3(inM;A02tBc+dP$|3F+Yh}fRFJ|PRZza06*BME ztDt}xkQRdfM%C>9<-+!l!+s}Q%&KxmLT9ZiroQ5+0y>kC$p_wHT5zII z#X>kz+~}MDk`Fz@^vkb4fpnrTex%^NR2sQ6g*$h7Z4EJkX7hyhKYrWHwUzBZ4>ma2 zrSgYI@08G4Tx1v_&P6SQ?g$FVL8r2d(S44K6FZCV3c!zsT`1qIokI)6ZW0eq9dycm zM)%o50iD8L;k|y1PU5{Px~4D#+y5QxchITa)gJw}(8c0?BMmHfO{Mb{MGWBYqyzrzfQ_jvSP37y4z zhSgo(YXNj`dG~vaE_uHf(rrgpW2U&@8*peUdA}FZ)=zx`>B#C@-s}6z`*K6Cs-0mF zy*h)pb?ankzE@{Fwh2Pl;Lcrsbyf_lS7$7`A`l;uFf4`}-!t|si|qiPevqq7*T|LUv+Q}ExOL9gqsyC9(U)fo%@BuKgL(iN^N0dElMj`bWPhAJmNhMF}g1#bk@GW upmX;HEr4#B_dLYtlFvhB+O?S%8gXCnsk4kHpNGn{ZM#n(Z61p63;qThKJ9q` diff --git a/src/mesh/test/dot11s/hwmp-proactive-regression-test-4-1.pcap b/src/mesh/test/dot11s/hwmp-proactive-regression-test-4-1.pcap index 5ee1d957bd900c96f24cf5f1cc9bbbc684d6238e..1c07b009df360f20362f6a61d809723d0c131304 100644 GIT binary patch literal 8216 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 ZreZn1WmV7Uqs$CdUJnyUBSU66{s$6SWtIQ{ diff --git a/src/mesh/test/dot11s/hwmp-reactive-regression-test-0-1.pcap b/src/mesh/test/dot11s/hwmp-reactive-regression-test-0-1.pcap index 3d1366e960ce9a04a600f11487d0f5daa973144a..8cd494873052d74e779488556c328a4ecc456342 100644 GIT binary patch literal 9776 zcmcIqZ){XW5TCufy}KT?TuWk`Q0e)Hs)*%Eg#wXKz#;(}3qgp2dPw*u#k4ep2#Gn0 z#8Skx8Z4k6N`fD#MvEp8KWM5Zn23obVj4A3ViQFJT4F+*DAt+Xd#~^A?cVk%ZK`hsk8w>lVFyKX-b~@ar+J8Ll1onxW(^uNm^+_L`ypW3Bt!-b!<*Dct|4 z%l%7&%2%JUh_Lf59Q zt|VeG)rXaYjPX9G4*4hv_^``1>_kv{qY2^L0*4H@gwQ)_ya;Eb<3;$iaJ&e|i^hx4 zKAAxQE(`TbNx42CBLn`?GTY%z%EUb0$n@A81-}fV$bSt->+wn5_BA=0sx;y-mC35r zQMYEPSUK}KYSx=7c8QFPe^o2APh+pSrMNu06Go81Wqq5!ZmvT6w4w#~iPYX%wQIEZ zVZF{7bL_){c?x#h_9v!?fvR}w>MAb^l{kl*E6t@gzZk@q{SSuSdfHxg-;A((mD93Q zy`?8Eo_#vWs;A#^4k~ykY{;*P9M_R-=?A~19xSWKrr*%ou&!Q~*5*;5In-R1XRB&4h_XlF=;EBtyu#d`DHpWPa>dirwi3=%^Fy@ zScA%;pe$2Nvo-7C%=_g!F&87C?{Il0s@apz~!7Du;R(pxK&@aD8yLPRxS{==*GTrkG}HHp01SbJVCDuBQRgMNS1O zzY?F+!w1rj+Va@lD8L{BrDUh>Zh8#|F-$@*kjiwC2xCDx8{dfoIblDk$L4Z&+`^uc zEB5_JP>bKD-j__1I~DS3AO??41BeNEh=|i>Y@JMRF`Wg)BO+e$g#=FER|$}M2B@4J zOiEBz<_5(J043;_39|Tc7eGWgF&|(dKB@Ovg(ixDEk)Uml(l6LC>0;tI&@k|K4QHg zxKe~u=X)A$#?jHmro4+y(n!h()j`-ea$?I^Y)QneB?htVG>@?3Nb6!2s5JT`4!M|} z8935~v#@ax5i1ww#+ZUxU=wrIUAV6Jq#izy(%ETX-h(69(81}EVkRFD-dR(KL+IY5 zbuWWFIg4hx8}ThcK9?PYjcN1*j*i+P-EHNTNJv;*0fz4~>_8u(jYt-IyV=-v_h_+G zo3mGZoot*d_Pf&*TG=*!q1Io{q8@EWHDW z79ivo4}6JO?+9f#qNo>`Mq_w5G29O^$Ndne`yo25(RV4q0Q_k@-gLpLOSC#l7ukl3 z={vR3=^}*sQ=39++cFyto1~6Ar53kZeh8-wMfhb$vf-Qed>0hw)saeWx99MkOP#0w z2^kKxH7vK^Oyr@K0+d{a7yni4W7}Yfo7qN#|AkCPdX~Dnz~2x}NBV%cx(Hx)w`4O% zksfH;y++JeM3KC@E6iWJCeuaCQKSc|yEUjBcDn#SKc~AFpt68!pX@OvDHNa>L;G*6 zF@~_sF(zThm|U^jwwtaWdZFXSdLg^Q_}yqG|8MJ^#wUr*JERxZt=OPOQaGIASHhaNk=sco9bvotUp7p#Q5~ znPQr~U=Yq#G^#=ew-u#R$ zr*fEpXmYvCJ0;30OIyTz#fI)fa|VX@XS#@ar$pIMqXv~jX^Rt(3V^mJOxY*KR-MKY z5}QKICIk!|Ka`1T_N5prF2WL0h05Wy3$Xh}$aMM5nwEE{0VAxa4aJ<_ktwFxnsHYB Mkp`8+@-)Ez0nmu>qW}N^ literal 14384 zcmcgyZHyJw89p;RbN4bVy6x(+1q#<%#k4|igw+&_U1b*=0_jHFAABV@1sg?Zw;=to zrtt!5`0!%|L5o^e%hxVgwoHxh9Cae{-A*hw56u>dC!?SGiT<# zJA3c#^d#rZg>&Y4-}8Q*_q?;GPrdo7EgTWFt5=11$p6P0SBP)mH}!H^h^w;6$y_jA z@?RaZ=zpyIQ=f19a`9WG4b#PZXX68#AC&7bJO-@$@T5LkCPXxaf*CZ7GsO}@2|*OZ zyf#amxK>cV>ObYbzb@`*5R$9}coJxu!j3E`9Bj;*!Ylc#DeRe)HHG)QtSS6)a@G{q z9F9<6t+lyMYrXGCgaT`=^-_4`Xx0>t9m|@+M}t{Y_|H(*6mC0_HHCX#7veU=KP7Y4E}P)N9+ z!UmIjF*|;sEHZ)8js(hE8yI};-fv+xfp6^32%|0qVjC%}1`ww>e9ixbJ&gPe=LY|E zCDAuMAECg8k9sMr*q1ehP5ZN^u=|CqDI9t+YYOlEIBN<|9$>t|u+|R7+oEa7caAkC zy;&i^oAZN>q8m@@I_)v=yTwdPUMb;Z`er)Lb<(vOL<7)NyKX3g&-y}r_;()97JvSU z#$>cL{`z?OS@2q3R45;)faf*~T0<>ye8kEJ%YK?q?!}0#y;bhTmgR%6 z@UaFIDxVz3F`KY86_@?Jz?PM*SrfIjXxU}MA%?m>76vezI5!RIu*4eTet2#^aCkiW zpB;(pKJWxX`sHBvsK}&wnghwZmJ>Nun~pNn<^CwS*a%9C@uVJ0LzE111<`&l3PflL zJM!$k`7x{EH4I@cLa6D01bTC7AL3*2- z7yO{7)5H*yKs37wv!Mwwl~%8eRcJ0~qQy)|5pn~=5z?4w9Zj@NVJORu(CjJ9CMZXb zG;ai}&|EQ#9@S7@-o{YY0&e{RtObbF^V|JBM+NMTVg?OvLl2)aSyqw$-SIh0!D(pM zBbJz?R?$qd(N1p$y@a~827ZLuP!6Uu7)}fgkm1JUpln%cKs&L<9-LMY+jsf1ie<>S zTI`(#W>;Fq^KXb!=45dY3^&@!58lXdV_3N$!N;w6 z&5XyYPY+ef3u*JeINX>Nw&6<6YI~-d)%Gw`ttzc-X!cNpM-IN+g%Dx*JH;wNogGDQn5~TK;7Z331wWN671r zE0wAE&*9FS;9nvW|9{48LVgDIvQ^7vPeBlcbK}y#6JLlEyEnY#Y;f6|Kv{*Z*;G~u zsecCi#O~!Z@isa23rT;KyH^)|wE?0qC-n|z4|C$dbN5_J+>XW6`Oq_9;XH2j579=1f7QI; z7n%4=KuNfm4lsXB{faPLr;A;O8h?Vm48g?R6x8P{&%TA(MEEhn_ec%7dg;)(|$f#{su(Z%WA}MlC;= zAo{X-6h$eQ*ij*uI0Vo{mB0w?=Y^~iV5Fv#6ZtP1TouRFIkx%n2wZT|)($u0iKe7o z=!0PhvkBe}yEtn}-Ys=e(Y)^`zNs0!cRs}s(36taxCx!efq5Uxe&S zcv9DUH1w~_69p^@>W<3y0pRa(Li(4x0Cr-JQvWo&6|yhkNnLYe=)a?~{%hbSJ=-gb zY2IDnhLNdjU$ZbS&i7G!N^DOXR5vO`ivdNwTsDflO60kIas3;em}SU$j&~PS`0oVG z7Oui%1eET|W{P#yn(2+)H+;!Isj!dZM(s}Vn+Y4#xA8Xv35iQe#LaYk z@h{;?oj0gbWrM1LoAj))Uo1G@1#TD(yY_Hr)Sze=>0Un|+Pmq?0R!kc$Gc!MFJlP3 zo>0^6en6~Tx{OD4?e3*crX`|_wlY0v52G9tF@S;Yf-&bj-?tlVEPgl0mh>E1FT4m`7( zM|JHztKxv^H`YC!waJ|2CTM|JHp>*Ijw(mXHDY}v#Edd`OrgUw%KFxgC(=6P}D z2b+0R*Z$$AC?LwS6Og8`F17aYfS$8yGuT{Px# diff --git a/src/mesh/test/dot11s/hwmp-reactive-regression-test-1-1.pcap b/src/mesh/test/dot11s/hwmp-reactive-regression-test-1-1.pcap index e7a2e045caffb17f0af71a437f34601c04a120a6..2a1064460e575fc3612da3e5f723db48e72d4952 100644 GIT binary patch literal 18731 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 literal 22332 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 GSpNqD@Kav^ literal 22322 zcmcg!4RBmV9p87C*Snmd1aR8OM;fK2fKoGUX$1kJ_Jd&nGr-`$fLy5z1q35V1yMXw zD5cOED6|Mg)3mfDEg=d5!;BEYQIW9|p{3@<9)Yp`^j_$&T~mJ45-*-0Kg zd-+@TZ<^S8V)0wk>n^?EiUre}JhpjXM%Uipo&Wn7HZ#lU2GOPgM=~r)gW((bv>DE+ zPn+S&LfQ;J_(a+a{S9d|oIaf~@*uiOCC2vh#{CQyLc{CMY5Wr#<}MgH?Lkbqt>|U! zN?=L93_V|V&)Hp6ATX*2X}N}FNT=Cm2Exu3DANTGDuR~0R+ zIfGS&NXZ#CGnb)soxvsAd3_3k)f?jw4u2piLPLL2gv`&AA}oJ`u`fdiM)8p4px@!|OZJW@vgbZHBoo zG1d;pqf3T47P4r<-u3V$Pi!8P?ZXHg2j9ymTZgunl@Wx#s^KFE)UY{;(#(@8Ln^-d z$e)!I5RO5MhPXtw?iB^WDq|eN+P@@4xOONhLi?*p5&jN@v2ZQAwwCZhO(a2lxbQUv zKh(464ScaxopO9J<#^2JF!b_0AQ<@KUi9AiS4*$(Mf5J%!`K|W(^ZzH$2p1jNA%VM*SNct^S zVN>x=mz;OBNQS3H+qWFer5SAAWGJ%df#8nRiTJjGufo zL(a@Z+EE7ZYnV5)(1&P;ZB!V-SR7S`t2X7#5lRbvXY)wC6ZeP1!}awhSed?TapP&1t=vn^NdOi$0to6aQe7cQB@aH?`9q0Xp)_5v6Tb;{&7 z`TV@8PA$82h3Z6|tg`5D(gS2OxL zo_o~MKMs6@UFv?xihRsItdTY1J62~ZWY)u(vh(t)M|t?_e3Xjj;GM3r-Cd9#TG){b zQ3^#fT(sbQx_;Qpn5cAY=Rg$#=3CenuhD^;S-3A`U17)?zY}d?t<#;Ta|t!mSgwIZ zNYD;h0}ZsYlg5vC$m%@_z>JAXVeLQ-G|4vQFKG4eAw>eRV#{qRM zprdnB+5>zRj&L&G>B=wCOOK)qSws(7flVNv>FuTY66JL-&&JdRhgyY#=Zz8H#wYq3 zKk`1)jhz?Y?x(L3c5}7Zoe?fM&V896*BZae#giw>m%r|LqW>9K+0<~j8rj_#g)uTNJCPlMCkc#^2}=fMCktU@*+X=)KU&H5 z?qeb2a75M%IU@h1!atf&qaZ5`iof}o*3io0jvz4HFxnW8K>8DPJO*rIm>iXQ_d`NA zn1$&Ce_;sULh~6PXEn@QfNd~K1z(NyY%q%;5&VU&kojQxP!01h_p>ldryW0zu_6%Z z%HOPMTQK|G=s`o4qql&WVyl(@-3D~Zais474^;pzAN81xbUYb+h8{Q*^rJw=BbTBpSq`3#JmQw8qCrwPj0b{ zS@X)kl9=CVRAt&8am+6rYGIZ>^wWu!co3N}$jrf*^~_uz4<6TdJ+ehiuIK}wp$D0* z{Ye&SM9va266=an_H@2)2>89ey=>wl3O_Wu7Ez)RN zrA=5$UjvrwrebMc1fL;|wA4K~6E4C}>B@&*tYsCsA~3T`4Z4Zn^|!O7XCc+0SYzq_i`}3iK=Vbfe7i3}kHXD1(8r--hopgJNPm!2+3riw z-#9?`!C9?QVB*dY{;HwqDFrP4{2`r}i`5W~bq>f4qjLo6jh}9dtoOsC@J(xAte=d) zcmsYM9WfDV{B&Dnr!Jo2K+Sw~lo1$&dN^`|p$nnfz-k?aF6h8D(#5ZVVCaJ1OZZ>H zV=V^0Kn@J3;qzi1;ro0Xgzz;W82J2N>MibZJ^>lv7g_(K4z2jv#Z$`F+zG(b08E$6 z1)4%iUM=;3Xh7>?pQ=g9&=dPqO;U#L*r#feGHiHXu|rrX7*#v0{vd6JTVtQ9Nvfr- z|A`APFhsR@p2{e=qVRnk2=4Hj`k@71vqG1O&%@W(!uJ^<82BR^Ak8^3=-v#bo~ejXE`nVIiEk$x)fpi6p#w&H0se370Pjxuk2F}Z_XHhBh#WyQmtC?-cP>MkaeqT`Fna4-=detdusw~tj=#O^L86Z@ptVsg^a?{pTE ziNEWcN-;SMFKulxP{rs)FbRhKdC-SXQ4i{04aw0sNm6pu(%#g6*I4Ea4p7zgwf#z+Xhk)Z#-*^xNUHQ z3RC6>ykOg4f;zViolZ%`RhBt3$Fipc_g)qLmxWO!YY0fwVN|e2V z8k^ju%m5v4zM5dK2b|mYp0$x_+e#W=RAZB5vc{&7U2~&_jLS|Vt6yRnndVj{K~^V@ zXeC*%a2*_Dsw10ylZ8xrcz$UED}t0Rd59s@D8}b^34Pg0OyH~LD2@i#1U^I0aw7Y- zO&WFi;}3<>@Y7T6ptc5SX5DO&Mj9e_i$yo;a>CyoN~0d;i{qvmq}g|wMH*?TXVFVm zqRVcn?ob-FoFb%w>Z`TXYc^@5rH)x{kw&wW)QxGW8l*Y4OW_Mkp(*ltEB?QH-K#9N zm&q=3mqi*i*%g8vhV2+O^2CY`K4BcTKlqF&<=Up+Wj1M2w8i;%TcnXux)Qw<6LiVA zP;+ynn~|clV%=P_dL(I@f2K$i`l*_{3;iNWZKb9fEH$vkB8~K$MLmi%;SsgwH!a{q zv-u579psFPb+ZC|Zok=SlSZ>tV<$m&?Ti2mJ%8&w1r-5 z&U}$H6~z?s-3n|&8qP$$!!~KOm&vc#^|}WY4le& zDAI)aO^e}Ry=cp}HH<#K(okYMk2@ZcSq?M`8QOkkhqXN@jUv9%P-4q}??gTRcQ;?JD7Hn#batfO4O(&E`PJE%gi}hVJ+lBhdEX3nS zMm)x!igmHZ)h^V!enP!?wkj*sSwTkXW?KrUj411B1NEyo9ybn@RV(L-XRdy>YttFrxMq1N!!wte4Nkm)5UjovhwvHv z_)N-B6T*9m5njDLsSFR^krd&El}QjNo@otx9Ny_Fm9)pqgKRLs#-4HxdM$IN@_#`R z7Wv!ASc7cJuKBT8I^<+jBnIhgI2^)YY==utpstw~GsGSbeGA*6@7_lS$e&?Kf_nbZF?9J}x z?wvWi*_^xI_dCDmdEDf{o)=pMR^HHXi};FtQsf{`Saw9O98f!J@x;PMS^5-N^!Q#vS@tw7SMUSZ8$tYcfp3gXNRAQRpLJ?iPLwga zGM07uqWcsW41R$P{$nbCPzJQocT~v#`V|)baQs(asc1jo*Srg5NLW{0*gCA6z>?PY zJY~vpBk+yUhraa}8@o0=?hM%BGU3|X!Ol2)jl%xW_bu$<*xyEPxP%GDuCZs!(tQo= zDz1%J72}_CwNv-f_h9>BN0!iig5}x24SYlQq37)#tmjF}lBk4z(hY1W?xD+)s4nvg z6V>#;)|+(V`+zurUL%cYHL4U-i^0|?gMDYH-ZZ9$U#c;QLuL5*V6pM_w5MF^6b_ea zV04dNo!(%5p*pYc7|qVd-P8&SiS&*P`(!S*m2esMNqg<7!(QTyq>4&Kr+V1a z*xDN$s6Hdqe0d_kCHHtPG3B^3?2&y9B&AKv8%9IS4!r27i=L==p~}Ixv!?g46=X-< z-vHD<8mQ4O-_9N#gY6$1s?P{j7n2O?u#p^mJKMPmyFE6*v^RD<#C*T05H;HJ9caeM50U^y@tS4G4leq z0Kr}}>7Erfe1R%nM_*Zk>3`Zu!%`kpaoD5XGa%hgaBx_zf?!bkbN50oT%$i5o(KW9Rci}?KD-}Ds z=4IKjj~x-~vlpkTDS(7MZ=td~9V~UUOx{;w*wSLFhKaBxhAX})HV`Pe9mwH@F3v!` zt*b2jT2K#^$gidiVrX2gFj&(@r3`J|aWkBHW84g1x+!jksW->X@QpQbGtB8xcK3s5 z(Y$rHF^!-|pfG2AP5Len>}8&Ob=^NL_*yi=SMw)1^)wr-WpyH)IR2U=7W^>UXofov zJk)YIZK^M)DOon*Qmh1V88ckp`(#>S`snVp?38HpDk!9+sxQ)qnBI~~egXzVVO-_Z zyC1!sc&8TbL23pW40cMeQi<9p5}OCUoRty&(R&qqYx1ZJf7^YQ(Q*9|`+MjuKBqcV zqIN}c%xibk{l)k%ct9C_;O?4rD;xb~z<1mBf@hrjP{P8=F80vMGodG&v({cZqtIEW zZ*i?TNZAL_Yq*jYdr-F6bn}PnN@`^O?%Ak)sH0^WvyLl(M(|;OvGGN(sk+$2hh6Gq zraGh7BwcLwr?a?tMlwlz51)D1tGx~{`85fp${bqpnOO(!z=fF^4SKjUGs2FZnH?o$ zJ~Jy7`(12bIOI->osM9qgte54{UU69KE$F{khWzc8}K~Z8~BwcTrb?TCl&wR4Js=P^Ehbj z$tLJFpxZ$ALY}z*rxs>;0Vj8)J6VP;Xk~b%E0mIdqL;L&z>LpJ4+73eI~<5ca5{hu zGNBMT0#XaeJn-QP$sXq)@uHFK!%p8?^Pr}2Gd2g1?Lf3*n&9?$EdUi4)mcl#^?h|6) zHL}auW3w3?^6#hWDk0ia#IYn)8`J1n|3luXS+R?5~HIY^CCSx4L(DQ zp)36X`_OTXbOUyy4d&3V?#I@07V=R`20E6O!>?esF8*fK1AMAfJv;?ILz++zZ%t67 zv05ePmIhv2sx(93b4xROqD2}tz>M znLhcw5Jjk(1BgEH%CRLI=PAnnUJ_4URrM>)=MH($6y4)dAhBS+?h%UZ#=wdujcs1pIBYKA-GaC$2VExHgd-Ire1y&8%4C?nwYrwO?z!snEq=bbe3|Xl<-7AwiU$N|CA{`y7m2P^ zpAiZ4w0k}hCjZ$railoegx=7@0(^BYlh%$N`4dKjPTv)gw#|kg&Q7AIbOY?sNsBp} zF;Vo{?DGpJUq|qWuyJ^$DP+Ja=V%Z!AvvJ;_bCiP;EyQ7=KaM?()MW0Yl539>}s3sXPfg0Ij z*wdI|wB<}Km(vbZWC|EyJC|RAUdx0=d7O@HbN9HE89iFKmwNOo4%YMO=BHqA``$m$ z+X*?Sg-0%$?+tqLG?X3$4*oep(LcbbS3G}flZ8F>%y-aRJa-%_D|d*6HtBa^vt@jm zesLOG@}F4b@s|SMt=(nNBISyS)&_VXu zrmHxZS+;FM&z%r4^o%Emj`hB{(lkyw6{gE3~+D z$3D0gcUr^X$*WYaCBQQQ7-p4Vil`|hlPG7#CDwDqaLjhx87gcIHV{IE1^mLkazGub z!uWhBfq#{gH^>GcxE1yv8@@KacGci~K1AqwgWQP&Spz?mf5|gmMEyR*CfvM&>|ySP zEA^W+wPK6q(Jf6Eon=)p5gx?wV=x$F;o6|yz344ozdI7Lz9olSzf&yFe%G@W_E3}0 zp|`jvc9!LdLV+~CRsF^Io3~mho{QV~hM%aci-3J|~2RKr|Jo|LlQ z4JuTh$_7c^1bqwug_VQyPCuR=FP+#b?TkJ*@CZ?q?}QbD2)o05JD^bF)W(FETbfZSAbwhNYFfC?ThsHjQ7ar zchc=JLh#yGE4T3`ly3zxx)A4yqEsT|SikZ&(LNL**lii+-XUf_9 zN>lDD7SF$JOS&dMQs{Q?(KYvSu)`j`Vdvwcm!9sZxk|gY^UeEkr!C*4dhRXEH{I^FqjXHU eY-Sm%S^P?qB*nZvdO^B7s9q-Met;LwRsIjfj(*4h literal 20875 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 J3gF?i{(nv(O$Y!0 literal 14761 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 MxU{7XYO>}30aSeX?EnA( diff --git a/src/mesh/test/dot11s/hwmp-simplest-regression-test-0-1.pcap b/src/mesh/test/dot11s/hwmp-simplest-regression-test-0-1.pcap index c7032c797b87411999c69d19c0f6b24f19cb2bd4..1952060f6c878e9c3b417f3912e66f3c0c552b2b 100644 GIT binary patch delta 1002 zcmZA0L1@!Z7{KxOr7umls%bQ63sS3Po3thDpdN%V6nZf`tk~N?rbQ+MAx?Ig2iGYS zsgsr9;_#BArHAQy*h!`ydKtKQk{t$aJ2;3?4-*d_>dRY`JQB#|z2E!iJLGkDaCZm4 z7b4Iz?p9L9Q%>L$Nb3p4Bb+pfk&@gK4&e%Zc>nPOL>?foddIK_GJFQrEs?UHgjr&k zX?_upqSlSJjwg8e<~f#eUM2wD?KnJR7D~I8W^JVb(^xV1}PY z@gapeP>35+!Y*iH9pyVlV?5RVH%@5hDob&YTtMo~7)|~u5jQgyc0rO~Mp~>$ZMQ;f ztjJp4Z({Nb9n z5s#j5$6V>3!V92&FiUwD;UfNlWzf=_?tzs8h@AS$`+@~^r_*0gz+Y1;K$a_i4brFF c^d&F-3AR3))dGybTXQc58Quox`mV441ClWzkN^Mx delta 955 zcmY+?O=uHA6u|L$o0+U8>Si_724sndX=y^Jq8FvKU_B*B1BD)XNeu;M5n?|sZN;V_ zL4uO7;F??L$&y2bKzouD4?geVE2%ugZ7zaau}xmiH$e z(q747`@YV(yE(B{k^4k~hKb3W=jQRSVM>Y2{UY(^9JUV~&Nb)6_7LY{6jIqGEQ(+F z=CVstA!{KpVGY~DZ?3_b*dE3si$ZDL*8LFKUiJg`)*ncX>hKPJpI#Lso-Q{pG>@fIh3FU-#T&lDh+~pLQY9 Ma~)_u+UwT;0CHj$=>Px# diff --git a/src/mesh/test/dot11s/hwmp-simplest-regression-test-1-1.pcap b/src/mesh/test/dot11s/hwmp-simplest-regression-test-1-1.pcap index dd405c32e82799364464674e8590e7f87a700509..994774f52aadd591c53f30faaac7664ad2ad0831 100644 GIT binary patch delta 1025 zcmZ9`QD_oz9KiAa@4WNxW=;*GNnsArf-%`c)Ag`MfdsjSNe*HIDI~Ty0=L-9f?8W3 zVFR~&IQ9}35g|S#Gv-6Iq6eWMc0EKvC1VR37!+Yof%d=u-Sp2L+{^Fx`G5cawFX~n z@Fi@4mUK1kmF{p@a3QgUrCGjLidhn#7T$-`{EcfjXAt>-{4Y|H+T|DgD5p3n`$3rE zG_x=5B0q?V=gJv=Oz@mP$};Yt7T|V$TB_{mF1S5=J~QgHgmF|~4pEDb6MHYjTFXJu zFI++PV3;}x6Bi7dU8l)sP=8fg9rc#~jS^ZNVkzHAE~5DK2u=P?5H~$ycAcbDb%K6Q znGy3i71bZ4sr^(Wb|uYP+ffHDc10!4?K#%kI!y%e z%mQ`UUE(qeX2&#LAi9^Rz1twxy~NtCc9Zu*ZbNok!CSdy1p+tjn;{b&gyN-DEn1oH zg@GfGtUMlocbF?-*%g5k!Z@TZC~{vE`sC+BFbT(GX9NOV<0+kCJGr)&H*5wTUVoNT7_`B7iao`Fej*f^v@>ho7R$32>VV)z}n9s5q_{{ixO BDxv@Y delta 954 zcmY+>K}Zx)7{KxO&Agc@x0>D9B^P2^3HKsy7P)F+25oiFgA1CZAZtqy48f-D#R|>K z7E7=?hhZJoKO@UR6N2toAb6UTXTeBb~5-s4TRPUq@$ zQ4yhLj3tA{l%PmnqSqAT4sA3pi*dE4Y{6N2`{u+g!agv@gk~v3vN;utO)>7zsa(OT zH3y?@qEXv#F;kK%_W>B<%qr$!?u=W z+)m8hN;XFeB%3c;>32SVzK@&kOO;H6aBcvZpBcuSA8>~<-fD%cu8m-_k!QDBAK{XH z%l?xV*}k8|_FIv050dUyLGC;8XgVgJ-sngDn$9IW_lvYt#<6{3F|IQ1ZVxanOrbY1 ziAClIyIf+DD|pQdI?Q1Eu+B7?akmHY$wH8wH+?b$%lBkp-uz>(;k`B}UYfPNa=H;( z0}v}eZ-ozvu%(#ZD4dY`VRWisHg!Og`MMp3;i{=d;iM3HiEE07Y1O?p1yA3;+HIdj zVNgEAhRe7iBu&Hejj}xpJ9G}JV#Qu+Hs?AZZl3Cd>%v}NfPXLE?^;$TP|-PL5wt5G goxz}d#C6CDT-f|-{_bL8x(lv3Cs{E1Xao2B2mMqSA^-pY diff --git a/src/mesh/test/dot11s/hwmp-target-flags-regression-test-0-1.pcap b/src/mesh/test/dot11s/hwmp-target-flags-regression-test-0-1.pcap index 436b368e469583078b020c0f95eacafacffbc43f..2d4172ba6f91a3b8c4c49f04799af3e33eed9072 100644 GIT binary patch delta 1471 zcmZXSe`s4(6vxlKH}B;oH9wk{CNC!KTe7WjG>e%nmBpn-%h<#Xa7<8C^q(S&3Mx$fXMcF^&3mTZ0y+1+ z^S<|cKKI43mUeCQ)|5%z?BPt$2_sdlOf+@Er4A>|Hfab#v3Jm*F2{E zR)8|_)jU9j)(Xx>66j|mIWE)cH+Iq4MsHuA*wRV%swLcsjfpZB3uIWuni^|jzS8}S_4 z|Iz`MYG2L3k36;(hIZAEy-fLGH@nW5PGPllWX`~+l~g`SyPC05BTxE33&<|beGIR9 z5{a86U~{*r6jz2nzMVwzxCShItB;FSfDNbO4%R!QV%u+%x>yBxxh z8PtiCSn>gG3flOgF~h(0xt;aOcIW+om6(kueMRwJk9@Z9CtsD90@!Pqcr+Bis=vs0 z23GC*J^)xZ2k<-pEKi2iCz=dpcsUHXH#&gldS*qZ7q(W0hsJGrhNK_HEILCwzVf(| z!?~z3yg4D279Y2pzu)m77~mpTU%P z*c1v&glENMls-q3?3Lzx*kr<+*6~x_#(#Q;`GzzOMRxM5Y20V3k=7+aHG|WXt*ukp zy5SQ&>vdIOy;)>QteO4nMSRU{@iT+&Mon(ia8Ic-l!8UDjCrBlKkhzcBB z9&`rcXPcTiNufKZvVuDh6*xPTRoz@3Y;LiBW#Ww1xt(oyc5kN!Cy(cy+c}mc!yJXK zp&&!&c53j=7gA~Q*YnMz$!7&W-05N6(7aMt&2+G{_6&bML)ex|yXZ&Y^x&w2p1GSU zeVMZXA+Qi)TlhudX5VYn~4J@k|%J4p){+4*J3<86Kw4MfY^k>kti%DZk65 z=J~aRzPXDob;Az&{_G4N@1V=Hi#`SI16v*RXU3>fh{EbhF8UOVd@Q9_@Zi>!n*RVT CcUEHn delta 1418 zcmZXTU1%It6vyw!%xq@sbT^&-n9WXhX2*mGP2H_&Yny7bloCOkHjOC#NSms}idbxu zC_)|@1Aanr*8}R)B&jHf4;r^%UrJ)FRHTCFgHQsAeQ8ky>w`id=sB}H-7LKiyJznG z&;R_+Id?uCx_YQ=OEJtVjs?q7rw~@uROLuaCXaLYTsW0?OR^KgzdF(e!!>@KvqAhH ztemyM;9Ct&yTR%?!J*tqy!*_u_9M>*$RAcJvt0BqPSm%P0m**~$B4tOJA4jkJ zJ;FMfT4c}mS%KL_6gFBzW+7UU%{)b#lpbY$7TR5jS69_vggDXyUs_g#YX4YgQ0#EP z(0y6O7^eWGxFSnY24`aq{Gs>C_ckzi#&F=V=wW^kW~0aCh|y4fkMU1-4th7tNIk~r z8bEQQBEM^8u$ah!b>EDrcc8?kSDXO)X~bzj6G*KCj#^?1|B!~DR~&?X&Z-_T_HvPJ zg*#anzS`*X&2T8z&Zpt!*fG&+!u8lukvC!9wg_FkW}?spx6^><_Ft51YL#FTR20W4W#Zph0IlQ9kAiMB- zSJ2acv0KeO4KKnVTmFzV)YIuM?5W~bed~8F-%x8a`mC)!BTruO3W3{4sB5^%brU+t z{@Y0!a=X8PZl82jm$NTQu`^%CRyESQUWopVh#JP=G;I@8q;0ff$91S)g>34UzBULE$V874#Ur|%sj0>NH~dB%?ZQqm)VF-np85% Lw0=zZc9ZmfH&ASk diff --git a/src/mesh/test/dot11s/hwmp-target-flags-regression-test-1-1.pcap b/src/mesh/test/dot11s/hwmp-target-flags-regression-test-1-1.pcap index 3217459efc99b0358042b01e7673a76436a1e89b..045cc0da58595f13f130f50cb2ea4590e95356a6 100644 GIT binary patch delta 2207 zcmZXUZERCz6vv;Jws$S-+O2ne*~WU?y#d=w8HGWCGFS+ZOdX0bI1^?-}9MI|2q}=yd?&U zg+pFF&yqnu>=kwz!kQXya-FN>!BAEe`RgCTGK&sBS=!`3LkvoqGt#RsFjydi;NY=h zfmr5p41-bUhi+jh86D2kxHrSY-O1iId3%__kjJNTij0`qCu9IWf3#HmIbtf<^^4hz zlRE?Of^5>+Le^^Kf^jn(yLHi|CA-9u+k$XQM$3qkY%;4$mnNufms#>bkh@_TZ!8x| zkLQrPFRSFrD8M_T+3+~dny}NFkiDbI1REjyZLp`surj9GIC#cl-nRBCK}5e!6VB{Zv>(G$XfE{?DbZ~2m6oC02CAQwADoY!Y% z-9?4a;U}aRL`ugIg|0$|=YwP=ExZ}pV0JWzLO&t+RGuoq*^&*mb`^0{GI!^OCPU@BO$vZf{;r3%?%j_GrI=HDvX4Or9Yf%Ar4d~Cp?z;ohg2>Jp~i7!Ly z!;sg`AH$Qt)8cp-U-&60F{=i)R!sE`oea}ZW4r!>_aG^oj`=&uTS^XoEG96i)z}% z^(pM)N7Hl|sWqBU;zGFUKE0rL1C%85|jwqb7e_xB7|fQ(S2-u13`XmKO+3flJu6j zn=JfaxZXM_oa9ZF*lYUYglh}1tJI#-NF>*vJ~p;_g-U8;0+n2Nn_M-5v;Oq4*muN{ aKU-E5LT3B)G2IFS3w`AdR)-MJC;ta2#yl?o delta 2221 zcmZXVZERCj7{|}cy?xu-b!*q&(suW@8&tAxtB4GW?nT4m2hX;jYwt5Z2lcDK!9wMWof*FVgZwRnkp=r%RRBdk0?4g?nkh41p6DhhVtblX zX4d(5R~~jU5lDVwJM)o8cF~Nk!w7BTU+kut;UGWwhI~BzCe57GfvGKQb`U1iDBm|I zOAI+kKbA;$mel$2tPNgPb;V7hvoLH4R12=yiXM+0E=4so&CbObEknIo8|n>~z~P91 zb=6JA42cFE#A8R)k6(FRv9JBzxEF?MkjJuaA?i~lSq$NZO_&>Ikip{;M9HihB_k!0 zvT7mu!x>3pp2r1w0>6rN&AQbD+0d$q=zdkA#Z`3cd6viVy)hExS$tlM?!8 zN-LMwS>V1)hrnsj@DTU3aAby>00OvhS~dz;7)x2`W9op!7Tf9kw}9j zVmRx8ROlGn_JGXco5gabC47t>sE2940cABwe!bp;jiAFTICeLPz<8~q)VZ1@Ga7^x zKaA6r`o3_C(G{*TX{ zoCseyCP6$mhXi;yHtDTB%IFYGEu5lf;7*wryGFH$rZzh`Mb1W>%nlZ7@@WXDpo3H7 z{&ERo2iG>C_*e;Tc5sTU>X0O+u|klT#(S|%3j5bULr&3h7>|ePYjC^XE6uqT&$4w< zG)J?Fn7J#pkNkQLE;ab^W)UjIi52*x^b!3sf`J9!FT-FRC9HX^AlG|CaMsI$Th}ys zs1d#S8LriNv5m@MmCWBN4+f=N1IOu4E=Ah>XdL1I0|EA?UWi2Z_rxhWM66z4x}I9c|Lv+uq+j z=YRg^JRR>^erDKdINOKN1Bkt$Q)kyA6zoF~##R|sYo2@hNEbU1uPY4O&vyG^InNGn z;1D_a3Us<;9Y6ISMQ|I-@R;WQ3@mWI)E|Yg(VSsU{NU|J&`mg{gKL@)sp;qExm)Ka z`VneoaI;8Zq}5=;_mDluc$!Qeq+%)|HA~`B7d{hGbGJ!tnL^Nm75I*ZtOq}j%VyV? z2YH?Bl>-a3iIhxl>Hlh)>sK%u`EjQO?M5|Pj1h^!Z2f7P36&-Ooz94wOo_8gGrT4R zn?~yE$t*vNIbykj;1*G!MO#M)zd$330z)J)(j#Rg!=9Vvv6QV?f6T_~XTejnKCFF| zd@{$i3I&_3@UhlSH(N1`l**1i^fSg&Y`ME#Upn=0vr5sLP%GPov7Fb2w=!Cjm@w;3EUS)j z25jO1?VQ8s(qK`n%DC!L!8sB7L^%(KSK&iv8-2?! zB9XZOOQ*u#f(ZFO5U+-|RY=fbRKQahq3=`*kY25l0Q(fsC=r^N&t|l8#v?j-ojHDY zQ&Q)%8695ti239k9!i4~^Vy6}4|v6Vj(Hfk?uovsE@E;~8=s?ba#<_>lxWK1*@6BE z`-F;Dy{RfVlR8Ho=;R5Xm?O^NvNV{@(Z~)ropAYuga>_$dd(O06unQWPvw@V@T+%} z_P8Wi#x@;K(C&`evRIO|r58EYb_qdl|8_wswrG0Mc@GSi+8rFjODtW|LLNKr3gf=L z%sFXo7vsFqC+=Os$$k z4URuw18DPLop9!OE#u~EqqobMGk+_wVYyThp}XVG@Dx>XXHHipoN>|C;zl9psk-fg lQhd=4qm8acp2)#DoSg-zETF~x8eBjqj^P;;C zad<1=vSjmNsvd&#MQQLlZ{Tn{(H^|(y22QZV(!r5 zE;NWAaJY2Sry@vhx)m>L!6$+rq$AwpfZKyATCXE`FF;@*s4yorY*0#~Xhi9JDy9qK zPilwA>5I5~c5Q?8jCxHt;YB#=fY+g+RNG+M7=cvVN!jZ**wrgmx=~6uhCd5y&tG?p zoqjH4)~*jB{Fwu`*BxUu%>+_yCuOfY#(sLyOy_={(qY6?>K;*w+mNL}!s}ktV0B3@ z(_wP4mQ1LZxd^$THRBR*20b&MzYkAjj*GW5>!E*%mVRb72k=N3 z-t`2fn#~4-VX-~i44UyYiZ{`Ktj+Rj4ufwaA$YjR4cD>~@&-P41jBN^`weXTFWq$D zM;#^aK;0?3sHtuD8(8yw0?7dBrz~Q69ttwW77qB+lfk;$k7}4f&wM&>+0fqju$v7=(H#$XKfX!s#$pVa zqr+x0_dAsARB^J}xX$@e;05FSI9w^nU(l$n?BSXUvvy$x;=>q|YE+4vX18D~TiaxT zH3Xh=fa^}s_arJ$ZY3<>Qdm<(^6SELQry*N&F}yeC&U`+Bp*!p6@>~I5HA^D;72FZ zZ>=&leX$BlHDSGln(PllCu_T7fwu_U<^bDQTi@4C_Q?YR15#mklK(9IhRbPJ>JafNgER+&Mux(H;JKAS~-30#Y04;-brI$@52qcU8 z>XNV=ExKS?^mOHjIBOj}v?qp8dT!cc-&E=j?9kv_Gh;v_FH*O|z##l0mT~2Ne_<3H8+938Fsu zko+PdvVV{D6!sLzM1$&0p@*nQ#E3GeET6)t-&yB6(F^x?&fWQ*&-tF;@3+T$KJC38 z;L%Hfl`NDWlPv5^T?RM^^y1=%@{xFgcU=YyxpX`I29Id|g>|}^_{cwJuF$GS$Bbfe z-n(LM{m#m9KuPcuR|~7^HGmG<(~$?iZ(0TMUn?B(E(arqfkP}&{B=U|XxH=*J}D{1 zL6+p|B#iV`@Sjup;ns5)88^_z zaojC|%j;CqAgP*0H3=Md6Od_Zfu_R<+&-pD;OIJ)=`aF^;y$5rs?eNw%BTCjb+sbj76}jXs4^wut7WR7Vk8k<7Lg$5QKeU zV8%*=l?wb&DZot{nUw;7mX8#~+Mt1li_%J45QClozf)zC&XujzI8(ISS8t*;p%#xA zqtzI61)SA2Hb~KD3TOP~_{J6Gt(#2%8^-O$Id%sZiz}61TTpYSd1RXn7wrZPyQ6%r z-c&lf8coarZ#mkuDC@zbR>`KYTgxey?ZO(%V9b-_W&u0k?fqJr&soY;p>Kq}{{;;3 z8`(Npz6Z6G&5yN+CDZ(yRg}lh#XV$$W#D(RLE`%AR^x=qEKdfWh8iWXwSj;G4P!p< z0#kN`FzyLr&BnVc27AFj-z7Fb^ z`(qL|wQDtu{*^2CvaobKF75Tl2=+2I_Q6N?{si;(7W}5Y5Ko8OCGSLhEzdM}9lX~4 QLRF?hxSe>XDHIa@4+O&}I{*Lx delta 1228 zcmZXTOH30%7{}+awB6Ful|s8K#cuI|JYpL~gqmQ90S_7^7>y_fq9HLc94gAo7`UKB z1EGE~LQK#ehzE=ZYZN^Ri3d*tp75X{K_GhaWFTVvX4|D8n{+yz`OWY9@62?ma-w3` zCtql%q=69903oXuyBFbIHz)*hywJiW9=*BIm%Sa7)FW6gK(MhgC&ORKr>%p=`~g0X zcwF+t8eM##lg6(3VTDEbNGF9CE)+6}FX8adGn-aE>!NUy=E-wisTi?e8Vt|~f7G3v zINg&f8;fdihgb3Dp0sYgm%^;qpFv1J_OP_iPOj4xN;|MAliFI_ubL58Ju>tmsu0nO zOKNWKHYPtH8#;xI>w*zFw~RV3HfbG2r+8JN(}^~z7`nhV#!RP^4^x5>x>pM7Cb8M7 zGt-4gWut27rnfO>x)Aw(Suh^iPR^;QYg7}>mcx|!Y|!G?;k9**Ew~_R(P7ROW)20r z8WhUajAnzLqr$LNGLA~*kC4VSzftfCs?wpv*_!zyBtz0gL7ScY_G7^{@Yz2y)dNAh z4%W;tJ1)9fqABw(rKPawIK;m0g1F*_cRQUh9ta9fsHO#wW2=&&!#tCotL z6pvzFCGmZ>z+m6I_)uSR(pQBMxq)5cd&R)VXKq6!>%Uxw+dd zq^1@F7`LS|Xi%Gl9AA9?Ve;~|kkKZAs;oAc_?+{DvOjt%nG?Qw#(1)FfVVD}r;K09 z(Rc~9>7y3L)pGIg2=KS-0#xZTxYb#zVld4r;k+5HkMs{zrBt`7Q1usmX_Y|DaD8Nc yOrR<3+V8r>_>BPf)zonT#jU)nfuxvx*T+GyecUUO4ms diff --git a/src/olsr/test/bug780-2-0.pcap b/src/olsr/test/bug780-2-0.pcap index 2543e01793eaa34db666caad09c095d1fa754f9b..6ef24a19c59a82d395678035a1178ec13a853a68 100644 GIT binary patch literal 104122 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⩰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 V<3wrSQ@%KcGNSQhl=?m8{|7E&g$V!v