2 new radio buttons in Connection Options page, for Basic and Digest; Digest is the default as it's the most secure.
New proxy authentication method setting, which is used to configure XenAPI's HTTP class and the .NET AuthenticationManager (which handles which authentication schemes can be used by the .NET web classes).
The new setting is also transferred and used by the Health Check service.
The bug noted in CA-214653 also occurs here, but the work-around on PR#1201 for that bug will also work for this.
Signed-off-by: Frezzle <frederico.mazzone@citrix.com>
Now transfers proxy credentials in encrypted format and checks for default empty credentials when loading them for first time.
Fixed a break in unit test in HTTP.ReadHttpHeaders().
Signed-off-by: Frederico Mazzone <fredericom@citrite.net>
Removed last bits of code relating to "Bypass proxy server for local addresses" option.
New proxy settings are sent from XenCenter to health check service and used to configure the proxy using GetProxyFromSettings().
Health check service now correctly saves its proxy settings and updates the static Proxy property for the Session class; done in new ReconfigureConnectionSettings().
Signed-off-by: Frederico Mazzone <fredericom@citrite.net>
Added 2 textboxes for proxy username and password; encrypted when saved and decrypted when loaded.
Added 2 checkboxes; one for bypassing proxy for xenserver connections, one for providing proxy credentials.
Removed checkbox for bypassing proxy for local addresses.
Controls are no longer enabled/disabled when the related proxy option is selected/deselected.
Making changes to a control (e.g. username, bypass checkbox, etc) selects the 'Use this proxy server' option automatically.
Removed "Bypass proxy server for local addresses" option.
Basic and Digest authentication implemented. Tested with FreeProxy (Basic+Digest), CCProxy (Basic) and AnalogX Proxy (no authentication); each were tested with correct credentials, incorrect credentials and missing credentials; all gave expected results.
Signed-off-by: Frederico Mazzone <fredericom@citrite.net>
Fixing XenServerHealthCheck to use modern overload of session.login_with_password. With this change XC and all its components are now sending an originator field (with some version added to it).
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- added Case Number edit box on the Destination page of the wizard
- valid case number needs to be 9 or less digits
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
HealthCheckService retrieves system capabilities, filter them with
the reports excluded in Health Check.
Since Dundee, add verbosity for host status report request.
Signed-off-by: Hui Zhang <hui.zhang@citrix.com>
- change the URLs to the production site
- for development and testing these settings should be changed to the staging site via registry keys
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- added CallHomeSettings.TryParseStringToDateTime() function, which does not throw an exception if the conversion fails
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Use string.IsNullOrEmpty() instead of string.Length
- Reset NewUploadRequest after a successful upload (if the upload started after the request time)
- When trying to determine if an “on demand” upload is due, avoid parsing exception if the NewUploadRequest if the field is empty.
- Also added more detailed logging.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
1. Using en-us to transfer upload request time
2. Check the pipe is closed before close it.
3. On demand upload will not have 24 hour due problem since it only check once in half an hour
4. Avoid get upload token by empty session.
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
When an upload request is triggered,
1. fetch the upload token from CallHomeSettings,
2. generate the server status report and upload it to CIS server,
3. update the corresponding fields of CallHomeSettings when the
upload is finished successfully or failed.
Signed-off-by: Hui Zhang <hui.zhang@citrix.com>
1. Create named pipe: “HealthCheckServicePipe”
2. Receive credential send from XenServer and decrypt it
3. Update credential setting and save encrypted credential using current user scope system user.
4. Create work thread to handle the pipe communication.
5. If HealthCheckServicePipe already existed before service start, stop service and output service error log
6. If sign off information is received for a host (XenserverName or IP without username and password) then the existing saved credentials will be deleted
7. If the HealthCheckService connects to a host that is no longer enrolled, then it will delete the existing saved credentials
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
1.Create a service named XenServerHealthCheck
2.Read the XenCenter Server List from configuration
3.Try to connect to these servers
4.Modify protection of XenCenter config from CurrentUset to LocalMachine
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>