From: Theo Buehler Subject: Re: rpki-client: remove bird1, add bird3 To: Job Snijders Cc: tech@openbsd.org Date: Fri, 3 Jan 2025 11:13:15 +0100 On Fri, Jan 03, 2025 at 02:08:01AM +0000, Job Snijders wrote: > On Fri, Jan 03, 2025 at 01:33:38AM +0000, Job Snijders wrote: > > On Fri, Dec 20, 2024 at 04:31:22PM +0000, Stuart Henderson wrote: > > > On 2024/12/19 16:31, Job Snijders wrote: > > > > Remove BIRD 1 output, because BIRD 1 no longer is maintained & > > > > supported. While there, add BIRD 3 support, which has ASPA. > > > > > > 2.16 has ASPA too. For simplicity bird3/output_bird3 probably do > > > make sense, but would it be worth a quick note in the manual? > > > > > > > .Pa bird > > > > (for bird2) > > > > +.Pa bird3 > > > > +(for bird3) > > > > > > (for bird 2.16 or newer) > > > > Ok, let's simplify things and output just one BIRD file while > > documenting 2.16 or higher is required. > > > > The below works with bird2 and bird3 in ports. > > deraadt@ suggested to move faster. I too see benefits to focus on only > supporting modern versions of BIRD. -T essentially is a kludge to > support older versions, so let's remove it right away. With this, the > changes since the last portable release are: > > * Remove bird1 output, BIRD v1 is deprecated > * Remove -T option which was used to customize the BIRD table names > * Add ASPA table to bird output, v2.16+ is required going forward > > OK? I forgot about -A which means we still have compatibility for earlier bird 2 and don't unconditionally require a release that isn't even a month old. The other big argument in favor of this is that we don't need to introduce another config file which will become bothersome down the line. I would still prefer if we tried to remove options only after prior announcement in release notes, but maybe -T is specialized enough. There are arguments for and against making -T an error now - I think I can live with doing what you did. Some suggestions below. Either way ok tb > + if (fprintf(out, "# For BIRD 2.16+\n#\n") < 0) Maybe make this if (fprintf(out, "# For BIRD %s+\n#\n", excludeaspa ? "2", "2.16") < 0) > + if (fprintf(out, "\nprotocol static {\n\troa4 { table ROAS4; };\n" > + "\n") < 0) Maybe this is more readable? Dunno. if (fprintf(out, "\nprotocol static {\n" "\troa4 { table ROAS4; };\n\n") < 0) and perhaps add something like > +Create output in the file > .Pa bird > -(for bird2) > +in the output directory suitable for BIRD internet routing daemon version > +2.16 and up. For compatibility with earlier versions, use .Fl A .