<html><head><meta http-equiv="Content-Type" content="text/html; charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class="">Hello Bird team,<span class="apple-converted-space"> </span><o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""> <o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class="">Thank you for the great tool BIRD. I would like to open an issue (bird v2.0.7) about the local_pref.<o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""> <o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class="">Today we hit an issue with one filter.<span class="apple-converted-space"> </span><o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""><span class="line"><span style="font-size: 10pt; font-family: "Courier New";" class="">if ! is_geo_region_local() then {</span></span><o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""><span class="line"><span style="font-size: 10pt; font-family: "Courier New";" class="">    bgp_local_pref = bgp_local_pref - 200;</span></span><o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""><span class="line"><span style="font-size: 10pt; font-family: "Courier New";" class="">    # If not defined, MED has a type of void instead of int</span></span><o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""><span class="line"><span style="font-size: 10pt; font-family: "Courier New";" class="">    if defined(bgp_med) then {</span></span><o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""><span class="line"><span style="font-size: 10pt; font-family: "Courier New";" class="">            bgp_med = bgp_med + 50;</span></span><o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""><span class="line"><span style="font-size: 10pt; font-family: "Courier New";" class="">    } else {</span></span><o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""><span class="line"><span style="font-size: 10pt; font-family: "Courier New";" class="">            bgp_med = 50;</span></span><o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""><span class="line"><span style="font-size: 10pt; font-family: "Courier New";" class="">    }</span></span><o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""><span class="line"><span style="font-size: 10pt; font-family: "Courier New";" class="">}</span></span><o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""> <o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class="">When some prefixes with the local_pref was below 200 (for example 100), the value overflow:<o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif; text-indent: 0.5in;" class="">localpref (unsigned integer 4^32) 100 - 200 = -100 = 4 ^ 32 - 100 = 4294967296 - 100 = 4294967196<o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""> <o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class="">We had the prefixes with this value 4294967196<o:p class=""></o:p></div><pre style="margin: 0in 0in 0.0001pt; font-size: 10pt; font-family: "Courier New";" class=""><span class="line">X.X.X.X/32       unicast [ipv4_rr01 07:51:49.603 from 100.100.254.137] * (100/84285) [AS65030?]</span><o:p class=""></o:p></pre><pre style="margin: 0in 0in 0.0001pt; font-size: 10pt; font-family: "Courier New";" class=""><span class="line">        via 100.99.0.100 on eth1.666</span><o:p class=""></o:p></pre><pre style="margin: 0in 0in 0.0001pt; font-size: 10pt; font-family: "Courier New";" class=""><span class="line">        Type: BGP univ</span><o:p class=""></o:p></pre><pre style="margin: 0in 0in 0.0001pt; font-size: 10pt; font-family: "Courier New";" class=""><span class="line">        BGP.origin: Incomplete</span><o:p class=""></o:p></pre><pre style="margin: 0in 0in 0.0001pt; font-size: 10pt; font-family: "Courier New";" class=""><span class="line">        BGP.as_path: 64619 65030</span><o:p class=""></o:p></pre><pre style="margin: 0in 0in 0.0001pt; font-size: 10pt; font-family: "Courier New";" class=""><span class="line">        BGP.next_hop: y.y.y.y</span><o:p class=""></o:p></pre><pre style="margin: 0in 0in 0.0001pt; font-size: 10pt; font-family: "Courier New";" class=""><span class="line">        BGP.med: 50</span><o:p class=""></o:p></pre><pre style="margin: 0in 0in 0.0001pt; font-size: 10pt; font-family: "Courier New";" class=""><span class="line">        BGP.local_pref: 4294967196</span><o:p class=""></o:p></pre><pre style="margin: 0in 0in 0.0001pt; font-size: 10pt; font-family: "Courier New";" class=""><span class="line">        BGP.community: (35280,1040) (35280,2070) (35280,3110)</span><o:p class=""></o:p></pre><pre style="margin: 0in 0in 0.0001pt; font-size: 10pt; font-family: "Courier New";" class=""><span class="line">        BGP.originator_id: y.y.y.y</span><o:p class=""></o:p></pre><pre style="margin: 0in 0in 0.0001pt; font-size: 10pt; font-family: "Courier New";" class=""><span class="line">        BGP.cluster_list: 0.0.0.30</span><o:p class=""></o:p></pre><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""> <o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class="">We had an exception to check the value of local_pref (on the filter) but can we have the something on the code, not to overflow the local_pref, for example SET to 0 if the value overflow?<o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""> <o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class="">Our filter looks like this now<o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""><span style="font-family: "Courier New";" class="">    if bgp_local_pref > 200 then</span><o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""><span style="font-family: "Courier New";" class="">        bgp_local_pref = bgp_local_pref - 200;</span><o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""><span style="font-family: "Courier New";" class="">    else {</span><o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""><span style="font-family: "Courier New";" class="">        bgp_local_pref = 0;</span><o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""><span style="font-family: "Courier New";" class="">    }</span><o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""> <o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class="">Best<o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""> <o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class="">Alexandre Corso<o:p class=""></o:p></div><div style="margin: 0in; font-size: 11pt; font-family: Calibri, sans-serif;" class=""><span lang="FR" style="color: rgb(5, 99, 193);" class=""><a href="mailto:alexandre@acorus.net" style="color: rgb(5, 99, 193);" class="">alexandre@ac</a><a href="http://orso.fr" class="">orso.fr</a></span></div></body></html>