Annotation of /trunk/hal/patches/hal-0.5.10-add-udi-and-some-more-checks-to-libhal.patch
Parent Directory | Revision Log
Revision 597 -
(hide annotations)
(download)
Mon May 19 19:05:19 2008 UTC (16 years ago) by niro
File size: 21420 byte(s)
Mon May 19 19:05:19 2008 UTC (16 years ago) by niro
File size: 21420 byte(s)
-gentoo patches
1 | niro | 597 | From d96d1077179d6af09c2ad94b8757b5ed299b5383 Mon Sep 17 00:00:00 2001 |
2 | From: Danny Kukawka <danny.kukawka@web.de> | ||
3 | Date: Thu, 6 Dec 2007 10:25:07 +0100 | ||
4 | Subject: [PATCH] add udi and some more checks to libhal | ||
5 | |||
6 | This adds: | ||
7 | - a minimal check if a given UDI is valid (checks if the UDI starts | ||
8 | with '/org/freedesktop/Hal/devices/'). This should prevent possible | ||
9 | (application) crashes if a invalid UDI is send to HAL and reduce | ||
10 | unneeded dbus calls. | ||
11 | - some more parameter checks (for LibHalChangeSet, keys ...) | ||
12 | --- | ||
13 | libhal/libhal.c | 152 ++++++++++++++++++++++++++++++++++++++---------------- | ||
14 | 1 files changed, 107 insertions(+), 45 deletions(-) | ||
15 | |||
16 | diff --git a/libhal/libhal.c b/libhal/libhal.c | ||
17 | index 1e66bf4..3f6a9a0 100644 | ||
18 | --- a/libhal/libhal.c | ||
19 | +++ b/libhal/libhal.c | ||
20 | @@ -74,6 +74,30 @@ | ||
21 | } \ | ||
22 | } while(0) | ||
23 | |||
24 | +/** | ||
25 | + * LIBHAL_CHECK_UDI_VALID: | ||
26 | + * @_udi_: the UID to check for | ||
27 | + * @_ret_: what to use for return value if udi is invalid | ||
28 | + * | ||
29 | + * Handy macro for checking whether a UID is valid and not NULL. | ||
30 | + */ | ||
31 | +#define LIBHAL_CHECK_UDI_VALID(_udi_,_ret_) \ | ||
32 | + do { \ | ||
33 | + if (_udi_ == NULL) { \ | ||
34 | + fprintf (stderr, \ | ||
35 | + "%s %d : invalid udi %s. udi is NULL.\n", \ | ||
36 | + __FILE__, __LINE__, _udi_); \ | ||
37 | + return _ret_; \ | ||
38 | + } else { \ | ||
39 | + if(strncmp(_udi_, "/org/freedesktop/Hal/devices/", 29) != 0) { \ | ||
40 | + fprintf (stderr, \ | ||
41 | + "%s %d : invalid udi: %s doesn't start" \ | ||
42 | + "with '/org/freedesktop/Hal/devices/'. \n", \ | ||
43 | + __FILE__, __LINE__, _udi_); \ | ||
44 | + return _ret_; \ | ||
45 | + } \ | ||
46 | + } \ | ||
47 | + } while(0) | ||
48 | |||
49 | static char **libhal_get_string_array_from_iter (DBusMessageIter *iter, int *num_elements); | ||
50 | |||
51 | @@ -319,6 +343,10 @@ static dbus_bool_t | ||
52 | libhal_property_fill_value_from_variant (LibHalProperty *p, DBusMessageIter *var_iter) | ||
53 | { | ||
54 | DBusMessageIter iter_array; | ||
55 | + | ||
56 | + LIBHAL_CHECK_PARAM_VALID(p, "LibHalProperty *p", FALSE); | ||
57 | + LIBHAL_CHECK_PARAM_VALID(var_iter, "DBusMessageIter *var_iter", FALSE); | ||
58 | + | ||
59 | switch (p->type) { | ||
60 | case DBUS_TYPE_ARRAY: | ||
61 | if (dbus_message_iter_get_element_type (var_iter) != DBUS_TYPE_STRING) | ||
62 | @@ -496,7 +524,7 @@ libhal_device_get_all_properties (LibHalContext *ctx, const char *udi, DBusError | ||
63 | DBusError _error; | ||
64 | |||
65 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, NULL); | ||
66 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", NULL); | ||
67 | + LIBHAL_CHECK_UDI_VALID(udi, NULL); | ||
68 | |||
69 | message = dbus_message_new_method_call ("org.freedesktop.Hal", udi, | ||
70 | "org.freedesktop.Hal.Device", | ||
71 | @@ -1282,7 +1310,7 @@ libhal_device_get_property_type (LibHalContext *ctx, const char *udi, const char | ||
72 | DBusError _error; | ||
73 | |||
74 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, LIBHAL_PROPERTY_TYPE_INVALID); /* or return NULL? */ | ||
75 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", LIBHAL_PROPERTY_TYPE_INVALID); | ||
76 | + LIBHAL_CHECK_UDI_VALID(udi, LIBHAL_PROPERTY_TYPE_INVALID); | ||
77 | LIBHAL_CHECK_PARAM_VALID(key, "*key", LIBHAL_PROPERTY_TYPE_INVALID); | ||
78 | |||
79 | message = dbus_message_new_method_call ("org.freedesktop.Hal", udi, | ||
80 | @@ -1344,7 +1372,7 @@ libhal_device_get_property_strlist (LibHalContext *ctx, const char *udi, const c | ||
81 | DBusError _error; | ||
82 | |||
83 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, NULL); | ||
84 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", NULL); | ||
85 | + LIBHAL_CHECK_UDI_VALID(udi, NULL); | ||
86 | LIBHAL_CHECK_PARAM_VALID(key, "*key", NULL); | ||
87 | |||
88 | message = dbus_message_new_method_call ("org.freedesktop.Hal", udi, | ||
89 | @@ -1417,7 +1445,7 @@ libhal_device_get_property_string (LibHalContext *ctx, | ||
90 | DBusError _error; | ||
91 | |||
92 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, NULL); | ||
93 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", NULL); | ||
94 | + LIBHAL_CHECK_UDI_VALID(udi, NULL); | ||
95 | LIBHAL_CHECK_PARAM_VALID(key, "*key", NULL); | ||
96 | |||
97 | message = dbus_message_new_method_call ("org.freedesktop.Hal", udi, | ||
98 | @@ -1495,7 +1523,7 @@ libhal_device_get_property_int (LibHalContext *ctx, | ||
99 | DBusError _error; | ||
100 | |||
101 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, -1); | ||
102 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", -1); | ||
103 | + LIBHAL_CHECK_UDI_VALID(udi, -1); | ||
104 | LIBHAL_CHECK_PARAM_VALID(key, "*key", -1); | ||
105 | |||
106 | message = dbus_message_new_method_call ("org.freedesktop.Hal", udi, | ||
107 | @@ -1568,7 +1596,7 @@ libhal_device_get_property_uint64 (LibHalContext *ctx, | ||
108 | DBusError _error; | ||
109 | |||
110 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, -1); | ||
111 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", -1); | ||
112 | + LIBHAL_CHECK_UDI_VALID(udi, -1); | ||
113 | LIBHAL_CHECK_PARAM_VALID(key, "*key", -1); | ||
114 | |||
115 | message = dbus_message_new_method_call ("org.freedesktop.Hal", udi, | ||
116 | @@ -1640,7 +1668,7 @@ libhal_device_get_property_double (LibHalContext *ctx, | ||
117 | DBusError _error; | ||
118 | |||
119 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, -1.0); | ||
120 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", -1.0); | ||
121 | + LIBHAL_CHECK_UDI_VALID(udi, -1.0); | ||
122 | LIBHAL_CHECK_PARAM_VALID(key, "*key", -1.0); | ||
123 | |||
124 | message = dbus_message_new_method_call ("org.freedesktop.Hal", udi, | ||
125 | @@ -1712,7 +1740,7 @@ libhal_device_get_property_bool (LibHalContext *ctx, | ||
126 | DBusError _error; | ||
127 | |||
128 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
129 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
130 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
131 | LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE); | ||
132 | |||
133 | message = dbus_message_new_method_call ("org.freedesktop.Hal", udi, | ||
134 | @@ -1782,7 +1810,7 @@ libhal_device_set_property_helper (LibHalContext *ctx, | ||
135 | char *method_name = NULL; | ||
136 | |||
137 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
138 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
139 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
140 | LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE); | ||
141 | |||
142 | /** @todo sanity check incoming params */ | ||
143 | @@ -1880,8 +1908,9 @@ libhal_device_set_property_string (LibHalContext *ctx, | ||
144 | DBusError *error) | ||
145 | { | ||
146 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
147 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
148 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
149 | LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE); | ||
150 | + LIBHAL_CHECK_PARAM_VALID(value, "*value", FALSE); | ||
151 | |||
152 | return libhal_device_set_property_helper (ctx, udi, key, | ||
153 | DBUS_TYPE_STRING, | ||
154 | @@ -1906,7 +1935,7 @@ libhal_device_set_property_int (LibHalContext *ctx, const char *udi, | ||
155 | const char *key, dbus_int32_t value, DBusError *error) | ||
156 | { | ||
157 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
158 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
159 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
160 | LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE); | ||
161 | |||
162 | return libhal_device_set_property_helper (ctx, udi, key, | ||
163 | @@ -1932,7 +1961,7 @@ libhal_device_set_property_uint64 (LibHalContext *ctx, const char *udi, | ||
164 | const char *key, dbus_uint64_t value, DBusError *error) | ||
165 | { | ||
166 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
167 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
168 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
169 | LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE); | ||
170 | |||
171 | return libhal_device_set_property_helper (ctx, udi, key, | ||
172 | @@ -1958,7 +1987,7 @@ libhal_device_set_property_double (LibHalContext *ctx, const char *udi, | ||
173 | const char *key, double value, DBusError *error) | ||
174 | { | ||
175 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
176 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
177 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
178 | LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE); | ||
179 | |||
180 | return libhal_device_set_property_helper (ctx, udi, key, | ||
181 | @@ -1984,7 +2013,7 @@ libhal_device_set_property_bool (LibHalContext *ctx, const char *udi, | ||
182 | const char *key, dbus_bool_t value, DBusError *error) | ||
183 | { | ||
184 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
185 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
186 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
187 | LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE); | ||
188 | |||
189 | return libhal_device_set_property_helper (ctx, udi, key, | ||
190 | @@ -2010,7 +2039,7 @@ libhal_device_remove_property (LibHalContext *ctx, | ||
191 | const char *udi, const char *key, DBusError *error) | ||
192 | { | ||
193 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
194 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
195 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
196 | LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE); | ||
197 | |||
198 | return libhal_device_set_property_helper (ctx, udi, key, DBUS_TYPE_INVALID, | ||
199 | @@ -2043,8 +2072,9 @@ libhal_device_property_strlist_append (LibHalContext *ctx, | ||
200 | DBusMessageIter iter; | ||
201 | |||
202 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
203 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
204 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
205 | LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE); | ||
206 | + LIBHAL_CHECK_PARAM_VALID(value, "*value", FALSE); | ||
207 | |||
208 | message = dbus_message_new_method_call ("org.freedesktop.Hal", udi, | ||
209 | "org.freedesktop.Hal.Device", | ||
210 | @@ -2098,8 +2128,9 @@ libhal_device_property_strlist_prepend (LibHalContext *ctx, | ||
211 | DBusMessageIter iter; | ||
212 | |||
213 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
214 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
215 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
216 | LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE); | ||
217 | + LIBHAL_CHECK_PARAM_VALID(value, "*value", FALSE); | ||
218 | |||
219 | message = dbus_message_new_method_call ("org.freedesktop.Hal", udi, | ||
220 | "org.freedesktop.Hal.Device", | ||
221 | @@ -2153,7 +2184,7 @@ libhal_device_property_strlist_remove_index (LibHalContext *ctx, | ||
222 | DBusMessageIter iter; | ||
223 | |||
224 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
225 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
226 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
227 | LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE); | ||
228 | |||
229 | message = dbus_message_new_method_call ("org.freedesktop.Hal", udi, | ||
230 | @@ -2207,8 +2238,9 @@ libhal_device_property_strlist_remove (LibHalContext *ctx, | ||
231 | DBusMessageIter iter; | ||
232 | |||
233 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
234 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
235 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
236 | LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE); | ||
237 | + LIBHAL_CHECK_PARAM_VALID(value, "*value", FALSE); | ||
238 | |||
239 | message = dbus_message_new_method_call ("org.freedesktop.Hal", udi, | ||
240 | "org.freedesktop.Hal.Device", | ||
241 | @@ -2261,7 +2293,7 @@ libhal_device_lock (LibHalContext *ctx, | ||
242 | DBusMessage *reply; | ||
243 | |||
244 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
245 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
246 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
247 | |||
248 | if (reason_why_locked != NULL) | ||
249 | *reason_why_locked = NULL; | ||
250 | @@ -2331,7 +2363,7 @@ libhal_device_unlock (LibHalContext *ctx, | ||
251 | DBusMessage *reply; | ||
252 | |||
253 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
254 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
255 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
256 | |||
257 | message = dbus_message_new_method_call ("org.freedesktop.Hal", | ||
258 | udi, | ||
259 | @@ -2468,8 +2500,8 @@ libhal_device_commit_to_gdl (LibHalContext *ctx, | ||
260 | DBusMessageIter iter; | ||
261 | |||
262 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
263 | - LIBHAL_CHECK_PARAM_VALID(temp_udi, "*temp_udi", FALSE); | ||
264 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
265 | + LIBHAL_CHECK_UDI_VALID(temp_udi, FALSE); | ||
266 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
267 | |||
268 | message = dbus_message_new_method_call ("org.freedesktop.Hal", | ||
269 | "/org/freedesktop/Hal/Manager", | ||
270 | @@ -2527,7 +2559,7 @@ libhal_remove_device (LibHalContext *ctx, const char *udi, DBusError *error) | ||
271 | DBusMessageIter iter; | ||
272 | |||
273 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
274 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
275 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
276 | |||
277 | message = dbus_message_new_method_call ("org.freedesktop.Hal", | ||
278 | "/org/freedesktop/Hal/Manager", | ||
279 | @@ -2581,7 +2613,7 @@ libhal_device_exists (LibHalContext *ctx, const char *udi, DBusError *error) | ||
280 | DBusError _error; | ||
281 | |||
282 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
283 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
284 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
285 | |||
286 | message = dbus_message_new_method_call ("org.freedesktop.Hal", | ||
287 | "/org/freedesktop/Hal/Manager", | ||
288 | @@ -2653,7 +2685,7 @@ libhal_device_property_exists (LibHalContext *ctx, | ||
289 | DBusError _error; | ||
290 | |||
291 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
292 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
293 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
294 | LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE); | ||
295 | |||
296 | message = dbus_message_new_method_call ("org.freedesktop.Hal", udi, | ||
297 | @@ -2722,8 +2754,8 @@ libhal_merge_properties (LibHalContext *ctx, | ||
298 | DBusMessageIter iter; | ||
299 | |||
300 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
301 | - LIBHAL_CHECK_PARAM_VALID(target_udi, "*target_udi", FALSE); | ||
302 | - LIBHAL_CHECK_PARAM_VALID(source_udi, "*sourcE_udi", FALSE); | ||
303 | + LIBHAL_CHECK_UDI_VALID(target_udi, FALSE); | ||
304 | + LIBHAL_CHECK_UDI_VALID(source_udi, FALSE); | ||
305 | |||
306 | message = dbus_message_new_method_call ("org.freedesktop.Hal", | ||
307 | "/org/freedesktop/Hal/Manager", | ||
308 | @@ -2791,8 +2823,8 @@ libhal_device_matches (LibHalContext *ctx, | ||
309 | DBusError _error; | ||
310 | |||
311 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
312 | - LIBHAL_CHECK_PARAM_VALID(udi1, "*udi1", FALSE); | ||
313 | - LIBHAL_CHECK_PARAM_VALID(udi2, "*udi2", FALSE); | ||
314 | + LIBHAL_CHECK_UDI_VALID(udi1, FALSE); | ||
315 | + LIBHAL_CHECK_UDI_VALID(udi2, FALSE); | ||
316 | LIBHAL_CHECK_PARAM_VALID(property_namespace, "*property_namespace", FALSE); | ||
317 | |||
318 | message = dbus_message_new_method_call ("org.freedesktop.Hal", | ||
319 | @@ -2863,7 +2895,7 @@ libhal_device_print (LibHalContext *ctx, const char *udi, DBusError *error) | ||
320 | LibHalPropertySetIterator i; | ||
321 | |||
322 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
323 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
324 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
325 | |||
326 | printf ("device_id = %s\n", udi); | ||
327 | |||
328 | @@ -2952,6 +2984,7 @@ libhal_manager_find_device_string_match (LibHalContext *ctx, | ||
329 | |||
330 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, NULL); | ||
331 | LIBHAL_CHECK_PARAM_VALID(key, "*key", NULL); | ||
332 | + LIBHAL_CHECK_PARAM_VALID(value, "*value", NULL); | ||
333 | |||
334 | message = dbus_message_new_method_call ("org.freedesktop.Hal", | ||
335 | "/org/freedesktop/Hal/Manager", | ||
336 | @@ -3021,7 +3054,7 @@ libhal_device_add_capability (LibHalContext *ctx, | ||
337 | DBusMessageIter iter; | ||
338 | |||
339 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
340 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
341 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
342 | LIBHAL_CHECK_PARAM_VALID(capability, "*capability", FALSE); | ||
343 | |||
344 | message = dbus_message_new_method_call ("org.freedesktop.Hal", udi, | ||
345 | @@ -3076,7 +3109,7 @@ libhal_device_query_capability (LibHalContext *ctx, const char *udi, const char | ||
346 | dbus_bool_t ret; | ||
347 | |||
348 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
349 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
350 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
351 | LIBHAL_CHECK_PARAM_VALID(capability, "*capability", FALSE); | ||
352 | |||
353 | ret = FALSE; | ||
354 | @@ -3211,7 +3244,7 @@ libhal_device_add_property_watch (LibHalContext *ctx, const char *udi, DBusError | ||
355 | char buf[512]; | ||
356 | |||
357 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
358 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
359 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
360 | |||
361 | snprintf (buf, 512, | ||
362 | "type='signal'," | ||
363 | @@ -3242,7 +3275,7 @@ libhal_device_remove_property_watch (LibHalContext *ctx, const char *udi, DBusEr | ||
364 | char buf[512]; | ||
365 | |||
366 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
367 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
368 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
369 | |||
370 | snprintf (buf, 512, | ||
371 | "type='signal'," | ||
372 | @@ -3685,7 +3718,7 @@ libhal_device_rescan (LibHalContext *ctx, const char *udi, DBusError *error) | ||
373 | dbus_bool_t result; | ||
374 | |||
375 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
376 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
377 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
378 | |||
379 | message = dbus_message_new_method_call ("org.freedesktop.Hal", udi, | ||
380 | "org.freedesktop.Hal.Device", | ||
381 | @@ -3745,7 +3778,7 @@ libhal_device_reprobe (LibHalContext *ctx, const char *udi, DBusError *error) | ||
382 | dbus_bool_t result; | ||
383 | |||
384 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
385 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
386 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
387 | |||
388 | message = dbus_message_new_method_call ("org.freedesktop.Hal", | ||
389 | udi, | ||
390 | @@ -3813,8 +3846,9 @@ dbus_bool_t libhal_device_emit_condition (LibHalContext *ctx, | ||
391 | dbus_bool_t result; | ||
392 | |||
393 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
394 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
395 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
396 | LIBHAL_CHECK_PARAM_VALID(condition_name, "*condition_name", FALSE); | ||
397 | + LIBHAL_CHECK_PARAM_VALID(condition_details, "*condition_details", FALSE); | ||
398 | |||
399 | message = dbus_message_new_method_call ("org.freedesktop.Hal", | ||
400 | udi, | ||
401 | @@ -3879,6 +3913,7 @@ addon_is_ready(LibHalContext *ctx, const char *identifier, | ||
402 | DBusMessage *reply; | ||
403 | |||
404 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
405 | + LIBHAL_CHECK_PARAM_VALID(identifier, "*identifier", FALSE); | ||
406 | |||
407 | if (singleton) { | ||
408 | message = dbus_message_new_method_call ("org.freedesktop.Hal", | ||
409 | @@ -3940,6 +3975,10 @@ libhal_device_addon_is_ready (LibHalContext *ctx, | ||
410 | const char *udi, | ||
411 | DBusError *error) | ||
412 | { | ||
413 | + | ||
414 | + LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
415 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
416 | + | ||
417 | return addon_is_ready (ctx, udi, FALSE, error); | ||
418 | } | ||
419 | |||
420 | @@ -3961,6 +4000,9 @@ libhal_device_singleton_addon_is_ready (LibHalContext *ctx, | ||
421 | const char *command_line, | ||
422 | DBusError *error) | ||
423 | { | ||
424 | + LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
425 | + LIBHAL_CHECK_PARAM_VALID(command_line, "*command_line", FALSE); | ||
426 | + | ||
427 | return addon_is_ready (ctx, command_line, TRUE, error); | ||
428 | } | ||
429 | |||
430 | @@ -3993,7 +4035,7 @@ libhal_device_claim_interface (LibHalContext *ctx, | ||
431 | dbus_bool_t result; | ||
432 | |||
433 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
434 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
435 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
436 | LIBHAL_CHECK_PARAM_VALID(interface_name, "*interface_name", FALSE); | ||
437 | |||
438 | message = dbus_message_new_method_call ("org.freedesktop.Hal", | ||
439 | @@ -4081,7 +4123,7 @@ libhal_device_new_changeset (const char *udi) | ||
440 | { | ||
441 | LibHalChangeSet *changeset; | ||
442 | |||
443 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", NULL); | ||
444 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
445 | |||
446 | changeset = calloc (1, sizeof (LibHalChangeSet)); | ||
447 | if (changeset == NULL) | ||
448 | @@ -4104,6 +4146,9 @@ out: | ||
449 | static void | ||
450 | libhal_changeset_append (LibHalChangeSet *changeset, LibHalChangeSetElement *elem) | ||
451 | { | ||
452 | + LIBHAL_CHECK_PARAM_VALID(changeset, "*changeset", (void) NULL ); | ||
453 | + LIBHAL_CHECK_PARAM_VALID(elem, "*elem", (void) NULL); | ||
454 | + | ||
455 | if (changeset->head == NULL) { | ||
456 | changeset->head = elem; | ||
457 | changeset->tail = elem; | ||
458 | @@ -4133,6 +4178,7 @@ libhal_changeset_set_property_string (LibHalChangeSet *changeset, const char *ke | ||
459 | { | ||
460 | LibHalChangeSetElement *elem; | ||
461 | |||
462 | + LIBHAL_CHECK_PARAM_VALID(changeset, "*changeset", FALSE); | ||
463 | LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE); | ||
464 | LIBHAL_CHECK_PARAM_VALID(value, "*value", FALSE); | ||
465 | |||
466 | @@ -4175,6 +4221,9 @@ libhal_changeset_set_property_int (LibHalChangeSet *changeset, const char *key, | ||
467 | { | ||
468 | LibHalChangeSetElement *elem; | ||
469 | |||
470 | + LIBHAL_CHECK_PARAM_VALID(changeset, "*changeset", FALSE); | ||
471 | + LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE); | ||
472 | + | ||
473 | elem = calloc (1, sizeof (LibHalChangeSetElement)); | ||
474 | if (elem == NULL) | ||
475 | goto out; | ||
476 | @@ -4208,6 +4257,9 @@ libhal_changeset_set_property_uint64 (LibHalChangeSet *changeset, const char *ke | ||
477 | { | ||
478 | LibHalChangeSetElement *elem; | ||
479 | |||
480 | + LIBHAL_CHECK_PARAM_VALID(changeset, "*changeset", FALSE); | ||
481 | + LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE); | ||
482 | + | ||
483 | elem = calloc (1, sizeof (LibHalChangeSetElement)); | ||
484 | if (elem == NULL) | ||
485 | goto out; | ||
486 | @@ -4241,6 +4293,9 @@ libhal_changeset_set_property_double (LibHalChangeSet *changeset, const char *ke | ||
487 | { | ||
488 | LibHalChangeSetElement *elem; | ||
489 | |||
490 | + LIBHAL_CHECK_PARAM_VALID(changeset, "*changeset", FALSE); | ||
491 | + LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE); | ||
492 | + | ||
493 | elem = calloc (1, sizeof (LibHalChangeSetElement)); | ||
494 | if (elem == NULL) | ||
495 | goto out; | ||
496 | @@ -4274,6 +4329,9 @@ libhal_changeset_set_property_bool (LibHalChangeSet *changeset, const char *key, | ||
497 | { | ||
498 | LibHalChangeSetElement *elem; | ||
499 | |||
500 | + LIBHAL_CHECK_PARAM_VALID(changeset, "*changeset", FALSE); | ||
501 | + LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE); | ||
502 | + | ||
503 | elem = calloc (1, sizeof (LibHalChangeSetElement)); | ||
504 | if (elem == NULL) | ||
505 | goto out; | ||
506 | @@ -4310,6 +4368,9 @@ libhal_changeset_set_property_strlist (LibHalChangeSet *changeset, const char *k | ||
507 | int len; | ||
508 | int i, j; | ||
509 | |||
510 | + LIBHAL_CHECK_PARAM_VALID(changeset, "*changeset", FALSE); | ||
511 | + LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE); | ||
512 | + | ||
513 | elem = calloc (1, sizeof (LibHalChangeSetElement)); | ||
514 | if (elem == NULL) | ||
515 | goto out; | ||
516 | @@ -4380,6 +4441,7 @@ libhal_device_commit_changeset (LibHalContext *ctx, LibHalChangeSet *changeset, | ||
517 | int i; | ||
518 | |||
519 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
520 | + LIBHAL_CHECK_UDI_VALID(changeset->udi, FALSE); | ||
521 | |||
522 | if (changeset->head == NULL) { | ||
523 | return TRUE; | ||
524 | @@ -4547,7 +4609,7 @@ libhal_device_acquire_interface_lock (LibHalContext *ctx, | ||
525 | DBusMessage *reply; | ||
526 | |||
527 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
528 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
529 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
530 | LIBHAL_CHECK_PARAM_VALID(interface, "*interface", FALSE); | ||
531 | |||
532 | message = dbus_message_new_method_call ("org.freedesktop.Hal", | ||
533 | @@ -4605,7 +4667,7 @@ dbus_bool_t libhal_device_release_interface_lock (LibHalContext *ctx, | ||
534 | DBusMessage *reply; | ||
535 | |||
536 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, FALSE); | ||
537 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", FALSE); | ||
538 | + LIBHAL_CHECK_UDI_VALID(udi, FALSE); | ||
539 | LIBHAL_CHECK_PARAM_VALID(interface, "*interface", FALSE); | ||
540 | |||
541 | message = dbus_message_new_method_call ("org.freedesktop.Hal", | ||
542 | @@ -4780,7 +4842,7 @@ libhal_device_is_caller_locked_out (LibHalContext *ctx, | ||
543 | dbus_bool_t value; | ||
544 | |||
545 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, TRUE); | ||
546 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", TRUE); | ||
547 | + LIBHAL_CHECK_UDI_VALID(udi, TRUE); | ||
548 | LIBHAL_CHECK_PARAM_VALID(interface, "*interface", TRUE); | ||
549 | LIBHAL_CHECK_PARAM_VALID(caller, "*caller", TRUE); | ||
550 | |||
551 | @@ -4922,7 +4984,7 @@ libhal_device_is_locked_by_others (LibHalContext *ctx, | ||
552 | dbus_bool_t value; | ||
553 | |||
554 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, TRUE); | ||
555 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", TRUE); | ||
556 | + LIBHAL_CHECK_UDI_VALID(udi, TRUE); | ||
557 | LIBHAL_CHECK_PARAM_VALID(interface, "*interface", TRUE); | ||
558 | |||
559 | message = dbus_message_new_method_call ("org.freedesktop.Hal", | ||
560 | @@ -4998,7 +5060,7 @@ libhal_device_is_caller_privileged (LibHalContext *ctx, | ||
561 | char *value; | ||
562 | |||
563 | LIBHAL_CHECK_LIBHALCONTEXT(ctx, NULL); | ||
564 | - LIBHAL_CHECK_PARAM_VALID(udi, "*udi", NULL); | ||
565 | + LIBHAL_CHECK_UDI_VALID(udi, NULL); | ||
566 | LIBHAL_CHECK_PARAM_VALID(action, "*action", NULL); | ||
567 | LIBHAL_CHECK_PARAM_VALID(caller, "*caller", NULL); | ||
568 | |||
569 | -- | ||
570 | 1.5.3.7 | ||
571 |