Flexinets.Radius.Core 2.0.1-prerelease.24

This is a prerelease version of Flexinets.Radius.Core.
There is a newer version of this package available.
See the version list below for details.
dotnet add package Flexinets.Radius.Core --version 2.0.1-prerelease.24                
NuGet\Install-Package Flexinets.Radius.Core -Version 2.0.1-prerelease.24                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Flexinets.Radius.Core" Version="2.0.1-prerelease.24" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Flexinets.Radius.Core --version 2.0.1-prerelease.24                
#r "nuget: Flexinets.Radius.Core, 2.0.1-prerelease.24"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Flexinets.Radius.Core as a Cake Addin
#addin nuget:?package=Flexinets.Radius.Core&version=2.0.1-prerelease.24&prerelease

// Install Flexinets.Radius.Core as a Cake Tool
#tool nuget:?package=Flexinets.Radius.Core&version=2.0.1-prerelease.24&prerelease                

Radius packet parser and assembler library for .Net.

Includes Core functionality for parsing and assembling Radius packets using a dictionary

Conditionally compliant with RFCs
https://tools.ietf.org/html/rfc2865
https://tools.ietf.org/html/rfc2866
https://tools.ietf.org/html/rfc5997

Projects

Flexinets.Radius.Core

Radius protocol bits and pieces. Published to NuGet here: https://www.nuget.org/packages/Flexinets.Radius.Core/

Flexinets.Radius.Core.Tests

Tests...

Flexinets.Radius.TestClient

Contains a minimal client which can be used to send test packets

Flexinets.Radius.TestServer

Contains a minimal server for responding with a static username and password with basic attributes

BlastRadius support

To support communication with Radius servers or clients enforcing Blast Radius checks, a Message-Authenticator must be added to sent packets and validated when received.

// Sending a packet
var requestPacket = new RadiusPacket(PacketCode.AccessRequest, 0, "xyzzy5461");
requestPacket.AddMessageAuthenticator(); // Add message authenticator for blast radius
requestPacket.AddAttribute("User-Name", "nemo");
requestPacket.AddAttribute("User-Password", "arctangent");

When receiving response packets, the request packet Authenticator must be passed to IRadiusPacketParse.Parse in order to calculate the correct Message-Authenticator in the response When receiving request packets, the Message-Authenticator is required and validated by default for all Access* packets in version 3.0.0 and greater.

In version 2.0.1 Blast radius checks can be enabled by setting skipBlastRadiusChecks to False when creating a RadiusPacketParser.


/// Set skipBlastRadiusChecks when creating packet parser
var radiusPacketParser new RadiusPacketParser(
        loggerFactory.CreateLogger<RadiusPacketParser>(),
        RadiusDictionary.Parse(DefaultDictionary.RadiusDictionary),
        skipBlastRadiusChecks: false)   // Default 'false' in version >= 3.0.0 and 'true' in 2.0.1

/// ...

// Receiving a packet
var parsedPacket = radiusPacketParser.Parse(
                    reponsePacketBytes,
                    requestPacket.SharedSecret,
                    requestPacket.Authenticator); // <- corresponding request Authenticator
Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (4)

Showing the top 4 NuGet packages that depend on Flexinets.Radius.Core:

Package Downloads
Flexinets.Radius.RadiusClient

Radius client. Send packets to radius servers. Packets can be sent asynchronously and are mapped to response using remote endpoint and identifier

Flexinets.Radius.RadiusServer

Radius server library. Implement IRadiusPacketHandler and handle packets. For an example server implementation hosted in a windows service, see: https://github.com/vforteli/RadiusServerService/tree/Base

Flexinets.Radius.RadSecClient

RadSec client. Send radius requests over RadSec (Radius/TLS) PKI based client authentication and clients mapped to packet handlers using SHA1 hash of certificate

Flexinets.Radius.RadSecServer

RadSec server. Library for hosting a Radsec server (Radius/TLS). Can be run in a Windows Service

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
3.0.1 100 11/24/2024
2.0.1 83 11/25/2024
2.0.1-prerelease.24 30 11/25/2024
2.0.1-prerelease.23 30 11/25/2024
2.0.0 100,993 2/17/2019
1.4.2 3,487 7/24/2018
1.4.1 6,242 6/11/2018
1.4.0 8,139 5/18/2018
1.3.0.4 1,419 5/7/2018
1.3.0.3 1,389 5/7/2018
1.3.0 2,910 8/27/2017
1.0.10 2,064 8/13/2017
1.0.8 2,843 8/7/2017
1.0.6 1,534 8/7/2017
1.0.5 2,209 8/6/2017
1.0.4 2,846 8/4/2017
1.0.3 2,154 8/4/2017

Message authenticator handling for blastradius