mirror of
https://github.com/logicog/RTLPlayground.git
synced 2026-10-29 17:54:14 +08:00
lacp: review follow-ups
lacp_in() always leaves uip_len at 0, so the tcpip_output() after it never ran. The LAG page names the active members by front-panel port instead of a logical mask. The partner key is not part of selection; say so under Known limits.
This commit is contained in:
1 parent
4ccbf51976
commit
4e4a2ea4db
3 files changed
+4
-3
No files matched your search
@@ -228,4 +228,6 @@ the dead member.
|
||||
* No Churn Detection machines and no Marker protocol.
|
||||
* Coupled Mux: collecting and distributing are enabled together.
|
||||
* One aggregator per group.
|
||||
* Selection compares the partner's system only, not its key: two aggregates
|
||||
that one partner system offers on the same group land in one trunk here.
|
||||
* Member compatibility is not validated; see #377.
|
||||
+2
-1
@@ -1843,6 +1843,7 @@ function buildLag(){
|
||||
})(g);
|
||||
}
|
||||
var lacpCfg=[0,0,0,0,0];
|
||||
function maskPorts(m){var r=[];for(var p=1;p<=S.n;p++)if((m>>S.physToLog[p-1])&1)r.push(p);return r.length?r.join(" "):"-"}
|
||||
function lagLoad(){
|
||||
return getJSON("/lacp.json").then(function(c){
|
||||
var tb=$("lacptbl").tBodies[0];
|
||||
@@ -1852,7 +1853,7 @@ function lagLoad(){
|
||||
lacpCfg[g]=parseInt(lg.cfg,16);
|
||||
if($("lgm"+g).closest(".card").dataset.dirty)return;
|
||||
$("lgm"+g).value=lacpCfg[g]?"lacp":"static";
|
||||
$("lgs"+g).textContent=lacpCfg[g]?"LACP: "+t("lacp_agg")+" "+(lg.aggValid?lg.agg:"("+t("lacp_neg")+")")+", "+t("lacp_members")+" 0x"+lg.members:"";
|
||||
$("lgs"+g).textContent=lacpCfg[g]?"LACP: "+t("lacp_agg")+" "+(lg.aggValid?lg.agg:"("+t("lacp_neg")+")")+", "+t("lacp_members")+" "+maskPorts(parseInt(lg.members,16)):"";
|
||||
});
|
||||
if(c.on)c.ports.forEach(function(p){
|
||||
if(p.lag===255)return;
|
||||
|
||||
@@ -1071,8 +1071,6 @@ void handle_rx(void)
|
||||
}
|
||||
} else if (lacpEnabled && uip_buf[5] == 0x02) { // LACPDU (slow protocols)
|
||||
lacp_in();
|
||||
if (uip_len)
|
||||
tcpip_output();
|
||||
}
|
||||
} else if (igmpEnabled && uip_buf[0] == 0x01 && uip_buf[1] == 0x00 && uip_buf[2] == 0x5e // IPv4-MC packet?
|
||||
&& igmp_packet_handler()) {
|
||||
|
||||
Reference in new issue
Block a user