<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">On 20.09.2013 21:09, Alexander V.
      Chernikov wrote:<br>
    </div>
    <blockquote cite="mid:523C814C.2090909@yandex-team.ru" type="cite">
      <meta http-equiv="content-type" content="text/html;
        charset=ISO-8859-1">
      Hello list!<br>
      <br>
      Currently bird assumes (bsd sysdep) that any prefix on p2p link is
      /32.<br>
    </blockquote>
    Just to be more specific: krt_read_addr() assumes the following for
    every non-multiaccess interfaces:<br>
    <pre><div id="LC703" class="line">  <span class="k">else</span>         <span class="cm">/* PtP iface */</span></div><div id="LC704" class="line">  <span class="p">{</span></div><div id="LC705" class="line">    <span class="n">ifa</span><span class="p">.</span><span class="n">flags</span> <span class="o">|=</span> <span class="n">IA_PEER</span><span class="p">;</span></div><div id="LC706" class="line">    <span class="n">ifa</span><span class="p">.</span><span class="n">prefix</span> <span class="o">=</span> <span class="n">ifa</span><span class="p">.</span><span class="n">opposite</span> <span class="o">=</span> <span class="n">ifa</span><span class="p">.</span><span class="n">brd</span><span class="p">;</span></div><div id="LC707" class="line">  <span class="p">}</span>
</div></pre>
    For every mask != 32 this (except /31 and higher address) gives you
    wrong prefix like in example below:<br>
    <blockquote cite="mid:523C814C.2090909@yandex-team.ru" type="cite">
      <br>
      For example:<br>
    </blockquote>
    <br>
    ifconfig gif15 inet 10.0.0.2/31 10.0.0.3<br>
    ifconfig gif15<br>
    gif15: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0
    mtu 1280<br>
    ...<br>
            inet 10.0.0.2 --> 10.0.0.3 netmask 0xfffffffe <br>
    <br>
    <blockquote cite="mid:523C814C.2090909@yandex-team.ru" type="cite">
      <br>
      <span class="commit">bird: direct1 < primary address
        10.0.0.3/31 on interface gif15 added<br>
        bird: Ignoring bogus prefix 10.0.0.3/31 received via direct1<br>
        bird: direct1 > invalid 10.0.0.3/31 dev gif15<br>
      </span><br>
      IPv6 case was fixed in <span class="commit"><a
          moz-do-not-send="true"
href="https://gitlab.labs.nic.cz/labs/bird/commit/3f58437405f8e37e9c14d83274a6b82ffd9583f8"
          class="commit_short_id">3f5843740</a>.<br>
        Can we do the same for IPv4 ?<br>
        <br>
        <br>
        <br>
      </span> </blockquote>
    <br>
  </body>
</html>