Page MenuHomeFreeBSD

if_ovpn: remove peer limit
ClosedPublic

Authored by kp on Nov 28 2022, 9:21 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Apr 6, 8:15 AM
Unknown Object (File)
Fri, Apr 5, 8:58 PM
Unknown Object (File)
Mar 8 2024, 4:29 PM
Unknown Object (File)
Jan 30 2024, 6:10 AM
Unknown Object (File)
Dec 20 2023, 6:23 AM
Unknown Object (File)
Oct 26 2023, 8:39 AM
Unknown Object (File)
Oct 17 2023, 8:40 AM
Unknown Object (File)
Jul 28 2023, 12:56 PM

Details

Summary

Replace the fixed-sized array by an RB_TREE. This should both speed up
lookups and remove the 128 peer limit.

We may wish to consider adding additional trees to also speed up the
lookup by IPv4/IPv6 addresses.

Sponsored by: Rubicon Communications, LLC ("Netgate")

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 48525
Build 45411: arc lint + arc unit

Event Timeline

kp requested review of this revision.Nov 28 2022, 9:21 PM
sys/net/if_ovpn.c
284

(struct ovpn_kpeer *)&p

The cast looks redundant. p is declared as struct ovpn_kpeer at line 278

1639

IPv6

kp marked 2 inline comments as done.Nov 29 2022, 9:32 AM

Good catch.

Looks good to me.

And you may also want to retire OVPN_MAX_PEERS ;)

This revision is now accepted and ready to land.Dec 1 2022, 10:10 AM
In D37524#854386, @zlei wrote:

Looks good to me.

And you may also want to retire OVPN_MAX_PEERS ;)

Thanks. I spotted that one eventually and fixed it, but figured it wasn't worth updating the review for that.

This revision was automatically updated to reflect the committed changes.