FRRouting/frr
View on GitHub ↗ ★ 4,355 C
The FRRouting Protocol Suite
26 mentions on Hacker News by 5 people: 3 stories, 23 comments · first 2017-04-05 · latest 2026-06-01
20082026
-
…see how to do that with unions & typeof. Maybe it's possible...? e.g. hash table wrapper: https://github.com/FRRouting/frr/blob/master/lib/typesafe.h#... (cf. https://docs.frrouting.org/projects/dev-guide/en/latest/list... )
comment by eqvinox · 2025-06-30 · in I write type-safe generic data structures in C -
> Is it? Could you elaborate/provide links to examples of this? https://github.com/FRRouting/frr/tree/master/lib/printf Disclaimer: my work. Customised to support %pHX, %pI4, %pFX, etc. - docs at https://docs.frrouting.org/projects/dev-guid…
comment by eqvinox · 2025-04-27 · in Bare metal printf – C standard library without OS -
…OpenBSD. It is (was?) the only mainline OS without support for native thread-local storage. ¹ e.g. https://github.com/FRRouting/frr/blob/3f290c97e8325bd9db9363...
comment by eqvinox · 2025-02-23 · in OpenBSD Innovations -
…:D (Almost: we have a full-featured command shell and just use that for testing) Shell bindings: https://github.com/FRRouting/frr/blob/master/tests/ospf6d/te... Input: https://github.com/FRRouting/frr/blob/master/tests/ospf6d/te...…
comment by eqvinox · 2024-12-09 · in Show HN: A portable hash map in C -
Here's another example of unit tests for hash tables (and RB-trees and skiplists and…) https://github.com/FRRouting/frr/blob/master/tests/lib/test_... (this file is #include'd from another, with some #define set up:)…
comment by eqvinox · 2024-12-09 · in Show HN: A portable hash map in C -
…do across threads in our C event loop, but there was no way around the fact that we needed it (cf. https://github.com/FRRouting/frr/blob/56d994aecab08b9462f2c8... )
comment by eqvinox · 2024-10-30 · in Async Rust is not safe with io_uring -
…very far, it runs a bit counter to how includes are handled currently. P.S.: I ended up doing this https://github.com/FRRouting/frr/pull/15876/files#diff-90783... instead; a tool that can be invoked to expand some DEFINE_FOO if needed for…
comment by eqvinox · 2024-10-04 · in Type-erased generic functions for C: A modest non-proposal -
<300 lines? Peanuts! ;D https://github.com/FRRouting/frr/blob/master/lib/typesafe.h https://docs.frrouting.org/projects/dev-guide/en/latest/list...
comment by eqvinox · 2024-10-03 · in Type-erased generic functions for C: A modest non-proposal -
…It's such a simple idea, not quite as simple to implement, but such a massive UX improvement. https://github.com/FRRouting/frr/blob/aa6ceeeb5b1f92280ee797...
comment by eqvinox · 2024-03-10 · in Ask HN: Best thing you've made in CLI -
…Those are the really tricky part that you'd need an explainer for… [source, in case anyone wonders: https://github.com/FRRouting/frr/blob/master/lib/atomlist.c ]
comment by eqvinox · 2023-03-15 · in Show HN: AI explanations for other people’s code -
Same kind of thing, but typesafe: https://github.com/FRRouting/frr/blob/master/lib/typesafe.h https://github.com/FRRouting/frr/blob/master/doc/developer/l... (disclaimer: it's my work.)
comment by eqvinox · 2022-03-26 · in Uthash – C macros for hash tables and more -
…to steal a done-tested-and-working userspace variant (for C, and with limitations C++) of this: https://github.com/FRRouting/frr/pull/6766 It's pretty much the same thing, all occurences of "zlog_debug" and the like create an entry in a…
comment by eqvinox · 2021-06-11 · in Linux-Kernel: Printk() Indexing -
Typesafe wrapper around the same code: https://github.com/FRRouting/frr/blob/master/lib/typerb.h https://github.com/FRRouting/frr/blob/master/lib/typerb.c Typesafe wrapper with identical API around linked lists, heap & hash:…
comment by eqvinox · 2021-04-09 · in Tree.h in OpenBSD: dependency-free intrusive binary tree (2002) -
Shameless plug: http://docs.frrouting.org/projects/dev-guide/en/latest/lists... https://github.com/FRRouting/frr/blob/master/lib/typesafe.h Differs in a bunch of design decisions. Memory management for items is strictly out of scope,…
comment by eqvinox · 2020-12-30 · in C Template Library -
For comparison, FRRouting has 25 year old CLI code: https://github.com/FRRouting/frr/blob/master/doc/developer/c... https://github.com/FRRouting/frr/blob/master/lib/command.c (+ other files nearby) looks like this: DEFUN (show_version,…
comment by eqvinox · 2020-06-09 · in Show HN: A library to add a command promp (and telnet) to your programs -
Here's our usage: https://github.com/FRRouting/frr/blob/master/lib/privs.h#L14... #define frr_with_privs(privs) \ for (struct zebra_privs_t *_once = NULL, \ *_privs __attribute__( \ (unused, cleanup(_zprivs_lower))) = \…
comment by eqvinox · 2020-04-14 · in Tell HN: C Experts Panel – Ask us anything about C -
…variable attribute: https://gcc.gnu.org/onlinedocs/gcc/Common-Variable-Attribute... Example use: https://github.com/FRRouting/frr/blob/master/lib/frr_pthread... (FRR requires a GCC/clang compatible compiler, so no fallback/workaround.)
comment by eqvinox · 2020-03-18 · in A Defer Statement for C -
…a lot, we considered the maintenance / duplication cost acceptable. You can see the result here: https://github.com/FRRouting/frr/tree/master/lib/printf http://docs.frrouting.org/projects/dev-guide/en/latest/loggi... stdio support is…
comment by eqvinox · 2019-11-13 · in Tearing apart printf() (2018) -
…(16000[0] vs 4000[1]), far more features, bugfixes, etc. Quagga has been dead for over a year. [0] https://github.com/FRRouting/frr [1] http://gogs.quagga.net/Quagga
comment by corndoge · 2019-08-03 · in Container Networking with Vxlan, BGP and WireGuard -
…comment, but if you're still using Quagga it is mostly dead - its fork FRR[0] is miles ahead. [0] https://github.com/frrouting/frr
comment by corndoge · 2019-07-29 · in OpenBGPD: The OpenBSD BGP internet routing daemon -
If you're into free routing software, also for *BSD, Linux and Solaris: https://github.com/frrouting/frr
comment by corndoge · 2019-07-28 · in OpenBGPD: The OpenBSD BGP internet routing daemon -
…to support PPPoE: https://docs.fd.io/vpp/18.07/clicmd_src_plugins_pppoe.html And works with FRR: https://github.com/FRRouting/frr/wiki/Alternate-forwarding-p... More docs on VPP can be found here, including installation, getting started,…
comment by lstamour · 2018-07-07 · in How to drop 10M packets per second -
…is over 3,000 commits ahead since most of the core developers have stopped developing Quagga. [0] https://github.com/FRRouting/frr
comment by corndoge · 2017-08-20 · in Kubermesh: self-hosted/healing/provisioning, partial-mesh network K8s cluster