public static bool CidrIpHasChanged(AppState state) { var getCidrIp = NetworkUtilities.GetCidrIp(); if (getCidrIp.Failure) { return(false); } var newCidrIp = getCidrIp.Value; var cidrIpMatch = state.Settings.LocalNetworkCidrIp == newCidrIp; if (cidrIpMatch) { return(false); } var prompt = "The current value for CIDR IP is " + $"{state.Settings.LocalNetworkCidrIp}, however it appears " + $"that {newCidrIp} is the correct value for the current LAN, " + "would you like to use this value?"; var updateCidrIp = PromptUserYesOrNo(state, prompt); if (!updateCidrIp) { return(false); } state.Settings.LocalNetworkCidrIp = newCidrIp; return(true); }
public static string InitializeLanCidrIp(AppState state) { var getCidrIp = NetworkUtilities.GetCidrIp(); if (getCidrIp.Failure) { return(GetCidrIpFromUser(state)); } var cidrIp = getCidrIp.Value; var prompt = "Found a single IPv4 address associated with the only ethernet adapter " + $"on this machine, is it ok to use {cidrIp} as the CIDR IP?"; return(PromptUserYesOrNo(state, prompt) ? cidrIp : GetCidrIpFromUser(state)); }
public void Setup() { _generateLogFiles = false; _clientLogMessages = new List <string>(); _serverLogMessages = new List <string>(); _remoteServerFolderPath = string.Empty; _remoteServerLocalIp = null; _remoteServerPublicIp = null; _serverReceivedTextMessage = false; _serverFileTransferPending = false; _serverReceivedAllFileBytes = false; _serverConfirmedFileTransferComplete = false; _serverRejectedFileTransfer = false; _serverProcessingRequestBacklogStarted = false; _serverProcessingRequestBacklogComplete = false; _serverErrorOccurred = false; _serverSendFileBytesStarted = false; _serverSendFileBytesComplete = false; _serverStoppedSendingFileBytes = false; _serverWasNotifiedFileTransferStalled = false; _clientReceivedTextMessage = false; _clientFileTransferPending = false; _clientReceiveFileBytesStarted = false; _clientReceiveFileBytesComplete = false; _clientConfirmedFileTransferComplete = false; _clientRejectedFileTransfer = false; _clientProcessingRequestBacklogStarted = false; _clientProcessingRequestBacklogComplete = false; _clientErrorOccurred = false; _clientReceivedServerInfo = false; _clientReceiveFileBytesComplete = false; _clientWasNotifiedFolderIsEmpty = false; _clientWasNotifiedFolderDoesNotExist = false; _clientWasNotifiedRetryLimitExceeded = false; _clientWasNotifiedFileDoesNotExist = false; _fileInfoList = new FileInfoList(); var currentPath = Directory.GetCurrentDirectory(); var index = currentPath.IndexOf("bin", StringComparison.Ordinal); _testFilesFolder = $"{currentPath.Remove(index - 1)}{Path.DirectorySeparatorChar}TestFiles{Path.DirectorySeparatorChar}"; _localFolder = _testFilesFolder + $"Client{Path.DirectorySeparatorChar}"; _remoteFolder = _testFilesFolder + $"Server{Path.DirectorySeparatorChar}"; _emptyFolder = _testFilesFolder + $"EmptyFolder{Path.DirectorySeparatorChar}"; _tempFolder = _testFilesFolder + $"temp{Path.DirectorySeparatorChar}"; Directory.CreateDirectory(_localFolder); Directory.CreateDirectory(_remoteFolder); Directory.CreateDirectory(_emptyFolder); _localFilePath = _localFolder + FileName; _remoteFilePath = _remoteFolder + FileName; _restoreFilePath = _testFilesFolder + FileName; FileHelper.DeleteFileIfAlreadyExists(_localFilePath, 3); if (File.Exists(_restoreFilePath)) { File.Copy(_restoreFilePath, _localFilePath); } FileHelper.DeleteFileIfAlreadyExists(_remoteFilePath, 3); if (File.Exists(_restoreFilePath)) { File.Copy(_restoreFilePath, _remoteFilePath); } _cidrIp = "172.20.10.0/28"; _remoteServerPlatform = ServerPlatform.None; var getCidrIp = NetworkUtilities.GetCidrIp(); if (getCidrIp.Success) { _cidrIp = getCidrIp.Value; } _cts = new CancellationTokenSource(); _socketSettings = new SocketSettings { ListenBacklogSize = 5, BufferSize = 1024, SocketTimeoutInMilliseconds = 10000 }; _clientSettings = new ServerSettings { LocalServerFolderPath = _localFolder, LocalNetworkCidrIp = _cidrIp, SocketSettings = _socketSettings, TransferUpdateInterval = 0.10f, FileTransferStalledTimeout = TimeSpan.FromSeconds(5), TransferRetryLimit = 2, RetryLimitLockout = TimeSpan.FromSeconds(3), LogLevel = LogLevel.Info }; _serverSettings = new ServerSettings { LocalServerFolderPath = _remoteFolder, LocalNetworkCidrIp = _cidrIp, SocketSettings = _socketSettings, TransferUpdateInterval = 0.10f, FileTransferStalledTimeout = TimeSpan.FromSeconds(5), TransferRetryLimit = 2, RetryLimitLockout = TimeSpan.FromSeconds(3), LogLevel = LogLevel.Info }; }