- Error on exit when clear routing tables
- Possible crash (buffer overflow) in function for receive icmp echo packet
- Error in parsing of config file for udp ttl "probe"
- Wrong error messge in analyzing config file
diff -Nurp vyatta-wanloadbalance-0.13.70-old/src/lbdecision.cc vyatta-wanloadbalance-0.13.70/src/lbdecision.cc --- vyatta-wanloadbalance-0.13.70-old/src/lbdecision.cc 2020-05-15 17:33:53.000000000 +0300 +++ vyatta-wanloadbalance-0.13.70/src/lbdecision.cc 2020-07-07 15:02:50.914265756 +0300 @@ -488,7 +488,7 @@ LBDecision::shutdown(LBData &data) sprintf(buf,"%d",h_iter->second._interface_index + IPT_MARK_OFFSET); execute(string("ip rule del table ") + buf, stdout); - execute(string("ip route del table ") + buf, stdout); + execute(string("ip route flush table ") + buf, stdout); //need to delete ip rule here as well! diff -Nurp vyatta-wanloadbalance-0.13.70-old/src/lbtest.cc vyatta-wanloadbalance-0.13.70/src/lbtest.cc --- vyatta-wanloadbalance-0.13.70-old/src/lbtest.cc 2020-05-15 17:33:53.000000000 +0300 +++ vyatta-wanloadbalance-0.13.70/src/lbtest.cc 2020-07-07 15:01:39.936265697 +0300 @@ -244,7 +244,7 @@ int LBTest::receive(int recv_sock) { timeval wait_time; - int icmp_pktsize = 40; + int icmp_pktsize = 56; char resp_buf[icmp_pktsize]; icmphdr *icmp_hdr; fd_set readfs; diff -Nurp vyatta-wanloadbalance-old/src/lbdatafactory.cc vyatta-wanloadbalance/src/lbdatafactory.cc --- vyatta-wanloadbalance-old/src/lbdatafactory.cc 2020-05-31 09:45:24.770000000 +0300 +++ vyatta-wanloadbalance/src/lbdatafactory.cc 2020-06-12 20:48:50.560000000 +0300 @@ -179,6 +179,9 @@ LBDataFactory::process(const vector<stri else if (depth == 4 && key == "ttl") { process_health_interface_rule_type_udp(l_key,l_value); } + else if (depth == 4 && key == "port") { + process_health_interface_rule_type_udp(l_key,l_value); + } else if (depth == 4 && key == "test-script") { process_health_interface_rule_type_user(l_key,l_value); } @@ -294,7 +297,7 @@ LBDataFactory::process_health_interface( else if (key == "health") { //nothing } - else { + else if (key != "") { if (_debug) { cout << "LBDataFactory::process_health(): " << "don't understand this symbol: " << key << endl; }