[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v6 2/5] qerror: add five qerror strings
From: |
Paolo Bonzini |
Subject: |
Re: [Qemu-devel] [PATCH v6 2/5] qerror: add five qerror strings |
Date: |
Wed, 18 Apr 2012 13:25:31 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:11.0) Gecko/20120329 Thunderbird/11.0.1 |
Il 18/04/2012 08:51, Orit Wasserman ha scritto:
> On 04/17/2012 05:54 PM, Amos Kong wrote:
>> Add five new qerror strings, they are about socket:
>> QERR_SOCKET_CONNECT_IN_PROGRESS
>> QERR_SOCKET_CONNECT_FAILED
>> QERR_SOCKET_LISTEN_FAILED
>> QERR_SOCKET_BIND_FAILED
>> QERR_SOCKET_CREATE_FAILED
>>
>> Signed-off-by: Amos Kong <address@hidden>
>> ---
>> qerror.c | 20 ++++++++++++++++++++
>> qerror.h | 15 +++++++++++++++
>> 2 files changed, 35 insertions(+), 0 deletions(-)
>>
>> diff --git a/qerror.c b/qerror.c
>> index 96fbe71..7afe1ac 100644
>> --- a/qerror.c
>> +++ b/qerror.c
>> @@ -304,6 +304,26 @@ static const QErrorStringTable qerror_table[] = {
>> .error_fmt = QERR_VNC_SERVER_FAILED,
>> .desc = "Could not start VNC server on %(target)",
>> },
>> + {
>> + .error_fmt = QERR_SOCKET_CONNECT_IN_PROGRESS,
>> + .desc = "Connection cannot be completed immediately",
>> + },
>> + {
>> + .error_fmt = QERR_SOCKET_CONNECT_FAILED,
>> + .desc = "Fail to connect socket",
>> + },
>> + {
>> + .error_fmt = QERR_SOCKET_LISTEN_FAILED,
>> + .desc = "Fail to listen socket",
>> + },
>> + {
>> + .error_fmt = QERR_SOCKET_BIND_FAILED,
>> + .desc = "Fail to bind socket",
>> + },
>> + {
>> + .error_fmt = QERR_SOCKET_CREATE_FAILED,
>> + .desc = "Fail to create socket",
>> + },
>> {}
>> };
>>
>> diff --git a/qerror.h b/qerror.h
>> index 5c23c1f..4cbba48 100644
>> --- a/qerror.h
>> +++ b/qerror.h
>> @@ -248,4 +248,19 @@ QError *qobject_to_qerror(const QObject *obj);
>> #define QERR_VNC_SERVER_FAILED \
>> "{ 'class': 'VNCServerFailed', 'data': { 'target': %s } }"
>>
>> +#define QERR_SOCKET_CONNECT_IN_PROGRESS \
>> + "{ 'class': 'SockConnectInprogress', 'data': {} }"
>> +
>> +#define QERR_SOCKET_CONNECT_FAILED \
>> + "{ 'class': 'SockConnectFailed', 'data': {} }"
>> +
>> +#define QERR_SOCKET_LISTEN_FAILED \
>> + "{ 'class': 'SockListenFailed', 'data': {} }"
>> +
>> +#define QERR_SOCKET_BIND_FAILED \
>> + "{ 'class': 'SockBindFailed', 'data': {} }"
>> +
>> +#define QERR_SOCKET_CREATE_FAILED \
>> + "{ 'class': 'SockCreateFailed', 'data': {} }"
>
> For the FAILED error we will probably need more data , how about adding a
> string
> that can contain the strerror string ?
This was nack-ed in the past, and the numeric errno values are not
portable. However, as a follow up we could add a QAPI-specific enum
(QEMU_ERRNO_EACCES, QEMU_ERRNO_ECONNREFUSED, etc.) and convert errno
values to it.