summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Olbrich <m.olbrich@pengutronix.de>2010-05-29 00:01:30 +0200
committerMichael Olbrich <m.olbrich@pengutronix.de>2010-06-03 17:08:11 +0200
commit8bcf87ce358e87600151a0053db8c81e167c5af3 (patch)
treeba842bfc0e84f403ae19071707942d21d67ea3e6
parent5d8c1f51b919625c5fb5ab892d29b4510d888ed2 (diff)
downloadjson-dbus-bridge-8bcf87ce358e87600151a0053db8c81e167c5af3.tar.gz
json-dbus-bridge-8bcf87ce358e87600151a0053db8c81e167c5af3.tar.xz
[src] cleanup
Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-rw-r--r--src/bridge.c31
-rw-r--r--src/bridge_request.c18
2 files changed, 27 insertions, 22 deletions
diff --git a/src/bridge.c b/src/bridge.c
index 9d5661a..f12b9c1 100644
--- a/src/bridge.c
+++ b/src/bridge.c
@@ -48,7 +48,7 @@ void _bridge_handle_dbus_watch(evutil_socket_t s, short flags, void *data)
{
DBusConnection *connection = dbus_bus_get(DBUS_BUS_SESSION, 0);
DBusWatch *watch = (DBusWatch*)data;
- int f = 0;
+ unsigned int f = 0;
(void)s;
@@ -56,7 +56,8 @@ void _bridge_handle_dbus_watch(evutil_socket_t s, short flags, void *data)
f |= DBUS_WATCH_READABLE;
if (flags & EV_WRITE)
f |= DBUS_WATCH_WRITABLE;
- dbus_watch_handle(watch, f);
+ if (!dbus_watch_handle(watch, f))
+ return;
while (dbus_connection_dispatch(connection) == DBUS_DISPATCH_DATA_REMAINS);
}
@@ -70,7 +71,8 @@ void _bridge_handle_dbus_timeout(evutil_socket_t s, short flags, void *data)
if (!(flags & EV_TIMEOUT))
return;
- dbus_timeout_handle(timeout);
+ if (!dbus_timeout_handle(timeout))
+ return;
while (dbus_connection_dispatch(connection) == DBUS_DISPATCH_DATA_REMAINS);
}
@@ -110,7 +112,6 @@ void _bridge_remove_watch(DBusWatch *watch, void *data)
struct event *ev = (struct event*)dbus_watch_get_data(watch);
(void)data;
- event_del(ev);
event_free(ev);
return;
}
@@ -149,7 +150,6 @@ void _bridge_remove_timeout(DBusTimeout *timeout, void *data)
struct event *ev = (struct event*)dbus_timeout_get_data(timeout);
(void)data;
- event_del(ev);
event_free(ev);
return;
}
@@ -190,6 +190,7 @@ void bridge_handle_cgi(evutil_socket_t s, short flags, void *data)
int bridge_init(bridge_t *self, const char *socket_path)
{
DBusError dbus_error;
+ struct event *ev;
if (FCGX_Init() != 0) {
fprintf(stdout, "FCGX_Init failed.");
@@ -218,22 +219,24 @@ int bridge_init(bridge_t *self, const char *socket_path)
self->event_base = event_base_new();
- struct event * ev = event_new(self->event_base, self->socket, EV_READ|EV_PERSIST, bridge_handle_cgi, self);
+ ev = event_new(self->event_base, self->socket, EV_READ|EV_PERSIST, bridge_handle_cgi, self);
event_add(ev, 0);
- dbus_connection_set_watch_functions(self->dbus_connection,
- _bridge_add_watch, _bridge_remove_watch, _bridge_toggle_watch,
- self, 0);
+ if (!dbus_connection_set_watch_functions(self->dbus_connection,
+ _bridge_add_watch, _bridge_remove_watch,
+ _bridge_toggle_watch, self, 0))
+ return EINVAL;
- dbus_connection_set_timeout_functions(self->dbus_connection,
- _bridge_add_timeout, _bridge_remove_timeout, _bridge_toggle_timeout,
- self, 0);
+ if (!dbus_connection_set_timeout_functions(self->dbus_connection,
+ _bridge_add_timeout, _bridge_remove_timeout,
+ _bridge_toggle_timeout, self, 0))
+ return EINVAL;
dbus_connection_set_dispatch_status_function(self->dbus_connection,
- _bridge_dispatch_status, self, 0);
+ _bridge_dispatch_status, self, 0);
dbus_connection_set_wakeup_main_function(self->dbus_connection,
- _bridge_wkaeup_main, self, 0);
+ _bridge_wkaeup_main, self, 0);
return 0;
}
diff --git a/src/bridge_request.c b/src/bridge_request.c
index b52f669..72c38bd 100644
--- a/src/bridge_request.c
+++ b/src/bridge_request.c
@@ -71,7 +71,7 @@ int bridge_request_getinput(bridge_request_t *self, char **data)
if (len <= 0)
return EINVAL;
- if ((buffer = malloc(len+1)) == 0) {
+ if ((buffer = malloc((size_t)len+1)) == 0) {
FCGX_FPrintF(self->request.err, "out of memory!");
return ENOMEM;
}
@@ -247,18 +247,20 @@ int bridge_request_dbus_params_dict(bridge_request_t *self,
"string dict key type expected.");
return EINVAL;
}
- dbus_signature_iter_next(&sigArgs);
-
- if (json_object_get_type(element) != json_type_object) {
+ if (!dbus_signature_iter_next(&sigArgs) ||
+ (json_object_get_type(element) != json_type_object)) {
bridge_request_error(self,
"object expected.");
return EINVAL;
}
- json_object_object_foreach(element, key, tmp) {
+#ifndef S_SPLINT_S
+ json_object_object_foreach(element, key, tmp)
+#endif
+ {
DBusSignatureIter tmpSigArgs = sigArgs;
dbus_message_iter_open_container(it, DBUS_TYPE_DICT_ENTRY, 0,&args);
dbus_message_iter_append_basic(&args, DBUS_TYPE_STRING, &key);
-
+
ret = bridge_request_dbus_params_element(self,
tmp, &tmpSigArgs, &args);
if (ret != 0)
@@ -461,7 +463,7 @@ int bridge_request_json_params_parse(bridge_request_t *self, DBusMessageIter *it
case DBUS_TYPE_INT16: {
int16_t value = 0;
dbus_message_iter_get_basic(it, &value);
- *result = json_object_new_int(value);
+ *result = json_object_new_int((int)value);
break;
}
case DBUS_TYPE_UINT16:
@@ -633,7 +635,7 @@ int bridge_request_call_dbus_json(bridge_request_t *self, DBusMessage *in_dbus)
if (dbus_message_get_type(in_dbus) == DBUS_MESSAGE_TYPE_ERROR) {
dbus_error_init(&err);
- dbus_set_error_from_message (&err, in_dbus);
+ (void)dbus_set_error_from_message(&err, in_dbus);
bridge_request_error(self, err.message ? err.message : err.name);
dbus_error_free(&err);
ret = EINVAL;