Exemple #1
0
        void OnServiceRegistered(object sender, SshService e)
        {
            var session = (Session)sender;

            _logger.LogInformation("Session {0} requesting {1}.",
                                   BitConverter.ToString(session.SessionId).Replace("-", ""), e.GetType().Name);

            if (e is UserAuthService)
            {
                var service = (UserAuthService)e;
                service.UserAuth += OnUserAuth;
            }
            else if (e is ConnectionService)
            {
                var service = (ConnectionService)e;


                service.SessionRequest += OnSessionRequestOpened; // adding SFTP session initiation support

                if (settingsrepo.ServerSettings.EnableCommand)
                {
                    service.CommandOpened += OnServiceCommandOpened;
                }
                if (settingsrepo.ServerSettings.EnableDirectTcpIp)
                {
                    service.TcpForwardRequest += OnDirectTcpIpReceived;
                    //service.DirectTcpIpReceived += OnDirectTcpIpReceived;
                }
            }
        }
Exemple #2
0
        internal SshService RegisterService(string serviceName, UserauthArgs auth = null)
        {
            Contract.Requires(serviceName != null);

            SshService service = null;

            switch (serviceName)
            {
            case "ssh-userauth":
                if (GetService <UserauthService>() == null)
                {
                    service = new UserauthService(this);
                }
                break;

            case "ssh-connection":
                if (auth != null && GetService <ConnectionService>() == null)
                {
                    service = new ConnectionService(this, auth);
                }
                break;
            }
            if (service != null)
            {
                if (ServiceRegistered != null)
                {
                    ServiceRegistered(this, service);
                }

                _services.Add(service);
            }
            return(service);
        }
        public static void ClassInitialize(TestContext ctx)
        {
            var loggerMock = new Mock <ILogger>();
            var mapperMock = new Mock <IMapper>();

            _service = new SshService(loggerMock.Object, mapperMock.Object);
            //Assert.IsInstanceOfType(_service, typeof(IPackageUpdates));
        }
        public void Create()
        {
            var loggerMock = new Mock <ILogger>();
            var mapperMock = new Mock <IMapper>();

            var obj = new SshService(loggerMock.Object, mapperMock.Object);

            Assert.IsInstanceOfType(obj, typeof(ISshService));
        }
Exemple #5
0
        private void HandleMessage(ServiceRequestMessage message)
        {
            SshService service = RegisterService(message.ServiceName);

            if (service != null)
            {
                SendMessage(new ServiceAcceptMessage(message.ServiceName));
                return;
            }
            throw new SshConnectionException(string.Format("Service \"{0}\" not available.", message.ServiceName),
                                             DisconnectReason.ServiceNotAvailable);
        }
Exemple #6
0
 private void ServiceRegistered(object sender, SshService e)
 {
     if (e is UserauthService)
     {
         var service = (UserauthService)e;
         service.Userauth += Userauth;
     }
     else if (e is ConnectionService)
     {
         var service = (ConnectionService)e;
         service.CommandOpened += CommandOpened;
     }
 }
Exemple #7
0
        void e_ServiceRegistered(object sender, SshService e)
        {
            var session = (Session)sender;

            if (e is UserauthService)
            {
                var service = (UserauthService)e;
                service.Userauth += service_Userauth;
            }
            else if (e is ConnectionService)
            {
                var service = (ConnectionService)e;
                service.CommandOpened += service_CommandOpened;
            }
        }
Exemple #8
0
        static void OnServiceRegistered(object sender, SshService e)
        {
            var session = (Session)sender;

            Console.WriteLine("Session {0} requesting {1}.",
                              BitConverter.ToString(session.SessionId).Replace("-", ""), e.GetType().Name);

            if (e is UserAuthService)
            {
                var service = (UserAuthService)e;
                service.UserAuth += OnUserAuth;
            }
            else if (e is ConnectionService)
            {
                var service = (ConnectionService)e;
                service.CommandOpened += OnServiceCommandOpened;
            }
        }
Exemple #9
0
        static void e_ServiceRegistered(object sender, SshService e)
        {
            var session = (Session)sender;

            Console.WriteLine("Session {0} requesting {1}.",
                              BitConverter.ToString(session.SessionId).Replace("-", ""), e.GetType().Name);

            if (e is UserauthService)
            {
                var service = (UserauthService)e;
                service.Userauth += service_Userauth;
            }
            else if (e is ConnectionService)
            {
                var service = (ConnectionService)e;
                service.CommandOpened     += service_CommandOpened;
                service.EnvReceived       += service_EnvReceived;
                service.PtyReceived       += service_PtyReceived;
                service.TcpForwardRequest += service_TcpForwardRequest;
            }
        }
        private static void EServiceRegistered(object sender, SshService e)
        {
            var session = (Session)sender;

            Console.WriteLine("Session {0} requesting {1}.",
                              BitConverter.ToString(session.SessionId).Replace("-", ""), e.GetType().Name);

            switch (e)
            {
            case UserauthService _: {
                var service = (UserauthService)e;
                service.Userauth += ServiceUserauth;
                break;
            }

            case ConnectionService _: {
                var service = (ConnectionService)e;
                service.CommandOpened += ServiceCommandOpened;
                break;
            }
            }
        }