Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package bird3 for openSUSE:Factory checked in at 2026-10-26 10:05:17 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/bird3 (Old) and /work/SRC/openSUSE:Factory/.bird3.new.2252680 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "bird3" Mon Oct 26 10:05:17 2026 rev:11 rq:1392648 version:3.4.0 Changes: -------- --- /work/SRC/openSUSE:Factory/bird3/bird3.changes 2026-10-06 19:16:55.940806111 +0200 +++ /work/SRC/openSUSE:Factory/.bird3.new.2252680/bird3.changes 2026-10-26 10:06:42.290576956 +0100 @@ -1,0 +2,7 @@ +Tue Oct 13 06:22:15 UTC 2026 - Martin Hauke <[email protected]> + +- Update to versoin 3.4.0 + * Host routes in Direct. + * Add show radv interfaces. + +------------------------------------------------------------------- Old: ---- bird-3.3.3.tar.gz bird-doc-3.3.3.tar.gz New: ---- bird-3.4.0.tar.gz bird-doc-3.4.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ bird3.spec ++++++ --- /var/tmp/diff_new_pack.uJZAb8/_old 2026-10-26 10:06:44.879685541 +0100 +++ /var/tmp/diff_new_pack.uJZAb8/_new 2026-10-26 10:06:44.882685666 +0100 @@ -17,7 +17,7 @@ %define bird_runtimedir %{_rundir}/bird Name: bird3 -Version: 3.3.3 +Version: 3.4.0 Release: 0 Summary: The BIRD Internet Routing Daemon License: GPL-2.0-or-later ++++++ bird-3.3.3.tar.gz -> bird-3.4.0.tar.gz ++++++ ++++ 9099 lines of diff (skipped) ++++++ bird-doc-3.3.3.tar.gz -> bird-doc-3.4.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bird-doc-3.3.3/doc/bird-1.html new/bird-doc-3.4.0/doc/bird-1.html --- old/bird-doc-3.3.3/doc/bird-1.html 2026-10-02 09:19:51.000000000 +0200 +++ new/bird-doc-3.4.0/doc/bird-1.html 2026-10-12 10:04:16.000000000 +0200 @@ -2,7 +2,7 @@ <HTML> <HEAD> <META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 1.0.9"> - <TITLE>BIRD 3.3.3 User's Guide: Introduction</TITLE> + <TITLE>BIRD 3.4.0 User's Guide: Introduction</TITLE> <LINK HREF="bird-2.html" REL=next> <LINK HREF="bird.html#toc1" REL=contents> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bird-doc-3.3.3/doc/bird-2.html new/bird-doc-3.4.0/doc/bird-2.html --- old/bird-doc-3.3.3/doc/bird-2.html 2026-10-02 09:19:51.000000000 +0200 +++ new/bird-doc-3.4.0/doc/bird-2.html 2026-10-12 10:04:16.000000000 +0200 @@ -2,7 +2,7 @@ <HTML> <HEAD> <META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 1.0.9"> - <TITLE>BIRD 3.3.3 User's Guide: Architecture</TITLE> + <TITLE>BIRD 3.4.0 User's Guide: Architecture</TITLE> <LINK HREF="bird-3.html" REL=next> <LINK HREF="bird-1.html" REL=previous> <LINK HREF="bird.html#toc2" REL=contents> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bird-doc-3.3.3/doc/bird-3.html new/bird-doc-3.4.0/doc/bird-3.html --- old/bird-doc-3.3.3/doc/bird-3.html 2026-10-02 09:19:51.000000000 +0200 +++ new/bird-doc-3.4.0/doc/bird-3.html 2026-10-12 10:04:16.000000000 +0200 @@ -2,7 +2,7 @@ <HTML> <HEAD> <META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 1.0.9"> - <TITLE>BIRD 3.3.3 User's Guide: Configuration</TITLE> + <TITLE>BIRD 3.4.0 User's Guide: Configuration</TITLE> <LINK HREF="bird-4.html" REL=next> <LINK HREF="bird-2.html" REL=previous> <LINK HREF="bird.html#toc3" REL=contents> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bird-doc-3.3.3/doc/bird-4.html new/bird-doc-3.4.0/doc/bird-4.html --- old/bird-doc-3.3.3/doc/bird-4.html 2026-10-02 09:19:51.000000000 +0200 +++ new/bird-doc-3.4.0/doc/bird-4.html 2026-10-12 10:04:16.000000000 +0200 @@ -2,7 +2,7 @@ <HTML> <HEAD> <META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 1.0.9"> - <TITLE>BIRD 3.3.3 User's Guide: Remote control</TITLE> + <TITLE>BIRD 3.4.0 User's Guide: Remote control</TITLE> <LINK HREF="bird-5.html" REL=next> <LINK HREF="bird-3.html" REL=previous> <LINK HREF="bird.html#toc4" REL=contents> @@ -115,6 +115,9 @@ entries. <P> <DT><CODE> +<A NAME="cli-show-radv-interfaces"></A> show radv interfaces [<I>name</I>] ["<I>interface</I>"]</CODE><DD><P>Show detailed information about RAdv interfaces and associated state. +<P> +<DT><CODE> <A NAME="cli-show-rip-interfaces"></A> show rip interfaces [<I>name</I>] ["<I>interface</I>"]</CODE><DD><P>Show detailed information about RIP interfaces. <P> <DT><CODE> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bird-doc-3.3.3/doc/bird-5.html new/bird-doc-3.4.0/doc/bird-5.html --- old/bird-doc-3.3.3/doc/bird-5.html 2026-10-02 09:19:51.000000000 +0200 +++ new/bird-doc-3.4.0/doc/bird-5.html 2026-10-12 10:04:16.000000000 +0200 @@ -2,7 +2,7 @@ <HTML> <HEAD> <META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 1.0.9"> - <TITLE>BIRD 3.3.3 User's Guide: Filters</TITLE> + <TITLE>BIRD 3.4.0 User's Guide: Filters</TITLE> <LINK HREF="bird-6.html" REL=next> <LINK HREF="bird-4.html" REL=previous> <LINK HREF="bird.html#toc5" REL=contents> @@ -230,10 +230,14 @@ (<CODE>.ip</CODE>), EVPN tag (<CODE>.evpn_tag</CODE>), Ethernet Segment Identifier (<CODE>.evpn_esi</CODE>), router IP (<CODE>.router_ip</CODE>). Note that only fields that are a part of primary key for given route subtype can be accessed -by these operators (e.g. <CODE>.evpn_esi</CODE> can be used for <CODE>NET_EVPN_ES</CODE>, -but not for <CODE>NET_EVPN_MAC</CODE> or other types), remaining attributes are -stored outside prefix as other route attributes. See -<A HREF="bird-2.html#evpn-routes">EVPN routes</A> for description of specific subtypes. +by these operators (e.g. <CODE>.evpn_esi</CODE> can be used for +<CODE>NET_EVPN_ES</CODE>, but not for <CODE>NET_EVPN_MAC</CODE>, where ESI is stored +in +<A HREF="#rta-evpn-esi">evpn_esi</A> attribute), remaining +attributes are stored outside prefix as other route attributes. +See +<A HREF="bird-2.html#evpn-routes">EVPN routes</A> for description of +specific subtypes. <P><CODE>NET_NEIGHBOR</CODE> holds a single IP address and an interface index. The IP address can be accessed by operator <CODE>.ip</CODE>, while the access to the interface index is not implemented. @@ -709,6 +713,14 @@ aggregation than just one based on next hops. When routes have different value of this attribute, they will not be aggregated under one local label even if they have the same next hops. +<P> +<DT><CODE> +<A NAME="rta-evpn-esi"></A> <I>bytestring</I> evpn_esi</CODE><DD><P>EVPN Ethernet Segment Identifier (ESI). Some +<A HREF="bird-2.html#evpn-routes">EVPN route</A> types (e.g. EVPN EAD routes) have ESI as a part +of +<A HREF="#type-prefix">primary key</A>. Others (e.g. EVPN MAC +routes) have ESI as this optional route attribute. BIRD does not +currently use this attribute, but can pass it as a BGP route reflector. </DL> <P> <P>Protocol-specific route attributes are described in the corresponding diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bird-doc-3.3.3/doc/bird-6.html new/bird-doc-3.4.0/doc/bird-6.html --- old/bird-doc-3.3.3/doc/bird-6.html 2026-10-02 09:19:51.000000000 +0200 +++ new/bird-doc-3.4.0/doc/bird-6.html 2026-10-12 10:04:16.000000000 +0200 @@ -2,7 +2,7 @@ <HTML> <HEAD> <META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 1.0.9"> - <TITLE>BIRD 3.3.3 User's Guide: Protocols</TITLE> + <TITLE>BIRD 3.4.0 User's Guide: Protocols</TITLE> <LINK HREF="bird-7.html" REL=next> <LINK HREF="bird-5.html" REL=previous> <LINK HREF="bird.html#toc6" REL=contents> @@ -735,6 +735,7 @@ require extended next hop <switch>; add paths <switch>|rx|tx; require add paths <switch>; + ignore otc <switch>; aigp <switch>|originate; cost <number>; graceful restart <switch>; @@ -1691,6 +1692,22 @@ Default: off. <P> <DT><CODE> +<A NAME="bgp-ignore-otc"></A> ignore otc <I>switch</I></CODE><DD><P>When +<A HREF="#bgp-local-role">BGP roles</A> are set, BIRD automatically +drops leaked routes, as mandated by <A HREF="http://www.rfc-editor.org/info/rfc9234">RFC 9234</A>. This option allows the +channel to accept routes with offending +<A HREF="#bgp-otc">bgp_otc attribute</A>, +so that the user may do additional processing by the filter engine +before rejecting. Specifically, this option may be useful when +accompanied with +<A HREF="bird-3.html#proto-import-keep-filtered">keeping the filtered routes</A> +for inspection. +<P>The sole existence of this option knowingly violates the requirements +stipulated in <A HREF="http://www.rfc-editor.org/info/rfc9234">RFC 9234</A>, Section 5, last sentence. +Do not set this option unless you really know what you are doing. +Default: off. +<P> +<DT><CODE> <A NAME="bgp-aigp"></A> aigp <I>switch</I>|originate</CODE><DD><P>The BGP protocol does not use a common metric like other routing protocols, instead it uses a set of criteria for route selection consisting both overall AS path length and a distance to the nearest AS @@ -1783,12 +1800,13 @@ <LI><CODE>next hop prefer</CODE></LI> <LI><CODE>aigp</CODE></LI> <LI><CODE>cost</CODE></LI> +<LI><CODE>ignore otc</CODE></LI> </UL> <P> -<P>Note: Reload in the import direction requires either the <CODE>route refresh</CODE> -capability negotiated or the <CODE>import table</CODE> option enabled. If neither one is -available, the reconfiguration will trigger a restart instead of a reload. This -does not apply for export direction. +<P>Note: Reload in the import direction requires the <CODE>route refresh</CODE> +capability negotiated, otherwise it will trigger a restart. In case of +import filter change, routes will get reloaded from <CODE>import table</CODE> +instead, if enabled. None of these applies for export direction. <P> <P>Changes in these channel options cause a reload of the channel in the export direction (re-export of routes to the BGP neighbor): @@ -1955,7 +1973,13 @@ <DT><CODE> <A NAME="bgp-otc"></A> int bgp_otc [O]</CODE><DD><P>This attribute is defined in <A HREF="http://www.rfc-editor.org/info/rfc9234">RFC 9234</A>. OTC is a flag that marks routes that should be sent only to customers. If -<A HREF="#bgp-local-role">local role</A> is configured it set automatically. +<A HREF="#bgp-local-role">local role</A> is configured it is set and checked automatically. +<P>The equivalent filter code for the OTC check to pass the route +in the provider or route server role, is: <CODE>!defined(bgp_otc)</CODE> +<P>The equivalent filter code for the OTC check to pass the route +in the peer role, is: <CODE>(!defined(bgp_otc) || bgp_otc == their_asn)</CODE> +where <CODE>their_asn</CODE> stands for the configured AS number of the peer. +<P> </DL> <P> <P>For attributes unknown by BIRD, the user can assign a name (on top level) to @@ -2319,6 +2343,17 @@ consideration. Routes for directly connected networks are generated only if link up is reported and they are withdrawn when link disappears (e.g., an ethernet cable is unplugged). Default value is no. +<P> +<DT><CODE> +<A NAME="direct-host"></A> host <I>switch</I></CODE><DD><P>If enabled, for each address on the interface (including those marked secondary), +a host route is created with the prefix length set to maximum. +Such a route should never end up in the kernel forwarding table, +and the user should take proper filtering actions to keep it safely away. +Default: no. +<P> +<DT><CODE> +<A NAME="direct-prefix"></A> prefix <I>switch</I></CODE><DD><P>If enabled, a regular device route is created for the whole prefix. +Default: yes. </DL> <P> <P>Direct device routes don't contain any specific attributes. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bird-doc-3.3.3/doc/bird-7.html new/bird-doc-3.4.0/doc/bird-7.html --- old/bird-doc-3.3.3/doc/bird-7.html 2026-10-02 09:19:51.000000000 +0200 +++ new/bird-doc-3.4.0/doc/bird-7.html 2026-10-12 10:04:16.000000000 +0200 @@ -2,7 +2,7 @@ <HTML> <HEAD> <META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 1.0.9"> - <TITLE>BIRD 3.3.3 User's Guide: Conclusions</TITLE> + <TITLE>BIRD 3.4.0 User's Guide: Conclusions</TITLE> <LINK HREF="bird-6.html" REL=previous> <LINK HREF="bird.html#toc7" REL=contents> </HEAD> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bird-doc-3.3.3/doc/bird.html new/bird-doc-3.4.0/doc/bird.html --- old/bird-doc-3.3.3/doc/bird.html 2026-10-02 09:19:51.000000000 +0200 +++ new/bird-doc-3.4.0/doc/bird.html 2026-10-12 10:04:16.000000000 +0200 @@ -2,7 +2,7 @@ <HTML> <HEAD> <META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 1.0.9"> - <TITLE>BIRD 3.3.3 User's Guide</TITLE> + <TITLE>BIRD 3.4.0 User's Guide</TITLE> <LINK HREF="bird-1.html" REL=next> @@ -12,12 +12,12 @@ Previous Contents <HR> -<H1>BIRD 3.3.3 User's Guide</H1> +<H1>BIRD 3.4.0 User's Guide</H1> <H2>Ondrej Filip <I><[email protected]></I>, Martin Mares <I><[email protected]></I>, Maria Matejka <I><[email protected]></I>, -Ondrej Zajicek <I><[email protected]></I></H2>Fri, 2 Oct 2026 09:19:51 +0200bird-userdoc +Ondrej Zajicek <I><[email protected]></I></H2>Mon, 12 Oct 2026 10:04:16 +0200bird-userdoc <P><HR> <EM>This document contains user documentation for the BIRD Internet Routing Daemon project.</EM> <HR> Binary files old/bird-doc-3.3.3/doc/bird.pdf and new/bird-doc-3.4.0/doc/bird.pdf differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bird-doc-3.3.3/doc/prog-2.html new/bird-doc-3.4.0/doc/prog-2.html --- old/bird-doc-3.3.3/doc/prog-2.html 2026-10-02 09:19:51.000000000 +0200 +++ new/bird-doc-3.4.0/doc/prog-2.html 2026-10-12 10:04:16.000000000 +0200 @@ -1464,6 +1464,38 @@ <HR><H3>Function</H3> +<P><I>void</I> +<B>channel_disable_export</B> +(<I>struct channel *</I> <B>c</B>) -- disable export to the channel +<P> +<H3>Arguments</H3> +<P> +<DL> +<DT><I>struct channel *</I> <B>c</B><DD><P>given channel +</DL> +<H3>Description</H3> +<P>Call this function before starting the channel to avoid associated start +of route export (i.e. export_state change from ES_DOWN to ES_FEEDING). Can +be reverted by <B>channel_enable_export()</B>, reverts to the default behavior +during channel flush. + + +<HR><H3>Function</H3> +<P><I>void</I> +<B>channel_enable_export</B> +(<I>struct channel *</I> <B>c</B>) -- re-enable export to the channel +<P> +<H3>Arguments</H3> +<P> +<DL> +<DT><I>struct channel *</I> <B>c</B><DD><P>given channel +</DL> +<H3>Description</H3> +<P>Call this function to re-enable export that was disabled by +<B>channel_disable_export()</B>. + + +<HR><H3>Function</H3> <P><I>void *</I> <B>proto_new</B> (<I>struct proto_config *</I> <B>cf</B>) -- create a new protocol instance @@ -2268,9 +2300,7 @@ to pass them to the core and then it finishes the update sequence by calling <B>if_end_update()</B>. When working asynchronously, the sysdep code calls <B>if_update()</B> and <B>ifa_update()</B> whenever it notices a change. -<P>When an interface has attributes, they can be passed either un-cached or -cached. In the latter case, ownership of the reference is transferred from -the caller to the <B>if_update()</B>. +<P>When an interface has attributes, they are always cached by <B>if_update()</B>. <P><B>if_update()</B> will automatically notify all other modules about the change. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bird-doc-3.3.3/doc/prog-7.html new/bird-doc-3.4.0/doc/prog-7.html --- old/bird-doc-3.3.3/doc/prog-7.html 2026-10-02 09:19:51.000000000 +0200 +++ new/bird-doc-3.4.0/doc/prog-7.html 2026-10-12 10:04:16.000000000 +0200 @@ -536,6 +536,21 @@ <HR><H3>Function</H3> +<P><I>u64</I> +<B>u64_mkmask</B> +(<I>uint</I> <B>n</B>) -- create a bit mask +<P> +<H3>Arguments</H3> +<P> +<DL> +<DT><I>uint</I> <B>n</B><DD><P>number of bits +</DL> +<H3>Description</H3> +<P><B>u64_mkmask()</B> returns an unsigned 64-bit integer which binary +representation consists of <B>n</B> ones followed by zeroes. + + +<HR><H3>Function</H3> <P><I>uint</I> <B>u32_masklen</B> (<I>u32</I> <B>x</B>) -- calculate length of a bit mask Binary files old/bird-doc-3.3.3/doc/prog.pdf and new/bird-doc-3.4.0/doc/prog.pdf differ
