示例#1
0
 public async Task <ActionResult <BridgeListener> > EditBridgeListener([FromBody] BridgeListener listener)
 {
     try
     {
         return(await _service.EditBridgeListener(listener));
     }
     catch (ControllerNotFoundException e)
     {
         return(NotFound(e.Message));
     }
     catch (ControllerBadRequestException e)
     {
         return(BadRequest(e.Message));
     }
 }
示例#2
0
        public async Task <IActionResult> CreateBridge(BridgeListener listener)
        {
            try
            {
                listener = await _context.CreateBridgeListener(_userManager, _configuration, listener, _ListenerCancellationTokens, _eventhub);

                return(RedirectToAction(nameof(Index)));
            }
            catch (Exception e) when(e is ControllerNotFoundException || e is ControllerBadRequestException || e is ControllerUnauthorizedException)
            {
                ModelState.AddModelError(string.Empty, e.Message);
                ViewBag.Profiles = await _context.GetHttpProfiles();

                ViewBag.ListenerTypes = await _context.GetListenerTypes();

                return(RedirectToAction(nameof(Create)));
            }
        }
 public static Covenant.API.Models.BridgeListener ToAPIListener(BridgeListener listener)
 {
     return(new Covenant.API.Models.BridgeListener
     {
         Id = listener.Id,
         Name = listener.Name,
         BindAddress = listener.BindAddress,
         BindPort = listener.BindPort,
         ConnectAddresses = listener.ConnectAddresses,
         ConnectPort = listener.ConnectPort,
         CovenantToken = listener.CovenantToken,
         Description = listener.Description,
         Guid = listener.GUID,
         IsBridgeConnected = listener.IsBridgeConnected,
         ImplantReadCode = listener.ImplantReadCode,
         ImplantWriteCode = listener.ImplantWriteCode,
         ListenerTypeId = listener.ListenerTypeId,
         ProfileId = listener.ProfileId,
         StartTime = listener.StartTime,
         Status = (Covenant.API.Models.ListenerStatus)Enum.Parse(typeof(Covenant.API.Models.ListenerStatus), listener.Status.ToString(), true)
     });
 }
示例#4
0
        public async Task <IActionResult> CreateBridge(BridgeListener listener)
        {
            try
            {
                listener = await _context.CreateBridgeListener(_userManager, _configuration, listener, _ListenerCancellationTokens, _eventhub);

                return(RedirectToAction(nameof(Index)));
            }
            catch (Exception e) when(e is ControllerNotFoundException || e is ControllerBadRequestException || e is ControllerUnauthorizedException)
            {
                ModelState.AddModelError(string.Empty, e.Message);
                ViewBag.Profiles     = (await _context.GetBridgeProfiles()).FirstOrDefault().Id;
                ViewBag.ListenerType = (await _context.GetListenerTypes()).FirstOrDefault(LT => LT.Name == "Bridge");
                BridgeProfile profile = (await _context.GetBridgeProfiles()).FirstOrDefault();

                return(View(new BridgeListener
                {
                    ListenerTypeId = ViewBag.ListenerType.Id,
                    ProfileId = profile.Id,
                    Profile = profile
                }));
            }
        }
示例#5
0
 public async Task CreateBridgeListener(BridgeListener listener)
 {
     await _client.CreateBridgeListenerAsync(ToAPIListener(listener));
 }
示例#6
0
 public Task <BridgeListener> CreateBridgeListener(BridgeListener listener)
 {
     return(_connection.InvokeAsync <BridgeListener>("CreateBridgeListener", listener));
 }