On 08/11/2018 04:39 PM, Marcos Paulo de Souza wrote:
When building libvirt with libcurl debug enabled (with
ESX_VI__CURL__ENABLE_DEBUG_OUTPUT set), the message bellow pops up:
make[3]: Entering directory '/mnt/data/gitroot/libvirt/src'
CC esx/libvirt_driver_esx_la-esx_vi.lo
esx/esx_vi.c: In function 'esxVI_CURL_Debug':
esx/esx_vi.c:191:5: error: enumeration value 'CURLINFO_SSL_DATA_IN' not handled
in switch [-Werror=switch-enum]
switch (type) {
^~~~~~
esx/esx_vi.c:191:5: error: enumeration value 'CURLINFO_SSL_DATA_OUT' not handled
in switch [-Werror=switch-enum]
esx/esx_vi.c:191:5: error: enumeration value 'CURLINFO_END' not handled in switch
[-Werror=switch-enum]
Our build requires at least libcurl 7.18.0, which is pretty stable since
it was release in 2008. Fix this problem by handling the mentioned enums
in the code.
Signed-off-by: Marcos Paulo de Souza <marcos.souza.org(a)gmail.com>
---
src/esx/esx_vi.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/src/esx/esx_vi.c b/src/esx/esx_vi.c
index a816c3a4f9..588670e137 100644
--- a/src/esx/esx_vi.c
+++ b/src/esx/esx_vi.c
@@ -163,7 +163,7 @@ esxVI_CURL_WriteBuffer(char *data, size_t size, size_t nmemb, void
*userdata)
return 0;
}
-#define ESX_VI__CURL__ENABLE_DEBUG_OUTPUT 0
+#define ESX_VI__CURL__ENABLE_DEBUG_OUTPUT 1
The part below is fine. However, I'm not sure about this one ^^. This
turns curl debugging on by default. I'm not sure that is what we want.
#if ESX_VI__CURL__ENABLE_DEBUG_OUTPUT
static int
@@ -205,13 +205,19 @@ esxVI_CURL_Debug(CURL *curl ATTRIBUTE_UNUSED, curl_infotype type,
break;
case CURLINFO_DATA_IN:
+ case CURLINFO_SSL_DATA_IN:
VIR_DEBUG("CURLINFO_DATA_IN [[[[%s]]]]", buffer);
break;
case CURLINFO_DATA_OUT:
+ case CURLINFO_SSL_DATA_OUT:
VIR_DEBUG("CURLINFO_DATA_OUT [[[[%s]]]]", buffer);
break;
+ case CURLINFO_END:
+ VIR_DEBUG("CURLINFO_END [[[[%s]]]]", buffer);
+ break;
+
default:
VIR_DEBUG("unknown");
break;
Michal