This prevents `AccessViolationException`s being called, as they're hit when two instances of `AxMSTSCLib.AxMsRdpClient9` call `Connect` on the same IP + Port combination, which results in the same memory being accessed in unmanaged code.
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
The `Connect` method returns `E_FAIL` if it is called while the control is already connected or in the connecting state. This can be hit when a lot of connections are being opened at the same time, and it's there as a failsafe.
Also adds `IsAttemptingConnection` as a new field
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
The reason this wasn't added to the `AxMsRdpClientX` classes is that I thought it best to not touch `AxMSTSCLib` classes as they are likely generated.
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
- The checkbox should be above the credential textboxes.
- Some controls were not aligned correctly.
- Place the controls in tableLayout panels.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
- Ensure `UpgradeRequiresEUA` runs for Yangtze or greater hosts
- Group non-manual checks in same if block
- Remove unused field in `EuaNotFoundProblem`
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
Also:
- Add `HostDoesNotHaveHotfixWarning` warning to EUA `Check` when necessary
- Filter our `null` EUAs before passing them to the `Problem`
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
Also:
- Remove unused `button_click` event handler in `AcceptEuaDialog`
- Load EUAs within the `UpgradeRequiresEua` `Check` and removed the spinner from `AcceptEuaDialog`
- Remove `_errors` from `AcceptEuaDialog`
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
Adds a new field in `SelectMultipleVMDestinationPage`: `AllSelectedTargets`.
This new field contains a list of all hosts that have been selected. This way `ImportSelectHostPage` can check for each `Host` that has been selected individually and add more relevant messages
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
Also, moved the filter indication label from the Alerts/Updates/Events page
to the main window because the Updates page top toolstrip looked too clattered.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
The check DundeeOrGreater always returns true since we disallow connection to anything earlier than Havana.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
- Adding a disk on local SR to an HA protected VM was crashing.
- The user could not plug the disk to the VM even after providing credentials on the role elevation dialog.
- The user had to enter credentials for each of the sub-actions involved in adding a disk.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
* Tidy up `SelectMultipleVMDestinationPage.cs`
* CA-375532 & CA-336510: Add warning when importing VMs with too many vCPUs
* CA-375532 & CA-336510: Prevent users from starting appliance if a VM has too many vCPUs
* Tidy up `Page_CpuMem`: use expression-bodied properties
* Tidy up `Page_CpuMem`: use conventional naming scheme
* Tidy up `Page_CpuMem`: use explicit modifiers
* Tidy up `Page_CpuMem`: use `en-US` locale for names
* Tidy up `Page_CpuMem`: use `var` when possible
* Tidy up `Page_CpuMem`: rename `Vcpus` to `VCpus`
* Tidy up `Page_CpuMem`: reorder elements
* Tidy up `Page_CpuMem`: revert class renaming and fix `vCpus` typos
* CA-375532: Prevent users from starting VM if they select too many vCPUs
* Tidy up `Page_Finish`: use expression-bodied properties
* Tidy up `Page_Finish`: fix typo
* Tidy up `Page_CpuMem`: rename `CanStartVM` to `CanStartVm`
* Remove unnecessary using directives
* Anchor warning icon to the top-left corner of its parent
* CA-375532 & CA-336510: Warn users when selecting more vCPUs than pCPUs in the Properties page
* CP-41825: Add warning for imported VMs with > 32 vCPUs
* CP-41825: Add warning for new VMs with > 32 vCPUs
* CP-41825: Add warning for existing VMs when selecting > 32 vCPUs
* CP-41825: Update wording used to alert users running VMs with > 32vCPUs
* Remove unused local variable in `VappStartCommand.cs`
* Reword some vCPUs messages
* Simplify assignment of `CanStartImmediately` in `Page_Finish.cs`
* Simplify assignment of `CanStartVmsAutomatically` in `ImportFinishPage.cs`
* Remove useless `Count` check in `VappStartCommand`
* Rename `pictureBox1` to `warningPictureBox` and change its `SizeMode`
* Separate CPU and memory warnings in `Page_CpuMem`
* Shorten warning messages shown in `Page_CpuMem`
* Disable option to start VM when memory configuration isn't valid
* Report number of vCPUs and pCPUs when showing warning in New VM wizard
* Tidy up `CpuMemoryEditPage`: rename elements
* Tidy up `CpuMemoryEditPage`: use explicity modifiers
* Tidy up `CpuMemoryEditPage`: Rename `CPUMemoryEditPage` to `CpuMemoryEditPage`
* Tidy up `CpuMemoryEditPage`: Miscellaneous renames and improvements
* Tidy up `CpuMemoryEditPage`: Fix whitespace
* Tidy up `CpuMemoryEditPage`: Use ReSharper code formatter
* Tidy up `CpuMemoryEditPage`: Move events to own region
* Tidy up `CpuMemoryEditPage`: Move `IEditPage` members to own region
* Tidy up `CpuMemoryEditPage`: Order members outside of regions
* Replace topology and vCPU warning labels with structured warnings
* Ensure warnings ends with a dot
* Allow multiple CPU warnings to show at the same time
* Remove warning link for vCPUS > pCPUS Option is not achievable
* Enable option to force unit used in `MemorySpinner`
* Replace `NumericUpDown` with `MemorySpinner` and show warnings at bottom of control
* Check destination pCPUs count when destination is not a pool
* Do not disable option to start VMs after import if user selects a shared SR
* Add memory warning when importing appliance with too much memory
* Sort vCPUs and memory warning strings
* Remove target from `ImportWizard`'s summary
Target is not useful and can cause confusion as appliance VMs could start on non-target hosts
* The home server is needed in the summary when importing XVA. The target server is not needed in the summary when migrating a VM.
* Update warnings when the server selection changes. Corrected memory calculation.
* Show all warnings for vCPUs. Moved topology warning to the bottom. Separated methods for showing memory and vCPU warnings.
* Removed the memory setting from the VM Properties dialog. Split running VM info to a separate panel.
* Corrections to the logic for starting the VM automatically. Also, Fixed a bit the layout of the Finish page to make better use of the available space.
* Corrections as per code review.
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
Co-authored-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
* Prevent `long` overflow when VM has a very large amount of memory. Resulted in XenCenter hanging with a significant memory leak.
* Remove unused `label` parameter from `LabelShouldBeShown`
* Use `double` for increment variable when calculating increments in `ShinyBar`
* Use `Debug.Assert` call to avoid issues with `DrawGrid` in `ShinyBar`
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
RBAC check sometimes runs after the action that is being checked. This results in the status bar being cleared if the RBAC check passes.
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
- Removed event that had no subscribers.
- The xml docs are more useful on the properties and not their supporting private fields.
- Stop silencing cache errors as they may reveal other issues.
- Adding server to history was called twice.
- Connection null checks and refactoring of ConnectionExists exceptions.
- Added some logging.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
- Stop using reflection for the creation of context menu builders. It's error prone.
- MultipleDockerContainers was not constructed because it was abstract.
- Do not reconstruct the selectionList for each builder.
- Unused variables.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
- Multiple server entries should not be parsed differently from single entries;
(the Uri case was parsed incorrectly; multiple servers with ports could not be added).
- Simplified code parsing the hostname and port.
- Removed obsolete property IXenConnection.Version.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
- Moved Windows Server templates to a different category.
- Show templates in reverse alphabetical (typically release) order.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
- The CustomFieldsDialog was an unnecessary intermediate step deteriorating the user experience.
- Fixed layout issues when we have a long list of custom fields.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
- Converted them to proper AsyncActions to facilitate further refactoring.
- Moved SaveCustomFieldsAction to the same folder as the above.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
Fixed issue where the SR was not preselected when editing an existing disk and no scans were taking place.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
- Bumped branding to v4.11.
- Reverted VS version in the solution file.
- Removed brand override registry entry.
- Converted HealthCheck warning pop-up to info pop-up.
- Moved status report actions to a separate folder.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
* Remove credentials controls from `BugToolPageDestination`
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
* Explicitly call dispose in `BugToolPageDestination.cs`
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
* Tidy up code in `BugToolPageDestination.cs`
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
* Move `StatusReportRow` to its own file
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
* Move `ClientSideDataRow` and `HostStatusRow` to own files
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
* CP-40842: Update order of pages in `BugToolWizard`
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
* CP-40842: Update action and create row for packaging status report in BugTool wizard
Instead of creating a new action, this males ZipStatusReportAction inherit StatusReportAction
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
* CP-40842: Allow for pending `StatusReportAction` to be cancelled
This avoids the need for a running action to update the status. i.e. an action that has been registered but hasn't started running can be cancelled, too.
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
* CP-40842: Update content of `ACTION_SYSTEM_STATUS_SUCCESSFUL` message
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
* CP-40842: Add link to `labelBlurb` in `BugToolPageRetrieveData.cs`
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
* CP-40842: Add report packaging logic to `BugToolPageRetrieveData.cs`
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
* CP-40842: Open CIS URL when clicking on `linkLabelBlurb`
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
* CP-40842: Report packaged data amount in `ZipStatusReportAction`
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
* Remove unused `using`s
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
* Minor layout tweaks.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
* Renamed folder and namespace to match the ones for the other wizards.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
* Renamed wizard's private fields. Some code efficiency corrections.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
* Keep the row classes as private within the BugToolPageRetrieveData class.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
* Removed leftover unused action.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
* Tidy up status report messages. Use more relevant icon.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
* Made blurb localisable.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
* Renamed private fields.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
* Simplified the stages of the compilation of the status report.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
* Renamed row classes again to match the action names.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
* Simplify reporting the progress of the zipping action.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
* Recursive call is not necessary. Tweaked message.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* Sort strings
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* Update copyright notices
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
---------
Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Co-authored-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
Co-authored-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>