kiranchavala opened a new issue, #9841: URL: https://github.com/apache/cloudstack/issues/9841
ISSUE TYPE BUG COMPONENT NAME Component: Bug CLOUDSTACK VERSION Cloudstack version 4.19.1 SUMMARY Cloudstack doesn't validate the checksum if a template/Iso is registered via direct download Steps to reproduce the issue 1. Execute the register a Iso api call , provide the checksum value (CMK) register iso name=tinycore displaytext=tinycore url="http://10.0.35.225:9000/TinyCore-8.0.iso" checksum=f7fee34a73a7f8e3adb30778c7c32c51 ostypeid=b145ada2-3353-4b50-ac6f-0578c017be78 zoneid=d6d8ffab-fafc-4e6a-b073-2b00c085c776 Logs ``` 2024-10-23 09:04:41,950 DEBUG [utils.imagestore.ImageStoreUtil] (pool-1-thread-11:null) File at path /mnt/SecStorage/6a754ba7-5d09-3f5e-b9e8-1f828d742e9c/template/tmpl/2/218/dnld9161128539983478731tmp_ looks like an iso : ISO 9660 CD-ROM filesystem data (DOS/MBR boot sector) 'TinyCore' (bootable) 2024-10-23 09:04:41,951 DEBUG [storage.template.HttpTemplateDownloader] (pool-1-thread-11:null) Verified format of downloading file /mnt/SecStorage/6a754ba7-5d09-3f5e-b9e8-1f828d742e9c/template/tmpl/2/218/dnld9161128539983478731tmp_ is supported 2024-10-23 09:04:42,068 INFO [storage.template.DownloadManagerImpl] (pool-1-thread-11:null) Download Completion for jobId: 097ce48b-4821-43b4-8b4e-c78c838a9f5b, status=DOWNLOAD_FINISHED 2024-10-23 09:04:42,069 INFO [storage.template.DownloadManagerImpl] (pool-1-thread-11:null) local: /mnt/SecStorage/6a754ba7-5d09-3f5e-b9e8-1f828d742e9c/template/tmpl/2/218/dnld9161128539983478731tmp_, bytes=(16.00 MB) 16777216, error=Downloaded (16.00 MB) 16777216 bytes (download complete remote=(16.00 MB) 16777216 bytes), pct=100 2024-10-23 09:04:42,193 DEBUG [storage.template.DownloadManagerImpl] (pool-1-thread-11:null) computed checksum: {MD5}f7fee34a73a7f8e3adb30778c7c32c51 2024-10-23 09:04:42,197 DEBUG [storage.template.DownloadManagerImpl] (pool-1-thread-11:null) Executing command [/usr/local/cloud/systemvm/scripts/storage/secondary/createtmplt.sh -s 2 -S 53687091200 -d tinycore -h -n 218-2-272b7047-d373-3e4c-a301-74d769100ce8.iso -t /mnt/SecStorage/6a754ba7-5d09-3f5e-b9e8-1f828d742e9c/template/tmpl/2/218 -f /mnt/SecStorage/6a754ba7-5d09-3f5e-b9e8-1f828d742e9c/template/tmpl/2/218/dnld9161128539983478731tmp_ -u ]. ``` 2. Execute the register a template/ Iso api call , with direct download provide the checksum value For example (localcloud) 🐱 > register template directdownload=true name=t1 displaytext=t1 url=http://10.0.3.122/dummytemplates/kvm.qcow2 checksum=5789e2a5cabb3007171a45a06e86936h zoneid=1989a7ce-edf0-449e-80ba-8d3c98b8f289 ostypeid=f40fd984-8ba5-11ef-9b2d-1e00ea00035f format=qcow2 hypervisor=kvm logs of iso and template ``` 2024-10-23 09:10:03,712 DEBUG [cloud.agent.Agent] (agentRequest-Handler-2:null) (logid:7455f151) Request:Seq 1-7743376609310156844: { Cmd , MgmtId: 32989375365991, via: 1, Ver: v1, Flags: 100011, [{"org.apache.cloudstack.agent.directdownload.CheckUrlCommand":{"format":"iso","url":"http://10.0.35.225:9000/TinyCore-8.0.iso","connectTimeout":"5000","connectionRequestTimeout":"5000","socketTimeout":"5000","followRedirects":"false","wait":"0","bypassHostMaintenance":"false"}}] } 2024-10-23 09:10:03,712 DEBUG [cloud.agent.Agent] (agentRequest-Handler-2:null) (logid:7455f151) Processing command: org.apache.cloudstack.agent.directdownload.CheckUrlCommand 2024-10-23 09:10:03,712 INFO [resource.wrapper.LibvirtCheckUrlCommand] (agentRequest-Handler-2:null) (logid:7455f151) Checking URL: http://10.0.35.225:9000/TinyCore-8.0.iso, with connect timeout: 5000, connect request timeout: 5000, socket timeout: 5000 2024-10-23 09:10:03,716 DEBUG [cloud.agent.Agent] (agentRequest-Handler-2:null) (logid:7455f151) Seq 1-7743376609310156844: { Ans: , MgmtId: 32989375365991, via: 1, Ver: v1, Flags: 10, [{"org.apache.cloudstack.agent.directdownload.CheckUrlAnswer":{"templateSize":"(16.00 MB) 16777216","result":"true","wait":"0","bypassHostMaintenance":"false"}}] } a919df3-1bd9-34d6-b112-df45fd58b60a Capacity: (1.9990 TB) 2197949513728 Used: (1.2991 TB) 1428330381312 Available: (716.76 GB) 769619132416 2024-10-23 09:23:43,266 DEBUG [cloud.agent.Agent] (agentRequest-Handler-3:null) (logid:6b4f50d2) Request:Seq 2-1214283049529792489: { Cmd , MgmtId: 32989375365991, via: 2, Ver: v1, Flags: 100011, [{"org.apache.cloudstack.agent.directdownload.CheckUrlCommand":{"format":"QCOW2","url":"http://10.0.35.225:9000/ubuntu-22.04.qcow2","connectTimeout":"5000","connectionRequestTimeout":"5000","socketTimeout":"5000","followRedirects":"false","wait":"0","bypassHostMaintenance":"false"}}] } 2024-10-23 09:23:43,266 DEBUG [cloud.agent.Agent] (agentRequest-Handler-3:null) (logid:6b4f50d2) Processing command: org.apache.cloudstack.agent.directdownload.CheckUrlCommand 2024-10-23 09:23:43,266 INFO [resource.wrapper.LibvirtCheckUrlCommand] (agentRequest-Handler-3:null) (logid:6b4f50d2) Checking URL: http://10.0.35.225:9000/ubuntu-22.04.qcow2, with connect timeout: 5000, connect request timeout: 5000, socket timeout: 5000 2024-10-23 09:23:43,272 DEBUG [cloud.agent.Agent] (agentRequest-Handler-3:null) (logid:6b4f50d2) Seq 2-1214283049529792489: { Ans: , MgmtId: 32989375365991, via: 2, Ver: v1, Flags: 10, [{"org.apache.cloudstack.agent.directdownload.CheckUrlAnswer":{"templateSize":"(8.00 GB) 8589934592","result":"true","wait":"0","bypassHostMaintenance":"false"}}] ``` Expected Behaviour Cloudstack should validate the checksum for directdownload based template and iso Actual Behaviour Cloudstack is not validating the checksum when checksum is provided for directdownload template and iso -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
