/// <summary> /// Create a new server on endpoint with packet handler repository /// </summary> /// <param name="localEndpoint"></param> /// <param name="radiusPacketParser"></param> /// <param name="serverType"></param> /// <param name="packetHandlerRepository"></param> public RadiusServer(IPEndPoint localEndpoint, IRadiusPacketParser radiusPacketParser, RadiusServerType serverType, RadiusPacketHandlerRepository packetHandlerRepository) { LocalEndpoint = localEndpoint; RadiusPacketParser = radiusPacketParser; ServerType = serverType; PacketHandlerRepository = packetHandlerRepository; }
/// <summary> /// Get radius server for test /// </summary> /// <param name="Port">Server port</param> /// <param name="Secret">Packet secret</param> /// <param name="UserName">User name</param> /// <param name="UserPassword">User password</param> /// <param name="ServerType">Server type</param> /// <returns></returns> public static RadiusServer CreateTestServer(int Port, string Secret, string UserName, string UserPassword, RadiusServerType ServerType) { var path = Path.GetDirectoryName(AppDomain.CurrentDomain.BaseDirectory) + "/Content/radius.dictionary"; var radiusPacketParser = new RadiusPacketParser(new RadiusDictionary(path)); var packetHandler = new TestPacketHandler(UserName, UserPassword); var repository = new RadiusPacketHandlerRepository(); repository.AddPacketHandler(IPAddress.Any, packetHandler, Secret); return(new RadiusServer(new IPEndPoint(IPAddress.Any, Port), radiusPacketParser, ServerType, repository)); }