36 lines
1.2 KiB
Diff
36 lines
1.2 KiB
Diff
|
From 318aa975b212c9b8778606ce440c95682f99c700 Mon Sep 17 00:00:00 2001
|
|||
|
From: Pino Toscano <ptoscano@redhat.com>
|
|||
|
Date: Tue, 19 May 2020 12:14:18 +0200
|
|||
|
Subject: [PATCH] vCenter: fix parsing of HTTP status string (RHBZ#1837328)
|
|||
|
|
|||
|
vCenter 7 answers with an HTTP/2 status string, so we cannot extract
|
|||
|
the status code from it by using fixed positions in that string.
|
|||
|
Hence, pick the status code by reading what's after the whitespace.
|
|||
|
|
|||
|
Tested with vCenter 6.5 and 7.
|
|||
|
|
|||
|
(cherry picked from commit d2aa82317964d62fcc8dc7b6737773003d04b998
|
|||
|
in virt-v2v)
|
|||
|
---
|
|||
|
v2v/vCenter.ml | 4 +++-
|
|||
|
1 file changed, 3 insertions(+), 1 deletion(-)
|
|||
|
|
|||
|
diff --git a/v2v/vCenter.ml b/v2v/vCenter.ml
|
|||
|
index b1b9f9b15..b15e2f7d0 100644
|
|||
|
--- a/v2v/vCenter.ml
|
|||
|
+++ b/v2v/vCenter.ml
|
|||
|
@@ -213,7 +213,9 @@ and fetch_headers_from_url password_file uri sslverify https_url =
|
|||
|
| [] ->
|
|||
|
dump_response stderr;
|
|||
|
error (f_"vcenter: no status code in output of ‘curl’ command. Is ‘curl’ installed?")
|
|||
|
- | ss -> String.sub (List.hd (List.rev ss)) 9 3 in
|
|||
|
+ | ss ->
|
|||
|
+ let s = List.hd (List.rev ss) in
|
|||
|
+ String.sub s (String.index s ' ' + 1) 3 in
|
|||
|
|
|||
|
let headers =
|
|||
|
List.map (
|
|||
|
--
|
|||
|
2.18.4
|
|||
|
|