{"id":20817874,"url":"https://github.com/vforteli/flexinets.radius.radiusserver","last_synced_at":"2025-05-07T14:06:20.821Z","repository":{"id":144136577,"uuid":"53437188","full_name":"vforteli/Flexinets.Radius.RadiusServer","owner":"vforteli","description":"Radius server for .Net. Packets handled in pluggable IPacketHandlers","archived":false,"fork":false,"pushed_at":"2020-02-08T18:52:39.000Z","size":541,"stargazers_count":43,"open_issues_count":4,"forks_count":22,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-05-07T14:06:05.996Z","etag":null,"topics":["multithreaded","netstandard","radius","radius-dictionary","radius-server","rfc2865","rfc2866"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vforteli.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-03-08T18:57:28.000Z","updated_at":"2025-04-17T12:31:15.000Z","dependencies_parsed_at":null,"dependency_job_id":"036b78c1-dbfc-4733-8c58-916532e0988b","html_url":"https://github.com/vforteli/Flexinets.Radius.RadiusServer","commit_stats":null,"previous_names":["vforteli/radiusserver"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vforteli%2FFlexinets.Radius.RadiusServer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vforteli%2FFlexinets.Radius.RadiusServer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vforteli%2FFlexinets.Radius.RadiusServer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vforteli%2FFlexinets.Radius.RadiusServer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vforteli","download_url":"https://codeload.github.com/vforteli/Flexinets.Radius.RadiusServer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252892503,"owners_count":21820648,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["multithreaded","netstandard","radius","radius-dictionary","radius-server","rfc2865","rfc2866"],"created_at":"2024-11-17T21:44:36.545Z","updated_at":"2025-05-07T14:06:20.798Z","avatar_url":"https://github.com/vforteli.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Radius server library for .NET Standard\n\nThis project can be used to create a Radius server in for example a Windows Service.\n   \nPackets are handled in multiple threads without running several instances. This can be useful when packet handlers do something slow, like lookups from external dependencies.\n\n\nPluggable packet handlers for different remote IPs. \nConditionally compliant with RFCs  \nhttps://tools.ietf.org/html/rfc2865  \nhttps://tools.ietf.org/html/rfc2866  \nhttps://tools.ietf.org/html/rfc5997  \n  \n\n  \n[![Build status](https://ci.appveyor.com/api/projects/status/dbc6ua1ypa9eas3p?svg=true)](https://ci.appveyor.com/project/vforteli/radiusserver)\n\n# RadiusServer usage  \nSee https://github.com/vforteli/RadiusServerService/tree/Base for an example implementation  \nCreate a project or appropriate type and add a reference to Flexinets.Radius.RadiusServer   \n\n```\nvar path = Path.GetDirectoryName(AppDomain.CurrentDomain.BaseDirectory) + \"/Content/radius.dictionary\";\nvar dictionary = new RadiusDictionary(path, NullLogger\u003cRadiusDictionary\u003e.Instance);\nvar radiusPacketParser = new RadiusPacketParser(NullLogger\u003cRadiusPacketParser\u003e.Instance, dictionary);\nvar packetHandler = new TestPacketHandler();\nvar repository = new PacketHandlerRepository();\nrepository.AddPacketHandler(IPAddress.Any, packetHandler, \"secret\");\n\nvar server = new RadiusServer(\n    new UdpClientFactory(),\n    new IPEndPoint(IPAddress.Any, 1812),\n    radiusPacketParser,\n    RadiusServerType.Authentication,\n    repository,\n    NullLogger\u003cRadiusServer\u003e.Instance);\n\nserver.Start();\n```  \n\nThe packet handler should implement IPacketHandler  \n\nhttps://www.nuget.org/packages/Flexinets.Radius.RadiusServer/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvforteli%2Fflexinets.radius.radiusserver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvforteli%2Fflexinets.radius.radiusserver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvforteli%2Fflexinets.radius.radiusserver/lists"}