Hi Everyone,
Merry Christmas and Happy New Year! I'm trying to upload disk to ESX 5.0 server using the URL obtained by the server (during VM installation process); I'm using libcurl support in libvirt to upload the disk, but I get this error on file upload: ---------------------- * About to connect() to <ip> port 443 (#1) * Trying <ip>... * connected * found 153 certificates in /etc/ssl/certs/ca-certificates.crt * server certificate verification SKIPPED * compression: NULL * cipher: AES-128-CBC * MAC: SHA1 > PUT /ha-nfc/52c6d592-7636-67c5-29f3-d5b373be4f42/disk-0.vmdk HTTP/1.1 User-Agent: libvirt-esx Host: <ip> Accept: */* Cookie: vmware_soap_session="521af33d-2bbe-38aa-21e8-13d474ccb023" Content-Type: text/xml; charset=UTF-8 SOAPAction: "urn:vim25" Content-Length: 7021568 < HTTP/1.1 403 Forbidden < Date: Sun, 30 Dec 2012 01:28:19 GMT < Connection: close < Content-Type: text; charset=plain < Content-Length: 44 ---------------------- To achieve this operation I've added a routine to support file Upload (for ESX driver as currently it only support buffer upload), I verified its functioning my uploading a file using datastore based URL: (http(s)//<ip>/file??dcPath=ha-datacenter?dsName=xxx). CURL options provided by me are; ----------- curl_easy_setopt(curl->handle, CURLOPT_UPLOAD, 1L); curl_easy_setopt(curl->handle, CURLOPT_URL, url); curl_easy_setopt(curl->handle, CURLOPT_READDATA, <data pointer>); curl_easy_setopt(curl->handle, CURLOPT_INFILESIZE_LARGE, (curl_off_t) fileData->size); curl_easy_setopt(curl->handle, CURLOPT_READFUNCTION, <read function>); curl_easy_setopt(curl->handle, CURLOPT_VERBOSE, 1); ------------------------ My understanding is there needs to be some tuning done to ESX server to accept this upload operation, please suggest if anyone has faced this issue before. Thanks! Ata |
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list