root / qerror.h @ 7296abac
History | View | Annotate | Download (2.9 kB)
1 | 9f9daf9a | Luiz Capitulino | /*
|
---|---|---|---|
2 | 9f9daf9a | Luiz Capitulino | * QError header file.
|
3 | 9f9daf9a | Luiz Capitulino | *
|
4 | 9f9daf9a | Luiz Capitulino | * Copyright (C) 2009 Red Hat Inc.
|
5 | 9f9daf9a | Luiz Capitulino | *
|
6 | 9f9daf9a | Luiz Capitulino | * Authors:
|
7 | 9f9daf9a | Luiz Capitulino | * Luiz Capitulino <lcapitulino@redhat.com>
|
8 | 9f9daf9a | Luiz Capitulino | *
|
9 | 9f9daf9a | Luiz Capitulino | * This work is licensed under the terms of the GNU LGPL, version 2.1 or later.
|
10 | 9f9daf9a | Luiz Capitulino | * See the COPYING.LIB file in the top-level directory.
|
11 | 9f9daf9a | Luiz Capitulino | */
|
12 | 9f9daf9a | Luiz Capitulino | #ifndef QERROR_H
|
13 | 9f9daf9a | Luiz Capitulino | #define QERROR_H
|
14 | 9f9daf9a | Luiz Capitulino | |
15 | 9f9daf9a | Luiz Capitulino | #include "qdict.h" |
16 | 77e595e7 | Markus Armbruster | #include "qstring.h" |
17 | 9f9daf9a | Luiz Capitulino | #include <stdarg.h> |
18 | 9f9daf9a | Luiz Capitulino | |
19 | 9f9daf9a | Luiz Capitulino | typedef struct QErrorStringTable { |
20 | 9f9daf9a | Luiz Capitulino | const char *desc; |
21 | 9f9daf9a | Luiz Capitulino | const char *error_fmt; |
22 | 9f9daf9a | Luiz Capitulino | } QErrorStringTable; |
23 | 9f9daf9a | Luiz Capitulino | |
24 | 9f9daf9a | Luiz Capitulino | typedef struct QError { |
25 | 9f9daf9a | Luiz Capitulino | QObject_HEAD; |
26 | 9f9daf9a | Luiz Capitulino | QDict *error; |
27 | 9f9daf9a | Luiz Capitulino | int linenr;
|
28 | 9f9daf9a | Luiz Capitulino | const char *file; |
29 | 9f9daf9a | Luiz Capitulino | const char *func; |
30 | 9f9daf9a | Luiz Capitulino | const QErrorStringTable *entry;
|
31 | 9f9daf9a | Luiz Capitulino | } QError; |
32 | 9f9daf9a | Luiz Capitulino | |
33 | 9f9daf9a | Luiz Capitulino | QError *qerror_new(void);
|
34 | 9f9daf9a | Luiz Capitulino | QError *qerror_from_info(const char *file, int linenr, const char *func, |
35 | 9f9daf9a | Luiz Capitulino | const char *fmt, va_list *va); |
36 | 77e595e7 | Markus Armbruster | QString *qerror_human(const QError *qerror);
|
37 | 9f9daf9a | Luiz Capitulino | void qerror_print(const QError *qerror); |
38 | 9f9daf9a | Luiz Capitulino | QError *qobject_to_qerror(const QObject *obj);
|
39 | 9f9daf9a | Luiz Capitulino | |
40 | 9f9daf9a | Luiz Capitulino | /*
|
41 | 9f9daf9a | Luiz Capitulino | * QError class list
|
42 | 9f9daf9a | Luiz Capitulino | */
|
43 | 4b9d4683 | Luiz Capitulino | #define QERR_COMMAND_NOT_FOUND \
|
44 | e16a1812 | Markus Armbruster | "{ 'class': 'CommandNotFound', 'data': { 'name': %s } }"
|
45 | 4b9d4683 | Luiz Capitulino | |
46 | 0df37c41 | Luiz Capitulino | #define QERR_DEVICE_ENCRYPTED \
|
47 | e16a1812 | Markus Armbruster | "{ 'class': 'DeviceEncrypted', 'data': { 'device': %s } }"
|
48 | 9f9daf9a | Luiz Capitulino | |
49 | b0868380 | Markus Armbruster | #define QERR_DEVICE_LOCKED \
|
50 | b0868380 | Markus Armbruster | "{ 'class': 'DeviceLocked', 'data': { 'device': %s } }"
|
51 | b0868380 | Markus Armbruster | |
52 | 055f6122 | Luiz Capitulino | #define QERR_DEVICE_NOT_ACTIVE \
|
53 | e16a1812 | Markus Armbruster | "{ 'class': 'DeviceNotActive', 'data': { 'device': %s } }"
|
54 | e16a1812 | Markus Armbruster | |
55 | e16a1812 | Markus Armbruster | #define QERR_DEVICE_NOT_FOUND \
|
56 | e16a1812 | Markus Armbruster | "{ 'class': 'DeviceNotFound', 'data': { 'device': %s } }"
|
57 | 055f6122 | Luiz Capitulino | |
58 | 5cfe0264 | Markus Armbruster | #define QERR_DEVICE_NOT_REMOVABLE \
|
59 | 5cfe0264 | Markus Armbruster | "{ 'class': 'DeviceNotRemovable', 'data': { 'device': %s } }"
|
60 | 5cfe0264 | Markus Armbruster | |
61 | c7c338c4 | Markus Armbruster | #define QERR_FD_NOT_FOUND \
|
62 | bd9d3064 | Markus Armbruster | "{ 'class': 'FdNotFound', 'data': { 'name': %s } }"
|
63 | c7c338c4 | Markus Armbruster | |
64 | 41471a23 | Markus Armbruster | #define QERR_FD_NOT_SUPPLIED \
|
65 | bd9d3064 | Markus Armbruster | "{ 'class': 'FdNotSupplied', 'data': {} }"
|
66 | 41471a23 | Markus Armbruster | |
67 | 3da2c808 | Markus Armbruster | #define QERR_OPEN_FILE_FAILED \
|
68 | 3da2c808 | Markus Armbruster | "{ 'class': 'OpenFileFailed', 'data': { 'filename': %s } }"
|
69 | 3da2c808 | Markus Armbruster | |
70 | 17901e75 | Markus Armbruster | #define QERR_INVALID_BLOCK_FORMAT \
|
71 | 17901e75 | Markus Armbruster | "{ 'class': 'InvalidBlockFormat', 'data': { 'name': %s } }"
|
72 | 17901e75 | Markus Armbruster | |
73 | 7a046f5f | Markus Armbruster | #define QERR_INVALID_PARAMETER \
|
74 | bd9d3064 | Markus Armbruster | "{ 'class': 'InvalidParameter', 'data': { 'name': %s } }"
|
75 | 7a046f5f | Markus Armbruster | |
76 | 4b9d4683 | Luiz Capitulino | #define QERR_INVALID_PARAMETER_TYPE \
|
77 | e16a1812 | Markus Armbruster | "{ 'class': 'InvalidParameterType', 'data': { 'name': %s,'expected': %s } }"
|
78 | 4b9d4683 | Luiz Capitulino | |
79 | f6d855c5 | Luiz Capitulino | #define QERR_INVALID_PASSWORD \
|
80 | e16a1812 | Markus Armbruster | "{ 'class': 'InvalidPassword', 'data': {} }"
|
81 | e16a1812 | Markus Armbruster | |
82 | e16a1812 | Markus Armbruster | #define QERR_JSON_PARSING \
|
83 | e16a1812 | Markus Armbruster | "{ 'class': 'JSONParsing', 'data': {} }"
|
84 | f6d855c5 | Luiz Capitulino | |
85 | 82a60711 | Luiz Capitulino | #define QERR_KVM_MISSING_CAP \
|
86 | e16a1812 | Markus Armbruster | "{ 'class': 'KVMMissingCap', 'data': { 'capability': %s, 'feature': %s } }"
|
87 | 82a60711 | Luiz Capitulino | |
88 | 4b9d4683 | Luiz Capitulino | #define QERR_MISSING_PARAMETER \
|
89 | e16a1812 | Markus Armbruster | "{ 'class': 'MissingParameter', 'data': { 'name': %s } }"
|
90 | 4b9d4683 | Luiz Capitulino | |
91 | 4b9d4683 | Luiz Capitulino | #define QERR_QMP_BAD_INPUT_OBJECT \
|
92 | e16a1812 | Markus Armbruster | "{ 'class': 'QMPBadInputObject', 'data': { 'expected': %s } }"
|
93 | 4b9d4683 | Luiz Capitulino | |
94 | 7a84cb23 | Markus Armbruster | #define QERR_SET_PASSWD_FAILED \
|
95 | 7a84cb23 | Markus Armbruster | "{ 'class': 'SetPasswdFailed', 'data': {} }"
|
96 | 7a84cb23 | Markus Armbruster | |
97 | 4b9d4683 | Luiz Capitulino | #define QERR_UNDEFINED_ERROR \
|
98 | e16a1812 | Markus Armbruster | "{ 'class': 'UndefinedError', 'data': {} }"
|
99 | 4b9d4683 | Luiz Capitulino | |
100 | a488be27 | Markus Armbruster | #define QERR_TOO_MANY_FILES \
|
101 | bd9d3064 | Markus Armbruster | "{ 'class': 'TooManyFiles', 'data': {} }"
|
102 | a488be27 | Markus Armbruster | |
103 | a6906e31 | Markus Armbruster | #define QERR_VNC_SERVER_FAILED \
|
104 | a6906e31 | Markus Armbruster | "{ 'class': 'VNCServerFailed', 'data': { 'target': %s } }"
|
105 | a6906e31 | Markus Armbruster | |
106 | 9f9daf9a | Luiz Capitulino | #endif /* QERROR_H */ |