Error 363506 When Communicating Over HTTPS in LabVIEW 2023 Q3

Updated Oct 9, 2024

Reported In

Software

  • LabVIEW 2023 Q3
  • LabVIEW 2024 Q1

Issue Details

I''ve been using the LabVIEW HTTP Client API to perform HTTPS communication with a Web Server. After upgrading my application to LabVIEW 2023 Q3, the code no longer works, and I get the following error:

Error 363506 occurred at LabVIEWHTTPClient.lvlib:GET.vi:39001

Possible reason(s): 
LabVIEW: (0x58BF2) The certificate path or CA information of the local host is invalid.
 
kleenexsmoke_1-1726857765586.png

In my VI, I'm using the ConfigSSL.vi to define to point to the certificate files located in my local file system.
 
Screenshot 2024-10-09 132644.png
 

Solution

This is known issue started in LabVIEW 2023 Q3 and fixed in LabVIEW 2024 Q3.

Configure SSL (WebDAV), Asynchronous Configure SSL (WebDAV), ConfigSSL (HTTP Client), and Config TLS (SMTP) functions fail to use certificate files. Instead, you need to feed the certificates into the Windows certificate store and specify their paths in the way curl expects. The path to a certificate in the windows certificate store is <store location>\<store name>\<thumbprint>. A practical example is "CurrentUser\MY\934a7ac6f8a5d579285a74fa61e19f23ddfe8d7a". Thumbprint is usually a SHA-1 hex string which you can see in certificate details. Refer to cURL documentation for further details.

Another option is to downgrade to LabVIEW 2023 Q1 or upgrade to LabVIEW 2024 Q3.

Additional Information

Beginning with the LabVIEW 2023 Q3 update, the nicurl component, which is NI's proprietary version of the cURL library, has been set to utilize Schannel in place of OpenSSL for Windows operating systems. If cURL is compiled using OpenSSL, it only allows certificates to be imported from file locations. In contrast, when curl is built with Schannel, it explicitly prohibits the import of certificates from files.