Closed as not planned
Description
Describe the request
Currently, the certificate upload for the WiFI101 based HW does not support ECC-based certificates. This is an issues, as some sites (e.g., make.com) use ECC-based certificates and can thus not be reached.
Note that the WiFinina fwuploader does support these kind of certificates.
Describe the current behavior
Currently, the firmware uploader simply responds with "Upload failed. Please try again", when trying to upload an ECC-based certificate (log output attached below).
More specifically, the following steps were performed:
- Open Arduino IDE 2.0.3
- Connect Arduino MKR1000
- Select Tools > Upload SSL Root Certificates
- Add
hook.eu1.make.com:443
to the list, select it, select the board and click upload - After some time, the tool responds with "Upload failed, Please try again"
Arduino Firmware Uploader version
Original report
arduino-fwuploader Version: 2.2.2 Commit: 8944d4a Date: 2022-10-17T14:51:09Z
Last verified with
2.3.0
Operating system
Windows
Operating system version
10
Additional context
The log file shows the following exception:
2022-12-07 14:23:43 2022-12-07T13:23:43.722Z root ERROR Request uploadCertificates failed with error: Error executing "C:\Program Files\Arduino IDE\resources\app\node_modules\arduino-ide-extension\build\arduino-fwuploader.exe" certificates flash -b arduino:samd:mkr1000 -a COM30 -u hook.eu1.make.com:443: panic: interface conversion: interface {} is *ecdsa.PublicKey, not *rsa.PublicKey
goroutine 1 [running]:
github.com/arduino/arduino-fwuploader/flasher.(*WincFlasher).getCertificateData(0x130100010304?, 0xc000348580)
/home/runner/work/arduino-fwuploader/arduino-fwuploader/flasher/winc.go:182 +0x545
github.com/arduino/arduino-fwuploader/flasher.(*WincFlasher).certificateFromURL(0xc000006018?, {0xc00045cee8, 0x15})
/home/runner/work/arduino-fwuploader/arduino-fwuploader/flasher/winc.go:162 +0x433
github.com/arduino/arduino-fwuploader/flasher.(*WincFlasher).FlashCertificates(0xc00001e130?, 0xc00065c0c0?, {0xc00005b1e0, 0x1, 0xc00001e130?}, {0x90ee80, 0xc000006018})
/home/runner/work/arduino-fwuploader/arduino-fwuploader/flasher/winc.go:98 +0x4d2
github.com/arduino/arduino-fwuploader/cli/certificates.runFlash(0xc0001c3400?, {0xc0000666c0?, 0x6?, 0x6?})
/home/runner/work/arduino-fwuploader/arduino-fwuploader/cli/certificates/flash.go:125 +0x650
github.com/spf13/cobra.(*Command).execute(0xc0001c3400, {0xc000066660, 0x6, 0x6})
/home/runner/go/pkg/mod/github.com/spf13/[email protected]/command.go:856 +0x663
github.com/spf13/cobra.(*Command).ExecuteC(0xc0001c2000)
/home/runner/go/pkg/mod/github.com/spf13/[email protected]/command.go:960 +0x39c
github.com/spf13/cobra.(*Command).Execute(...)
/home/runner/go/pkg/mod/github.com/spf13/[email protected]/command.go:897
main.main()
/home/runner/work/arduino-fwuploader/arduino-fwuploader/main.go:34 +0x45
Issue checklist
- I searched for previous requests in the issue tracker
- I verified the feature was still missing when using the latest version
- My request contains all necessary details