All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 3/4] Add: set_online and post_online methods to isimodem driver
       [not found] <1274885889-11479-2-git-send-email-Pekka.Pessi@nokia.com>
@ 2010-05-26 14:58 ` Pekka Pessi
  2010-05-27  2:08   ` Denis Kenzior
  0 siblings, 1 reply; 15+ messages in thread
From: Pekka Pessi @ 2010-05-26 14:58 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 5340 bytes --]

---
 drivers/isimodem/isimodem.c |  106 +++++++++++++++++++++++++++++++++++++++----
 1 files changed, 97 insertions(+), 9 deletions(-)

diff --git a/drivers/isimodem/isimodem.c b/drivers/isimodem/isimodem.c
index 9a5e87e..0a3cc98 100644
--- a/drivers/isimodem/isimodem.c
+++ b/drivers/isimodem/isimodem.c
@@ -67,7 +67,8 @@ struct isi_data {
 	GPhonetLinkState linkstate;
 	unsigned interval;
 	int reported;
-	int mtc_state;
+	ofono_bool_t online;
+	struct isi_cb_data *online_cbd;
 };
 
 static void report_powered(struct isi_data *isi, ofono_bool_t powered)
@@ -76,9 +77,27 @@ static void report_powered(struct isi_data *isi, ofono_bool_t powered)
 		ofono_modem_set_powered(isi->modem, isi->reported = powered);
 }
 
-static void set_power_by_mtc_state(struct isi_data *isi, int state)
+static void report_online(struct isi_data *isi, ofono_bool_t online)
 {
-	switch (isi->mtc_state = state) {
+	struct isi_cb_data *cbd = isi->online_cbd;
+	ofono_modem_online_cb cb = cbd->cb;
+
+	isi->online_cbd = NULL;
+
+	if (isi->online == online)
+		CALLBACK_WITH_SUCCESS(cb, cbd->data);
+	else
+		CALLBACK_WITH_FAILURE(cb, cbd->data);
+
+	g_free(cbd);
+}
+
+static void set_power_by_mtc_state(struct isi_data *isi, int mtc_state)
+{
+	if (isi->online_cbd)
+		report_online(isi, mtc_state == MTC_NORMAL);
+
+	switch (mtc_state) {
 	case MTC_STATE_NONE:
 	case MTC_POWER_OFF:
 	case MTC_CHARGING:
@@ -88,9 +107,6 @@ static void set_power_by_mtc_state(struct isi_data *isi, int state)
 
 	case MTC_RF_INACTIVE:
 	case MTC_NORMAL:
-		report_powered(isi, 1);
-		break;
-
 	default:
 		report_powered(isi, 1);
 	}
@@ -155,7 +171,8 @@ static bool mtc_poll_query_cb(GIsiClient *client, const void *restrict data,
 	DBG("target modem state: %s (0x%02X)",
 		mtc_modem_state_name(msg[2]), msg[2]);
 
-	set_power_by_mtc_state(isi, msg[1]);
+	if (msg[1] == msg[2])
+		set_power_by_mtc_state(isi, msg[1]);
 
 	return true;
 }
@@ -179,7 +196,8 @@ static bool mtc_query_cb(GIsiClient *client, const void *restrict data,
 	DBG("target modem state: %s (0x%02X)",
 		mtc_modem_state_name(msg[2]), msg[2]);
 
-	set_power_by_mtc_state(isi, msg[1]);
+	if (msg[1] == msg[2])
+		set_power_by_mtc_state(isi, msg[1]);
 
 	return true;
 }
@@ -276,6 +294,7 @@ static int isi_modem_probe(struct ofono_modem *modem)
 	isi->ifname = ifname;
 	isi->link = link;
 	isi->client = g_isi_client_create(isi->idx, PN_MTC);
+	isi->reported = -1;
 
 	return 0;
 }
@@ -293,6 +312,65 @@ static void isi_modem_remove(struct ofono_modem *modem)
 	g_free(isi);
 }
 
+static bool mtc_state_cb(GIsiClient *client, const void *restrict data,
+				size_t len, uint16_t object, void *opaque)
+{
+	struct isi_cb_data *cbd = opaque;
+	struct ofono_modem *modem = cbd->user;
+	ofono_modem_online_cb cb = cbd->cb;
+	struct isi_data *isi = ofono_modem_get_data(modem);
+	const unsigned char *msg = data;
+
+	if (!msg) {
+		DBG("ISI client error: %d", g_isi_client_error(client));
+		goto err;
+	}
+
+	if (len < 3 || msg[0] != MTC_STATE_RESP)
+		return false;
+
+	DBG("cause: %s (0x%02X)", mtc_isi_cause_name(msg[1]), msg[1]);
+
+	if (msg[1] == MTC_OK) {
+		isi->online_cbd = cbd;
+		return true;
+	}
+
+err:
+	if (msg && msg[1] == MTC_ALREADY_ACTIVE)
+		CALLBACK_WITH_SUCCESS(cb, cbd->data);
+	else
+		CALLBACK_WITH_FAILURE(cb, cbd->data);
+
+	g_free(cbd);
+	return true;
+}
+
+static void isi_modem_online(struct ofono_modem *modem, ofono_bool_t online,
+				ofono_modem_online_cb cb, void *data)
+{
+	struct isi_data *isi = ofono_modem_get_data(modem);
+	const unsigned char req[] = {
+		MTC_STATE_REQ, online ? MTC_NORMAL : MTC_RF_INACTIVE, 0x00
+	};
+	struct isi_cb_data *cbd = isi_cb_data_new(modem, cb, data);
+
+	DBG("(%p) with %s", modem, isi->ifname);
+
+	if (!cbd)
+		goto error;
+
+	isi->online = online;
+
+	if (g_isi_request_make(isi->client, req, sizeof(req), MTC_TIMEOUT,
+				mtc_state_cb, cbd))
+		return;
+
+error:
+	g_free(cbd);
+	CALLBACK_WITH_FAILURE(cb, data);
+}
+
 static void isi_modem_pre_sim(struct ofono_modem *modem)
 {
 	struct isi_data *isi = ofono_modem_get_data(modem);
@@ -307,12 +385,20 @@ static void isi_modem_pre_sim(struct ofono_modem *modem)
 static void isi_modem_post_sim(struct ofono_modem *modem)
 {
 	struct isi_data *isi = ofono_modem_get_data(modem);
+
+	DBG("(%p) with %s", modem, isi->ifname);
+
+	ofono_phonebook_create(isi->modem, 0, "isimodem", isi->idx);
+}
+
+static void isi_modem_post_online(struct ofono_modem *modem)
+{
+	struct isi_data *isi = ofono_modem_get_data(modem);
 	struct ofono_gprs *gprs;
 	struct ofono_gprs_context *gc;
 
 	DBG("(%p) with %s", modem, isi->ifname);
 
-	ofono_phonebook_create(isi->modem, 0, "isimodem", isi->idx);
 	ofono_netreg_create(isi->modem, 0, "isimodem", isi->idx);
 	ofono_sms_create(isi->modem, 0, "isimodem", isi->idx);
 	ofono_cbs_create(isi->modem, 0, "isimodem", isi->idx);
@@ -336,8 +422,10 @@ static struct ofono_modem_driver driver = {
 	.name = "isimodem",
 	.probe = isi_modem_probe,
 	.remove = isi_modem_remove,
+	.set_online = isi_modem_online,
 	.pre_sim = isi_modem_pre_sim,
 	.post_sim = isi_modem_post_sim,
+	.post_online = isi_modem_post_online,
 };
 
 static int isimodem_init(void)
-- 
1.6.3.3


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* Re: [PATCH 3/4] Add: set_online and post_online methods to isimodem driver
  2010-05-26 14:58 ` [PATCH 3/4] Add: set_online and post_online methods to isimodem driver Pekka Pessi
@ 2010-05-27  2:08   ` Denis Kenzior
  2010-05-27  6:48     ` Aki Niemi
  2010-05-27 12:34     ` Pekka Pessi
  0 siblings, 2 replies; 15+ messages in thread
From: Denis Kenzior @ 2010-05-27  2:08 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 235 bytes --]

Hi Pekka,

> +static bool mtc_state_cb(GIsiClient *client, const void *restrict data,
> +				size_t len, uint16_t object, void *opaque)

We don't use bools in oFono, please fix this to use gboolean or an int.

Regards,
-Denis

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH 3/4] Add: set_online and post_online methods to isimodem driver
  2010-05-27  2:08   ` Denis Kenzior
@ 2010-05-27  6:48     ` Aki Niemi
  2010-05-27 11:44       ` Denis Kenzior
  2010-05-27 12:34     ` Pekka Pessi
  1 sibling, 1 reply; 15+ messages in thread
From: Aki Niemi @ 2010-05-27  6:48 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 521 bytes --]

On Thu, 2010-05-27 at 04:08 +0200, ext Denis Kenzior wrote:
> Hi Pekka,
> 
> > +static bool mtc_state_cb(GIsiClient *client, const void *restrict data,
> > +				size_t len, uint16_t object, void *opaque)
> 
> We don't use bools in oFono, please fix this to use gboolean or an int.

Well, stdbool.h is what gisi uses currently. I've been meaning to
replace all occurrences with gboolean, but haven't gotten around to it
yet.

So I think this can be pushed, and the issue fixed aftrewards.

Cheers,
Aki



^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH 3/4] Add: set_online and post_online methods to isimodem driver
  2010-05-27  6:48     ` Aki Niemi
@ 2010-05-27 11:44       ` Denis Kenzior
  0 siblings, 0 replies; 15+ messages in thread
From: Denis Kenzior @ 2010-05-27 11:44 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 709 bytes --]

Hi Aki,

> On Thu, 2010-05-27 at 04:08 +0200, ext Denis Kenzior wrote:
> > Hi Pekka,
> >
> > > +static bool mtc_state_cb(GIsiClient *client, const void *restrict
> > > data, +				size_t len, uint16_t object, void *opaque)
> >
> > We don't use bools in oFono, please fix this to use gboolean or an int.
> 
> Well, stdbool.h is what gisi uses currently. I've been meaning to
> replace all occurrences with gboolean, but haven't gotten around to it
> yet.
> 
> So I think this can be pushed, and the issue fixed aftrewards.

This is new code, so might as well be done properly.  If the rest of the patch 
is looking good to you, then just --amend it to get rid of the bool.

Regards,
-Denis

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH 3/4] Add: set_online and post_online methods to isimodem driver
  2010-05-27  2:08   ` Denis Kenzior
  2010-05-27  6:48     ` Aki Niemi
@ 2010-05-27 12:34     ` Pekka Pessi
  2010-05-27 12:48       ` Denis Kenzior
  1 sibling, 1 reply; 15+ messages in thread
From: Pekka Pessi @ 2010-05-27 12:34 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 627 bytes --]

2010/5/27 Denis Kenzior <denkenz@gmail.com>:
>> +static bool mtc_state_cb(GIsiClient *client, const void *restrict data,
>> +                             size_t len, uint16_t object, void *opaque)
>
> We don't use bools in oFono, please fix this to use gboolean or an int.

Huh?

int ofono_modem_set_boolean(struct ofono_modem *modem,
				const char *key, bool value);
bool ofono_modem_get_boolean(struct ofono_modem *modem, const char *key);

There are also some inconsistent usage of ofono_bool_t and
dbus_bool_t, mostly they are assumed to be the same type.

-- 
Pekka.Pessi mail at nokia.com

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH 3/4] Add: set_online and post_online methods to isimodem driver
  2010-05-27 12:34     ` Pekka Pessi
@ 2010-05-27 12:48       ` Denis Kenzior
  2010-05-27 16:12         ` [PATCH 1/6] Use ofono_bool_t instead of bool in modem API Pekka Pessi
  0 siblings, 1 reply; 15+ messages in thread
From: Denis Kenzior @ 2010-05-27 12:48 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 781 bytes --]

Hi Pekka,

> 2010/5/27 Denis Kenzior <denkenz@gmail.com>:
> >> +static bool mtc_state_cb(GIsiClient *client, const void *restrict data,
> >> +                             size_t len, uint16_t object, void *opaque)
> >
> > We don't use bools in oFono, please fix this to use gboolean or an int.
> 
> Huh?
> 
> int ofono_modem_set_boolean(struct ofono_modem *modem,
> 				const char *key, bool value);
> bool ofono_modem_get_boolean(struct ofono_modem *modem, const char *key);

Then that is a bug and needs to be fixed to use ofono_bool_t.  Things do 
sometimes fall through the cracks...

> 
> There are also some inconsistent usage of ofono_bool_t and
> dbus_bool_t, mostly they are assumed to be the same type.
> 

Patches are welcome.

Regards,
-Denis

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 1/6] Use ofono_bool_t instead of bool in modem API.
  2010-05-27 12:48       ` Denis Kenzior
@ 2010-05-27 16:12         ` Pekka Pessi
  2010-05-27 16:12           ` [PATCH 2/6] Use ofono_bool_t with D-Bus API Pekka Pessi
  2010-05-27 18:01           ` [PATCH 1/6] Use ofono_bool_t instead of bool in modem API Denis Kenzior
  0 siblings, 2 replies; 15+ messages in thread
From: Pekka Pessi @ 2010-05-27 16:12 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 2440 bytes --]

---
 include/modem.h |    6 ++----
 src/modem.c     |   10 +++++-----
 2 files changed, 7 insertions(+), 9 deletions(-)

diff --git a/include/modem.h b/include/modem.h
index f192166..21709d7 100644
--- a/include/modem.h
+++ b/include/modem.h
@@ -26,8 +26,6 @@
 extern "C" {
 #endif
 
-#include <stdbool.h>
-
 #include <ofono/types.h>
 
 struct ofono_modem;
@@ -63,8 +61,8 @@ int ofono_modem_set_integer(struct ofono_modem *modem,
 int ofono_modem_get_integer(struct ofono_modem *modem, const char *key);
 
 int ofono_modem_set_boolean(struct ofono_modem *modem,
-				const char *key, bool value);
-bool ofono_modem_get_boolean(struct ofono_modem *modem, const char *key);
+				const char *key, gboolean value);
+gboolean ofono_modem_get_boolean(struct ofono_modem *modem, const char *key);
 
 typedef void (*ofono_modem_online_cb)(const struct ofono_error *error,
 					void *data);
diff --git a/src/modem.c b/src/modem.c
index a99d792..ce262cb 100644
--- a/src/modem.c
+++ b/src/modem.c
@@ -1092,7 +1092,7 @@ static int set_modem_property(struct ofono_modem *modem, const char *name,
 		property->value = g_memdup(value, sizeof(int));
 		break;
 	case PROPERTY_TYPE_BOOLEAN:
-		property->value = g_memdup(value, sizeof(bool));
+		property->value = g_memdup(value, sizeof(ofono_bool_t));
 		break;
 	default:
 		break;
@@ -1127,7 +1127,7 @@ static gboolean get_modem_property(struct ofono_modem *modem, const char *name,
 		memcpy(value, property->value, sizeof(int));
 		return TRUE;
 	case PROPERTY_TYPE_BOOLEAN:
-		memcpy(value, property->value, sizeof(bool));
+		memcpy(value, property->value, sizeof(ofono_bool_t));
 		return TRUE;
 	default:
 		return FALSE;
@@ -1147,7 +1147,7 @@ int ofono_modem_set_integer(struct ofono_modem *modem,
 }
 
 int ofono_modem_set_boolean(struct ofono_modem *modem,
-				const char *key, bool value)
+				const char *key, ofono_bool_t value)
 {
 	return set_modem_property(modem, key, PROPERTY_TYPE_BOOLEAN, &value);
 }
@@ -1174,9 +1174,9 @@ int ofono_modem_get_integer(struct ofono_modem *modem, const char *key)
 	return value;
 }
 
-bool ofono_modem_get_boolean(struct ofono_modem *modem, const char *key)
+ofono_bool_t ofono_modem_get_boolean(struct ofono_modem *modem, const char *key)
 {
-	bool value;
+	ofono_bool_t value;
 
 	if (get_modem_property(modem, key,
 				PROPERTY_TYPE_BOOLEAN, &value) == FALSE)
-- 
1.6.3.3


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH 2/6] Use ofono_bool_t with D-Bus API.
  2010-05-27 16:12         ` [PATCH 1/6] Use ofono_bool_t instead of bool in modem API Pekka Pessi
@ 2010-05-27 16:12           ` Pekka Pessi
  2010-05-27 16:12             ` [PATCH 3/6] Eliminated bool, true and false from gisi Pekka Pessi
  2010-05-27 18:02             ` [PATCH 2/6] Use ofono_bool_t with D-Bus API Denis Kenzior
  2010-05-27 18:01           ` [PATCH 1/6] Use ofono_bool_t instead of bool in modem API Denis Kenzior
  1 sibling, 2 replies; 15+ messages in thread
From: Pekka Pessi @ 2010-05-27 16:12 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 1308 bytes --]

---
 src/modem.c |    7 ++-----
 1 files changed, 2 insertions(+), 5 deletions(-)

diff --git a/src/modem.c b/src/modem.c
index ce262cb..2cb3e50 100644
--- a/src/modem.c
+++ b/src/modem.c
@@ -595,13 +595,11 @@ static gboolean set_powered_timeout(gpointer user)
 
 	if (modem->powered_pending == FALSE) {
 		DBusConnection *conn = ofono_dbus_get_connection();
-		dbus_bool_t powered = FALSE;
-
 		modem->powered = FALSE;
 		ofono_dbus_signal_property_changed(conn, modem->path,
 						OFONO_MODEM_INTERFACE,
 						"Powered", DBUS_TYPE_BOOLEAN,
-						&powered);
+						&modem->powered);
 	} else {
 		modem->powered_pending = modem->powered;
 	}
@@ -720,7 +718,6 @@ void ofono_modem_set_powered(struct ofono_modem *modem, ofono_bool_t powered)
 	modem->powered_pending = powered;
 
 	if (modem->powered != powered) {
-		dbus_bool_t dbus_powered = powered;
 		modem->powered = powered;
 
 		if (modem->driver == NULL) {
@@ -733,7 +730,7 @@ void ofono_modem_set_powered(struct ofono_modem *modem, ofono_bool_t powered)
 		ofono_dbus_signal_property_changed(conn, modem->path,
 						OFONO_MODEM_INTERFACE,
 						"Powered", DBUS_TYPE_BOOLEAN,
-						&dbus_powered);
+						&powered);
 
 		if (powered)
 			modem_change_state(modem, MODEM_STATE_PRE_SIM);
-- 
1.6.3.3


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH 3/6] Eliminated bool, true and false from gisi.
  2010-05-27 16:12           ` [PATCH 2/6] Use ofono_bool_t with D-Bus API Pekka Pessi
@ 2010-05-27 16:12             ` Pekka Pessi
  2010-05-27 16:12               ` [PATCH 4/6] Eliminated bool, true and false from isimodem Pekka Pessi
  2010-05-27 19:36               ` [PATCH 3/6] Eliminated bool, true and false from gisi Denis Kenzior
  2010-05-27 18:02             ` [PATCH 2/6] Use ofono_bool_t with D-Bus API Denis Kenzior
  1 sibling, 2 replies; 15+ messages in thread
From: Pekka Pessi @ 2010-05-27 16:12 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 15953 bytes --]

---
 gisi/client.c  |   10 +------
 gisi/client.h  |   17 ++++++-------
 gisi/iter.c    |   73 +++++++++++++++++++++++++++----------------------------
 gisi/iter.h    |   23 ++++++++---------
 gisi/netlink.c |    1 -
 gisi/netlink.h |    1 -
 gisi/pipe.c    |   45 +++++++++++++++++-----------------
 gisi/server.h  |    7 ++---
 gisi/verify.c  |   13 ++++-----
 9 files changed, 88 insertions(+), 102 deletions(-)

diff --git a/gisi/client.c b/gisi/client.c
index fa40f0c..640484d 100644
--- a/gisi/client.c
+++ b/gisi/client.c
@@ -570,14 +570,8 @@ static void g_isi_dispatch_response(GIsiClient *client, uint16_t obj,
 
 	req = *(GIsiRequest **)ret;
 
-	if (req->func) {
-		bool handled;
-
-		handled = req->func(client, msg + 1, len - 1, obj, req->data);
-		if (!handled)
-			return;
-	}
-	g_isi_request_cancel(req);
+	if (!req->func || req->func(client, msg + 1, len - 1, obj, req->data))
+		g_isi_request_cancel(req);
 }
 
 /* Data callback for both responses and indications */
diff --git a/gisi/client.h b/gisi/client.h
index 1962f5c..7046f31 100644
--- a/gisi/client.h
+++ b/gisi/client.h
@@ -27,7 +27,6 @@ extern "C" {
 #endif
 
 #include <stdint.h>
-#include <stdbool.h>
 #include <gisi/modem.h>
 
 struct _GIsiClient;
@@ -36,16 +35,16 @@ typedef struct _GIsiClient GIsiClient;
 struct _GIsiRequest;
 typedef struct _GIsiRequest GIsiRequest;
 
-typedef void (*GIsiVerifyFunc)(GIsiClient *client, bool alive,
+typedef void (*GIsiVerifyFunc)(GIsiClient *client, gboolean alive,
 				uint16_t object, void *opaque);
 
-typedef bool (*GIsiResponseFunc)(GIsiClient *client,
-		const void *restrict data, size_t len,
-		uint16_t object, void *opaque);
+typedef gboolean (*GIsiResponseFunc)(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object, void *opaque);
 
 typedef void (*GIsiIndicationFunc) (GIsiClient *client,
-		const void *restrict data, size_t len,
-		uint16_t object, void *opaque);
+					const void *restrict data, size_t len,
+					uint16_t object, void *opaque);
 
 GIsiClient *g_isi_client_create(GIsiModem *modem, uint8_t resource);
 
@@ -70,8 +69,8 @@ GIsiRequest *g_isi_request_make(GIsiClient *client, const void *data,
 				GIsiResponseFunc func, void *opaque);
 struct iovec;
 GIsiRequest *g_isi_request_vmake(GIsiClient *client, const struct iovec *iov,
-				size_t iovlen, unsigned timeout,
-				GIsiResponseFunc func, void *opaque);
+					size_t iovlen, unsigned timeout,
+					GIsiResponseFunc func, void *opaque);
 
 void g_isi_request_cancel(GIsiRequest *req);
 
diff --git a/gisi/iter.c b/gisi/iter.c
index 152b236..7b3191b 100644
--- a/gisi/iter.c
+++ b/gisi/iter.c
@@ -25,7 +25,6 @@
 #include <config.h>
 #endif
 
-#include <stdbool.h>
 #include <stdint.h>
 #include <string.h>
 #include <glib.h>
@@ -49,7 +48,7 @@ static inline void bcd_to_mccmnc(const uint8_t *restrict bcd,
 }
 
 void g_isi_sb_iter_init_full(GIsiSubBlockIter *iter, const void *restrict data,
-				size_t len, size_t used, bool longhdr,
+				size_t len, size_t used, gboolean longhdr,
 				uint16_t sub_blocks)
 {
 	if (!data)
@@ -69,25 +68,25 @@ void g_isi_sb_iter_init(GIsiSubBlockIter *iter, const void *restrict data,
 
 	iter->start = (uint8_t *)data + used;
 	iter->end = iter->start + len;
-	iter->longhdr = false;
+	iter->longhdr = FALSE;
 	iter->sub_blocks = len > used ? iter->start[-1] : 0;
 }
 
-bool g_isi_sb_iter_is_valid(const GIsiSubBlockIter *iter)
+gboolean g_isi_sb_iter_is_valid(const GIsiSubBlockIter *iter)
 {
 	if (!iter)
-		return false;
+		return FALSE;
 
 	if (iter->sub_blocks == 0)
-		return false;
+		return FALSE;
 
 	if (iter->start + (iter->longhdr ? 4 : 2) > iter->end)
-		return false;
+		return FALSE;
 
 	if (iter->start + g_isi_sb_iter_get_len(iter) > iter->end)
-		return false;
+		return FALSE;
 
-	return true;
+	return TRUE;
 }
 
 int g_isi_sb_iter_get_id(const GIsiSubBlockIter *iter)
@@ -104,103 +103,103 @@ size_t g_isi_sb_iter_get_len(const GIsiSubBlockIter *iter)
 	return iter->start[1];
 }
 
-bool g_isi_sb_iter_get_data(const GIsiSubBlockIter *restrict iter,
+gboolean g_isi_sb_iter_get_data(const GIsiSubBlockIter *restrict iter,
 				void **data, unsigned pos)
 {
 	if ((size_t)pos > g_isi_sb_iter_get_len(iter)
 		|| iter->start + pos > iter->end)
-		return false;
+		return FALSE;
 	*data = (void *)iter->start + pos;
-	return true;
+	return TRUE;
 }
 
-bool g_isi_sb_iter_get_byte(const GIsiSubBlockIter *restrict iter,
+gboolean g_isi_sb_iter_get_byte(const GIsiSubBlockIter *restrict iter,
 				uint8_t *byte, unsigned pos)
 {
 	if ((size_t)pos > g_isi_sb_iter_get_len(iter)
 		|| iter->start + pos > iter->end)
-		return false;
+		return FALSE;
 	*byte = iter->start[pos];
-	return true;
+	return TRUE;
 }
 
-bool g_isi_sb_iter_get_word(const GIsiSubBlockIter *restrict iter,
+gboolean g_isi_sb_iter_get_word(const GIsiSubBlockIter *restrict iter,
 				uint16_t *word, unsigned pos)
 {
 	uint16_t val;
 
 	if (pos + 1 > g_isi_sb_iter_get_len(iter))
-		return false;
+		return FALSE;
 
 	memcpy(&val, iter->start + pos, sizeof(uint16_t));
 	*word = ntohs(val);
-	return true;
+	return TRUE;
 }
 
-bool g_isi_sb_iter_get_dword(const GIsiSubBlockIter *restrict iter,
-				uint32_t *dword, unsigned pos)
+gboolean g_isi_sb_iter_get_dword(const GIsiSubBlockIter *restrict iter,
+					uint32_t *dword, unsigned pos)
 {
 	uint32_t val;
 
 	if (pos + 3 > g_isi_sb_iter_get_len(iter))
-		return false;
+		return FALSE;
 
 	memcpy(&val, iter->start + pos, sizeof(uint32_t));
 	*dword = ntohl(val);
-	return true;
+	return TRUE;
 }
 
-bool g_isi_sb_iter_get_oper_code(const GIsiSubBlockIter *restrict iter,
+gboolean g_isi_sb_iter_get_oper_code(const GIsiSubBlockIter *restrict iter,
 					char *mcc, char *mnc, unsigned pos)
 {
 	if (pos + 2 > g_isi_sb_iter_get_len(iter))
-		return false;
+		return FALSE;
 
 	bcd_to_mccmnc(iter->start + pos, mcc, mnc);
-	return true;
+	return TRUE;
 }
 
-bool g_isi_sb_iter_get_alpha_tag(const GIsiSubBlockIter *restrict iter,
+gboolean g_isi_sb_iter_get_alpha_tag(const GIsiSubBlockIter *restrict iter,
 					char **utf8, size_t len, unsigned pos)
 {
 	uint8_t *ucs2 = NULL;
 
 	if (pos > g_isi_sb_iter_get_len(iter))
-		return false;
+		return FALSE;
 
 	if (!utf8 || len == 0 || pos + len > g_isi_sb_iter_get_len(iter))
-		return false;
+		return FALSE;
 
 	ucs2 = iter->start + pos;
 	if (ucs2 + len > iter->end)
-		return false;
+		return FALSE;
 
 	*utf8 = g_convert((const char *)ucs2, len, "UTF-8//TRANSLIT", "UCS-2BE",
 				NULL, NULL, NULL);
 	return *utf8 != NULL;
 }
 
-bool g_isi_sb_iter_get_latin_tag(const GIsiSubBlockIter *restrict iter,
+gboolean g_isi_sb_iter_get_latin_tag(const GIsiSubBlockIter *restrict iter,
 					char **latin, size_t len, unsigned pos)
 {
 	uint8_t *str = NULL;
 
 	if (pos > g_isi_sb_iter_get_len(iter))
-		return false;
+		return FALSE;
 
 	if (!latin || len == 0 || pos + len > g_isi_sb_iter_get_len(iter))
-		return false;
+		return FALSE;
 
 	str = iter->start + pos;
 	if (str + len > iter->end)
-		return false;
+		return FALSE;
 
 	*latin = g_strndup((char *)str, len);
 
 	return *latin != NULL;
 }
 
-bool g_isi_sb_iter_next(GIsiSubBlockIter *iter)
+gboolean g_isi_sb_iter_next(GIsiSubBlockIter *iter)
 {
 	uint8_t len = g_isi_sb_iter_get_len(iter);
 
@@ -208,13 +207,13 @@ bool g_isi_sb_iter_next(GIsiSubBlockIter *iter)
 		len = iter->longhdr ? 4 : 2;
 
 	if (iter->sub_blocks == 0)
-		return false;
+		return FALSE;
 
 	if (iter->start + len > iter->end)
-		return false;
+		return FALSE;
 
 	iter->start += len;
 	iter->sub_blocks--;
 
-	return true;
+	return TRUE;
 }
diff --git a/gisi/iter.h b/gisi/iter.h
index 8648900..8418331 100644
--- a/gisi/iter.h
+++ b/gisi/iter.h
@@ -29,7 +29,6 @@ extern "C" {
 #endif
 
 #include <stdint.h>
-#include <stdbool.h>
 
 struct _GIsiSubBlockIter {
 	uint8_t *start;
@@ -46,28 +45,28 @@ void g_isi_sb_iter_init(GIsiSubBlockIter *iter,
 void g_isi_sb_iter_init_full(GIsiSubBlockIter *iter,
 				const void *restrict data,
 				size_t len, size_t used,
-				bool longhdr,
+				gboolean longhdr,
 				uint16_t sub_blocks);
-bool g_isi_sb_iter_is_valid(const GIsiSubBlockIter *iter);
+gboolean g_isi_sb_iter_is_valid(const GIsiSubBlockIter *iter);
 
-bool g_isi_sb_iter_next(GIsiSubBlockIter *iter);
+gboolean g_isi_sb_iter_next(GIsiSubBlockIter *iter);
 
 int g_isi_sb_iter_get_id(const GIsiSubBlockIter *iter);
 size_t g_isi_sb_iter_get_len(const GIsiSubBlockIter *iter);
 
-bool g_isi_sb_iter_get_data(const GIsiSubBlockIter *restrict iter,
+gboolean g_isi_sb_iter_get_data(const GIsiSubBlockIter *restrict iter,
 				void **data, unsigned pos);
-bool g_isi_sb_iter_get_byte(const GIsiSubBlockIter *restrict iter,
+gboolean g_isi_sb_iter_get_byte(const GIsiSubBlockIter *restrict iter,
 				uint8_t *byte, unsigned pos);
-bool g_isi_sb_iter_get_word(const GIsiSubBlockIter *restrict iter,
+gboolean g_isi_sb_iter_get_word(const GIsiSubBlockIter *restrict iter,
 				uint16_t *word, unsigned pos);
-bool g_isi_sb_iter_get_dword(const GIsiSubBlockIter *restrict iter,
-				uint32_t *dword, unsigned pos);
-bool g_isi_sb_iter_get_oper_code(const GIsiSubBlockIter *restrict iter,
+gboolean g_isi_sb_iter_get_dword(const GIsiSubBlockIter *restrict iter,
+					uint32_t *dword, unsigned pos);
+gboolean g_isi_sb_iter_get_oper_code(const GIsiSubBlockIter *restrict iter,
 					char *mcc, char *mnc, unsigned pos);
-bool g_isi_sb_iter_get_alpha_tag(const GIsiSubBlockIter *restrict iter,
+gboolean g_isi_sb_iter_get_alpha_tag(const GIsiSubBlockIter *restrict iter,
 					char **utf8, size_t len, unsigned pos);
-bool g_isi_sb_iter_get_latin_tag(const GIsiSubBlockIter *restrict iter,
+gboolean g_isi_sb_iter_get_latin_tag(const GIsiSubBlockIter *restrict iter,
 					char **ascii, size_t len, unsigned pos);
 
 #ifdef __cplusplus
diff --git a/gisi/netlink.c b/gisi/netlink.c
index 06d4863..7ef8ec0 100644
--- a/gisi/netlink.c
+++ b/gisi/netlink.c
@@ -25,7 +25,6 @@
 #include <config.h>
 #endif
 
-#include <stdbool.h>
 #include <stdint.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/gisi/netlink.h b/gisi/netlink.h
index 5b58fa4..816cd74 100644
--- a/gisi/netlink.h
+++ b/gisi/netlink.h
@@ -21,7 +21,6 @@
  *
  */
 
-#include <stdbool.h>
 #include <stdint.h>
 #include <gisi/modem.h>
 
diff --git a/gisi/pipe.c b/gisi/pipe.c
index 0e7698d..55852b1 100644
--- a/gisi/pipe.c
+++ b/gisi/pipe.c
@@ -26,7 +26,6 @@
 #endif
 
 #include <stdint.h>
-#include <stdbool.h>
 #include <errno.h>
 #include <glib.h>
 #include "client.h"
@@ -125,8 +124,8 @@ struct _GIsiPipe {
 	void *opaque;
 	int error;
 	uint8_t handle;
-	bool enabled;
-	bool enabling;
+	gboolean enabled;
+	gboolean enabling;
 };
 
 static int g_isi_pipe_error(uint8_t code)
@@ -163,16 +162,16 @@ static void g_isi_pipe_handle_error(GIsiPipe *pipe, uint8_t code)
 		pipe->error_handler(pipe);
 }
 
-static bool g_isi_pipe_created(GIsiClient *client,
-				const void *restrict data, size_t len,
-				uint16_t object, void *opaque)
+static gboolean g_isi_pipe_created(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object, void *opaque)
 {
 	GIsiPipe *pipe = opaque;
 	const isi_pipe_resp_t *resp = data;
 
 	if (len < 5 ||
 	    resp->cmd != PNS_PIPE_CREATE_RESP)
-		return false;
+		return FALSE;
 
 	if (resp->pipe_handle != PN_PIPE_INVALID_HANDLE) {
 		pipe->handle = resp->pipe_handle;
@@ -182,7 +181,7 @@ static bool g_isi_pipe_created(GIsiClient *client,
 			pipe->handler(pipe);
 	} else
 		g_isi_pipe_handle_error(pipe, resp->error_code);
-	return true;
+	return TRUE;
 }
 
 /**
@@ -220,8 +219,8 @@ GIsiPipe *g_isi_pipe_create(GIsiModem *modem, void (*created)(GIsiPipe *),
 	pipe->handler = created;
 	pipe->error_handler = NULL;
 	pipe->error = 0;
-	pipe->enabling = false;
-	pipe->enabled = false;
+	pipe->enabling = FALSE;
+	pipe->enabled = FALSE;
 	pipe->handle = PN_PIPE_INVALID_HANDLE;
 
 	if (pipe->client == NULL ||
@@ -250,22 +249,22 @@ g_isi_pipe_check_resp(const GIsiPipe *pipe, uint8_t cmd,
 	return resp;
 }
 
-static bool g_isi_pipe_enabled(GIsiClient *client,
-				const void *restrict data, size_t len,
-				uint16_t object, void *opaque)
+static gboolean g_isi_pipe_enabled(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object, void *opaque)
 {
 	GIsiPipe *pipe = opaque;
 	const isi_pipe_resp_t *resp;
 
 	resp = g_isi_pipe_check_resp(pipe, PNS_PIPE_ENABLE_RESP, data, len);
 	if (!resp)
-		return false;
+		return FALSE;
 
 	g_isi_pipe_handle_error(pipe, resp->error_code);
-	pipe->enabling = false;
+	pipe->enabling = FALSE;
 	if (!pipe->error)
-		pipe->enabled = true;
-	return true;
+		pipe->enabled = TRUE;
+	return TRUE;
 }
 
 static GIsiRequest *g_isi_pipe_enable(GIsiPipe *pipe)
@@ -295,26 +294,26 @@ int g_isi_pipe_start(GIsiPipe *pipe)
 	if (pipe->handle != PN_PIPE_INVALID_HANDLE)
 		g_isi_pipe_enable(pipe);
 	else
-		pipe->enabling = true;
+		pipe->enabling = TRUE;
 
 	return 0;
 }
 
 /* Not very useful, it will never have time to trigger */
-static bool g_isi_pipe_removed(GIsiClient *client,
-				const void *restrict data, size_t len,
-				uint16_t object, void *opaque)
+static gboolean g_isi_pipe_removed(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object, void *opaque)
 {
 	GIsiPipe *pipe = opaque;
 	const isi_pipe_resp_t *resp;
 
 	resp = g_isi_pipe_check_resp(pipe, PNS_PIPE_REMOVE_RESP, data, len);
 	if (!resp)
-		return false;
+		return FALSE;
 
 	pipe->handle = PN_PIPE_INVALID_HANDLE;
 	pipe->error = -EPIPE;
-	return true;
+	return TRUE;
 }
 
 
diff --git a/gisi/server.h b/gisi/server.h
index 080573f..d1be88e 100644
--- a/gisi/server.h
+++ b/gisi/server.h
@@ -27,7 +27,6 @@ extern "C" {
 #endif
 
 #include <stdint.h>
-#include <stdbool.h>
 #include <gisi/modem.h>
 
 struct _GIsiServer;
@@ -36,9 +35,9 @@ typedef struct _GIsiServer GIsiServer;
 struct _GIsiIncoming;
 typedef struct _GIsiIncoming GIsiIncoming;
 
-typedef bool (*GIsiRequestFunc)(GIsiServer *server,
-		const void *restrict data, size_t len,
-		GIsiIncoming *, void *opaque);
+typedef gboolean (*GIsiRequestFunc)(GIsiServer *server,
+					const void *restrict data, size_t len,
+					GIsiIncoming *, void *opaque);
 
 GIsiServer *g_isi_server_create(GIsiModem *modem, uint8_t resource,
 				uint8_t major, uint8_t minor);
diff --git a/gisi/verify.c b/gisi/verify.c
index ebedfbe..7ba0cdc 100644
--- a/gisi/verify.c
+++ b/gisi/verify.c
@@ -26,7 +26,6 @@
 #endif
 
 #include <stdint.h>
-#include <stdbool.h>
 #include <glib.h>
 
 #include "client.h"
@@ -43,14 +42,14 @@ struct verify_data {
 	void *data;
 };
 
-static bool verify_cb(GIsiClient *client, const void *restrict data,
-			size_t len, uint16_t object, void *opaque)
+static gboolean verify_cb(GIsiClient *client, const void *restrict data,
+				size_t len, uint16_t object, void *opaque)
 {
 	const uint8_t *msg = data;
 	struct verify_data *vd = opaque;
 	GIsiVerifyFunc func = vd->func;
 
-	bool alive = false;
+	gboolean alive = FALSE;
 
 	if (!msg)
 		goto out;
@@ -60,18 +59,18 @@ static bool verify_cb(GIsiClient *client, const void *restrict data,
 
 	if (msg[1] == COMM_ISI_VERSION_GET_RESP && len >= 4) {
 		g_isi_version_set(client, msg[2], msg[3]);
-		alive = true;
+		alive = TRUE;
 		goto out;
 	}
 
 	if (msg[1] != COMM_ISA_ENTITY_NOT_REACHABLE_RESP)
-		alive = true;
+		alive = TRUE;
 
 out:
 	if (func)
 		func(client, alive, object, vd->data);
 	g_free(vd);
-	return true;
+	return TRUE;
 }
 
 /**
-- 
1.6.3.3


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH 4/6] Eliminated bool, true and false from isimodem.
  2010-05-27 16:12             ` [PATCH 3/6] Eliminated bool, true and false from gisi Pekka Pessi
@ 2010-05-27 16:12               ` Pekka Pessi
  2010-05-27 16:12                 ` [PATCH 5/6] Fixed style issues in isimodem voicecall Pekka Pessi
  2010-05-27 19:36               ` [PATCH 3/6] Eliminated bool, true and false from gisi Denis Kenzior
  1 sibling, 1 reply; 15+ messages in thread
From: Pekka Pessi @ 2010-05-27 16:12 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 61206 bytes --]

---
 drivers/isimodem/call-barring.c         |   29 ++++----
 drivers/isimodem/call-forwarding.c      |   38 ++++++-----
 drivers/isimodem/call-settings.c        |   16 +++--
 drivers/isimodem/cbs.c                  |   18 +++--
 drivers/isimodem/devinfo.c              |   15 ++--
 drivers/isimodem/gprs-context.c         |  103 +++++++++++++++-------------
 drivers/isimodem/gprs.c                 |   35 ++++++----
 drivers/isimodem/infoserver.c           |    2 +-
 drivers/isimodem/isimodem.c             |   31 +++++----
 drivers/isimodem/network-registration.c |   91 ++++++++++++++-----------
 drivers/isimodem/phonebook.c            |   13 ++--
 drivers/isimodem/radio-settings.c       |   24 ++++---
 drivers/isimodem/sim.c                  |   51 ++++++++------
 drivers/isimodem/sms.c                  |   65 ++++++++++--------
 drivers/isimodem/ussd.c                 |   19 +++--
 drivers/isimodem/voicecall.c            |  114 +++++++++++++++---------------
 16 files changed, 359 insertions(+), 305 deletions(-)

diff --git a/drivers/isimodem/call-barring.c b/drivers/isimodem/call-barring.c
index cf6a0e0..894f963 100644
--- a/drivers/isimodem/call-barring.c
+++ b/drivers/isimodem/call-barring.c
@@ -70,8 +70,9 @@ static int lock_code_to_mmi(char const *lock)
 		return 0;
 }
 
-static bool set_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean set_resp_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct isi_cb_data *cbd = opaque;
@@ -83,7 +84,7 @@ static bool set_resp_cb(GIsiClient *client, const void *restrict data,
 	}
 
 	if (len < 3 || msg[0] != SS_SERVICE_COMPLETED_RESP)
-		return false;
+		return FALSE;
 
 	if (msg[1] != SS_ACTIVATION && msg[1] != SS_DEACTIVATION)
 		goto error;
@@ -96,7 +97,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 
@@ -177,8 +178,9 @@ static void update_status_mask(unsigned int *mask, int bsc)
 	}
 }
 
-static bool query_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean query_resp_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	GIsiSubBlockIter iter;
 	const unsigned char *msg = data;
@@ -193,7 +195,7 @@ static bool query_resp_cb(GIsiClient *client, const void *restrict data,
 	}
 
 	if (len < 7 || msg[0] != SS_SERVICE_COMPLETED_RESP)
-		return false;
+		return FALSE;
 
 	if (msg[1] != SS_INTERROGATION)
 		goto error;
@@ -247,7 +249,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 
 }
 
@@ -277,8 +279,9 @@ static void isi_query(struct ofono_call_barring *barr, const char *lock,
 	g_free(cbd);
 }
 
-static bool set_passwd_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean set_passwd_resp_cb(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct isi_cb_data *cbd = opaque;
@@ -290,7 +293,7 @@ static bool set_passwd_resp_cb(GIsiClient *client, const void *restrict data,
 	}
 
 	if (len < 3 || msg[0] != SS_SERVICE_COMPLETED_RESP)
-		return false;
+		return FALSE;
 
 	if (msg[1] != SS_GSM_PASSWORD_REGISTRATION)
 		goto error;
@@ -303,7 +306,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 static void isi_set_passwd(struct ofono_call_barring *barr, const char *lock,
@@ -353,7 +356,7 @@ static gboolean isi_call_barring_register(gpointer user)
 	return FALSE;
 }
 
-static void reachable_cb(GIsiClient *client, bool alive, uint16_t object,
+static void reachable_cb(GIsiClient *client, gboolean alive, uint16_t object,
 				void *opaque)
 {
 	struct ofono_call_barring *barr = opaque;
diff --git a/drivers/isimodem/call-forwarding.c b/drivers/isimodem/call-forwarding.c
index 61d3cfa..aaf6ed8 100644
--- a/drivers/isimodem/call-forwarding.c
+++ b/drivers/isimodem/call-forwarding.c
@@ -77,9 +77,10 @@ static int forw_type_to_isi_code(int type)
 	return ss_code;
 }
 
-static bool decode_gsm_forwarding_info(const void *restrict data, size_t len,
-					uint8_t *status, uint8_t *ton,
-					uint8_t *norply, char **number)
+static gboolean decode_gsm_forwarding_info(const void *restrict data,
+						size_t len,
+						uint8_t *status, uint8_t *ton,
+						uint8_t *norply, char **number)
 {
 	GIsiSubBlockIter iter;
 
@@ -103,7 +104,7 @@ static bool decode_gsm_forwarding_info(const void *restrict data, size_t len,
 				|| !g_isi_sb_iter_get_byte(&iter, &_numlen, 7)
 				|| !g_isi_sb_iter_get_alpha_tag(&iter, &_number,
 					_numlen * 2, 10))
-				return false;
+				return FALSE;
 
 			if (status)
 				*status = _status;
@@ -116,7 +117,7 @@ static bool decode_gsm_forwarding_info(const void *restrict data, size_t len,
 			else
 				g_free(_number);
 
-			return true;
+			return TRUE;
 		}
 		default:
 			DBG("Skipping sub-block: %s (%zd bytes)",
@@ -125,11 +126,12 @@ static bool decode_gsm_forwarding_info(const void *restrict data, size_t len,
 			break;
 		}
 	}
-	return false;
+	return FALSE;
 }
 
-static bool registration_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean registration_resp_cb(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object, void *opaque)
 {
 	GIsiSubBlockIter iter;
 	const unsigned char *msg = data;
@@ -142,7 +144,7 @@ static bool registration_resp_cb(GIsiClient *client, const void *restrict data,
 	}
 
 	if (len < 7 || msg[0] != SS_SERVICE_COMPLETED_RESP)
-		return false;
+		return FALSE;
 
 	if (msg[1] != SS_REGISTRATION)
 		goto error;
@@ -193,7 +195,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 static void isi_registration(struct ofono_call_forwarding *cf,
@@ -260,8 +262,9 @@ error:
 	g_free(cbd);
 }
 
-static bool erasure_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean erasure_resp_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	GIsiSubBlockIter iter;
 	const unsigned char *msg = data;
@@ -324,7 +327,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 
@@ -365,8 +368,9 @@ error:
 	g_free(cbd);
 }
 
-static bool query_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean query_resp_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	GIsiSubBlockIter iter;
 	const unsigned char *msg = data;
@@ -454,7 +458,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 
 }
 
@@ -506,7 +510,7 @@ static gboolean isi_call_forwarding_register(gpointer user)
 	return FALSE;
 }
 
-static void reachable_cb(GIsiClient *client, bool alive, uint16_t object,
+static void reachable_cb(GIsiClient *client, gboolean alive, uint16_t object,
 				void *opaque)
 {
 	struct ofono_call_forwarding *cf = opaque;
diff --git a/drivers/isimodem/call-settings.c b/drivers/isimodem/call-settings.c
index 651d0ec..73f340f 100644
--- a/drivers/isimodem/call-settings.c
+++ b/drivers/isimodem/call-settings.c
@@ -89,8 +89,9 @@ static void update_status_mask(unsigned int *mask, int bsc)
 	}
 }
 
-static bool query_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean query_resp_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	GIsiSubBlockIter iter;
 	const unsigned char *msg = data;
@@ -154,7 +155,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 
 }
 
@@ -188,8 +189,9 @@ error:
 	g_free(cbd);
 }
 
-static bool set_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean set_resp_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	GIsiSubBlockIter iter;
 	const unsigned char *msg = data;
@@ -244,7 +246,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 
 }
 
@@ -287,7 +289,7 @@ static gboolean isi_call_settings_register(gpointer user)
 	return FALSE;
 }
 
-static void reachable_cb(GIsiClient *client, bool alive, uint16_t object,
+static void reachable_cb(GIsiClient *client, gboolean alive, uint16_t object,
 				void *opaque)
 {
 	struct ofono_call_settings *cs = opaque;
diff --git a/drivers/isimodem/cbs.c b/drivers/isimodem/cbs.c
index 98565c7..186ba70 100644
--- a/drivers/isimodem/cbs.c
+++ b/drivers/isimodem/cbs.c
@@ -61,8 +61,9 @@ static void isi_clear_topics(struct ofono_cbs *cbs,
 	CALLBACK_WITH_FAILURE(cb, data);
 }
 
-static void routing_ntf_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static void routing_ntf_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct ofono_cbs *cbs = opaque;
@@ -73,19 +74,20 @@ static void routing_ntf_cb(GIsiClient *client, const void *restrict data,
 	ofono_cbs_notify(cbs, msg+5, len-5);
 }
 
-static bool routing_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean routing_resp_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct ofono_cbs *cbs = opaque;
 
 	if (!msg) {
 		DBG("ISI client error: %d", g_isi_client_error(client));
-		return true;
+		return TRUE;
 	}
 
 	if (len < 3 || msg[0] != SMS_GSM_CB_ROUTING_RESP)
-		return false;
+		return FALSE;
 
 	if (msg[1] != SMS_OK) {
 		if (msg[1] == SMS_ERR_PP_RESERVED)
@@ -96,14 +98,14 @@ static bool routing_resp_cb(GIsiClient *client, const void *restrict data,
 				"routing endpoint.\n  As a consequence, "
 				"receiving CBSs is NOT going to work.\n\n",
 				msg[1], sms_isi_cause_name(msg[1]));
-		return true;
+		return TRUE;
 	}
 
 	g_isi_subscribe(client, SMS_GSM_CB_ROUTING_NTF, routing_ntf_cb,
 			cbs);
 
 	ofono_cbs_register(cbs);
-	return true;
+	return TRUE;
 }
 
 static int isi_cbs_probe(struct ofono_cbs *cbs, unsigned int vendor,
diff --git a/drivers/isimodem/devinfo.c b/drivers/isimodem/devinfo.c
index c05ab3c..bc5cdae 100644
--- a/drivers/isimodem/devinfo.c
+++ b/drivers/isimodem/devinfo.c
@@ -47,8 +47,9 @@ struct devinfo_data {
 	GIsiClient *client;
 };
 
-static bool info_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean info_resp_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct isi_cb_data *cbd = opaque;
@@ -65,13 +66,13 @@ static bool info_resp_cb(GIsiClient *client, const void *restrict data,
 
 	if (len < 3) {
 		DBG("truncated message");
-		return false;
+		return FALSE;
 	}
 
 	if (msg[0] != INFO_PRODUCT_INFO_READ_RESP
 		&& msg[0] != INFO_VERSION_READ_RESP
 		&& msg[0] != INFO_SERIAL_NUMBER_READ_RESP)
-		return false;
+		return FALSE;
 
 	if (msg[1] != INFO_OK) {
 		DBG("request failed: %s", info_isi_cause_name(msg[1]));
@@ -99,7 +100,7 @@ static bool info_resp_cb(GIsiClient *client, const void *restrict data,
 			g_free(info);
 
 			g_free(cbd);
-			return true;
+			return TRUE;
 
 		default:
 			DBG("skipping: %s (%zu bytes)",
@@ -112,7 +113,7 @@ static bool info_resp_cb(GIsiClient *client, const void *restrict data,
 error:
 	CALLBACK_WITH_FAILURE(cb, "", cbd->data);
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 static void isi_query_manufacturer(struct ofono_devinfo *info,
@@ -227,7 +228,7 @@ static gboolean isi_devinfo_register(gpointer user)
 	return FALSE;
 }
 
-static void reachable_cb(GIsiClient *client, bool alive, uint16_t object,
+static void reachable_cb(GIsiClient *client, gboolean alive, uint16_t object,
 				void *opaque)
 {
 	struct ofono_devinfo *info = opaque;
diff --git a/drivers/isimodem/gprs-context.c b/drivers/isimodem/gprs-context.c
index df6ff79..1e1225b 100644
--- a/drivers/isimodem/gprs-context.c
+++ b/drivers/isimodem/gprs-context.c
@@ -124,7 +124,7 @@ static void destroy_context(struct context_data *cd)
 	g_free(cd);
 }
 
-static bool gprs_up_fail(struct context_data *cd)
+static gboolean gprs_up_fail(struct context_data *cd)
 {
 	struct ofono_gprs_context *gc = cd->driver;
 	struct gprs_context_data *gcd = ofono_gprs_context_get_data(gc);
@@ -134,10 +134,10 @@ static bool gprs_up_fail(struct context_data *cd)
 
 	gcd->contexts = g_slist_remove(gcd->contexts, cd);
 	destroy_context(cd);
-	return true;
+	return TRUE;
 }
 
-static bool gprs_down_fail(struct context_data *cd)
+static gboolean gprs_down_fail(struct context_data *cd)
 {
 	struct ofono_gprs_context *gc = cd->driver;
 	struct gprs_context_data *gcd = ofono_gprs_context_get_data(gc);
@@ -146,33 +146,33 @@ static bool gprs_down_fail(struct context_data *cd)
 
 	gcd->contexts = g_slist_remove(gcd->contexts, cd);
 	destroy_context(cd);
-	return true;
+	return TRUE;
 }
 
-static bool check_resp(GIsiClient *client,
-			const uint8_t *restrict msg, size_t len,
-			uint_fast8_t cmd, struct context_data *cd)
+static gboolean check_resp(GIsiClient *client,
+				const uint8_t *restrict msg, size_t len,
+				uint_fast8_t cmd, struct context_data *cd)
 {
 	if (!msg) {
 		DBG("ISI client error: %d", g_isi_client_error(client));
-		return false;
+		return FALSE;
 	}
 
 	if (len < 3) {
 		DBG("truncated message");
-		return false;
+		return FALSE;
 	}
 
 	if (msg[0] != cmd) {
 		DBG("unexpected message ID: %s (0x%02"PRIx8")",
 			gpds_message_id_name(msg[0]), msg[0]);
-		return false;
+		return FALSE;
 	}
 
 	if ((cd->handle != INVALID_ID && msg[1] != cd->handle)
 		|| (msg[1] == INVALID_ID)) {
 		DBG("invalid context ID: 0x%02"PRIx8, msg[1]);
-		return false;
+		return FALSE;
 	}
 
 	if (msg[2] != GPDS_OK) {
@@ -183,13 +183,14 @@ static bool check_resp(GIsiClient *client,
 			DBG("  fail cause: %s (0x%02"PRIx8")",
 				gpds_isi_cause_name(msg[3]), msg[3]);
 
-		return false;
+		return FALSE;
 	}
-	return true;
+	return TRUE;
 }
 
-static void activate_ind_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static void activate_ind_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	struct gprs_context_data *gcd = opaque;
 	struct context_data *cd;
@@ -278,9 +279,9 @@ error:
 	gprs_up_fail(cd);
 }
 
-static void activate_fail_ind_cb(GIsiClient *client, const void *restrict data,
-					size_t len, uint16_t object,
-					void *opaque)
+static void activate_fail_ind_cb(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct gprs_context_data *gcd = opaque;
@@ -298,8 +299,9 @@ static void activate_fail_ind_cb(GIsiClient *client, const void *restrict data,
 	gprs_up_fail(cd);
 }
 
-static bool context_activate_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean context_activate_cb(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object, void *opaque)
 {
 	struct context_data *cd = opaque;
 
@@ -308,10 +310,10 @@ static bool context_activate_cb(GIsiClient *client, const void *restrict data,
 
 	/* TODO: Add timeout here in case indications never come */
 
-	return true;
+	return TRUE;
 }
 
-static bool send_context_activate(GIsiClient *client, void *opaque)
+static void send_context_activate(GIsiClient *client, void *opaque)
 {
 	struct context_data *cd = opaque;
 
@@ -321,16 +323,16 @@ static bool send_context_activate(GIsiClient *client, void *opaque)
 		0,		/* sub blocks */
 	};
 
-	if (!g_isi_request_make(client, msg, sizeof(msg), GPDS_TIMEOUT,
+	if (g_isi_request_make(client, msg, sizeof(msg), GPDS_TIMEOUT,
 				context_activate_cb, cd))
-		return gprs_up_fail(cd);
-
-	g_isi_pipe_start(cd->pipe);
-	return true;
+		g_isi_pipe_start(cd->pipe);
+	else
+		gprs_up_fail(cd);
 }
 
-static bool context_auth_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean context_auth_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	struct context_data *cd = opaque;
 
@@ -338,10 +340,10 @@ static bool context_auth_cb(GIsiClient *client, const void *restrict data,
 		return gprs_up_fail(cd);
 
 	send_context_activate(client, cd);
-	return true;
+	return TRUE;
 }
 
-static bool send_context_authenticate(GIsiClient *client, void *opaque)
+static void send_context_authenticate(GIsiClient *client, void *opaque)
 {
 	struct context_data *cd = opaque;
 	size_t username_len = strlen(cd->username);
@@ -373,13 +375,12 @@ static bool send_context_authenticate(GIsiClient *client, void *opaque)
 
 	if (!g_isi_request_vmake(client, iov, 4, GPDS_TIMEOUT,
 					context_auth_cb, cd))
-		return gprs_up_fail(cd);
-
-	return true;
+		gprs_up_fail(cd);
 }
 
-static bool context_conf_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean context_conf_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	struct context_data *cd = opaque;
 
@@ -391,11 +392,12 @@ static bool context_conf_cb(GIsiClient *client, const void *restrict data,
 	else
 		send_context_activate(client, cd);
 
-	return true;
+	return TRUE;
 }
 
-static bool link_conf_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean link_conf_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	struct context_data *cd = opaque;
 	size_t apn_len = strlen(cd->apn);
@@ -428,11 +430,12 @@ static bool link_conf_cb(GIsiClient *client, const void *restrict data,
 					context_conf_cb, cd))
 		return gprs_up_fail(cd);
 
-	return true;
+	return TRUE;
 }
 
-static bool create_context_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean create_context_cb(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object, void *opaque)
 {
 	const unsigned char *resp = data;
 	struct context_data *cd = opaque;
@@ -455,7 +458,7 @@ static bool create_context_cb(GIsiClient *client, const void *restrict data,
 
 	/* TODO: send context configuration at the same time? */
 
-	return true;
+	return TRUE;
 }
 
 static void create_pipe_cb(GIsiPipe *pipe)
@@ -473,8 +476,9 @@ static void create_pipe_cb(GIsiPipe *pipe)
 		gprs_up_fail(cd);
 }
 
-static void deactivate_ind_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static void deactivate_ind_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	struct gprs_context_data *gcd = opaque;
 	struct context_data *cd;
@@ -559,8 +563,9 @@ error:
 	gprs_up_fail(cd);
 }
 
-static bool context_deactivate_cb(GIsiClient *client, const void *restrict data,
-					size_t len, uint16_t object,
+static gboolean context_deactivate_cb(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object,
 					void *opaque)
 {
 	struct context_data *cd = opaque;
@@ -575,7 +580,7 @@ static bool context_deactivate_cb(GIsiClient *client, const void *restrict data,
 	CALLBACK_WITH_SUCCESS(cd->down_cb, cd->data);
 	destroy_context(cd);
 
-	return true;
+	return TRUE;
 }
 
 static void isi_gprs_deactivate_primary(struct ofono_gprs_context *gc,
@@ -606,7 +611,7 @@ static void isi_gprs_deactivate_primary(struct ofono_gprs_context *gc,
 		gprs_down_fail(cd);
 }
 
-static void gpds_ctx_reachable_cb(GIsiClient *client, bool alive,
+static void gpds_ctx_reachable_cb(GIsiClient *client, gboolean alive,
 					uint16_t object,
 					void *opaque)
 {
diff --git a/drivers/isimodem/gprs.c b/drivers/isimodem/gprs.c
index 2aafd6d..3f79972 100644
--- a/drivers/isimodem/gprs.c
+++ b/drivers/isimodem/gprs.c
@@ -45,8 +45,9 @@ struct gprs_data {
 	GIsiClient *client;
 };
 
-static void detach_ind_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static void detach_ind_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	/*struct ofono_gprs *gprs = opaque;*/
 	const unsigned char *msg = data;
@@ -78,7 +79,8 @@ static gboolean isi_gprs_register(gpointer user)
 	return FALSE;
 }
 
-static void gpds_reachable_cb(GIsiClient *client, bool alive, uint16_t object,
+static void gpds_reachable_cb(GIsiClient *client,
+				gboolean alive, uint16_t object,
 				void *opaque)
 {
 	struct ofono_gprs *gprs = opaque;
@@ -132,8 +134,9 @@ static void isi_gprs_remove(struct ofono_gprs *gprs)
 	g_free(data);
 }
 
-static bool attach_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean attach_resp_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct isi_cb_data *cbd = opaque;
@@ -145,7 +148,7 @@ static bool attach_resp_cb(GIsiClient *client, const void *restrict data,
 	}
 
 	if (len != 4 || msg[0] != GPDS_ATTACH_RESP)
-		return false;
+		return FALSE;
 
 	if (msg[1] != GPDS_OK) {
 		DBG("attach failed: %s", gpds_status_name(msg[1]));
@@ -160,11 +163,12 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
-static bool detach_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean detach_resp_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct isi_cb_data *cbd = opaque;
@@ -176,7 +180,7 @@ static bool detach_resp_cb(GIsiClient *client, const void *restrict data,
 	}
 
 	if (len != 3 || msg[0] != GPDS_DETACH_RESP)
-		return false;
+		return FALSE;
 
 	if (msg[1] != GPDS_OK) {
 		DBG("detach failed: %s", gpds_status_name(msg[1]));
@@ -191,7 +195,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 static GIsiRequest *attach_request_make(GIsiClient *client, void *data)
@@ -241,8 +245,9 @@ error:
 	g_free(cbd);
 }
 
-static bool status_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean status_resp_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct isi_cb_data *cbd = opaque;
@@ -254,7 +259,7 @@ static bool status_resp_cb(GIsiClient *client, const void *restrict data,
 	}
 
 	if (len < 2 || msg[0] != GPDS_STATUS_RESP)
-		return false;
+		return FALSE;
 
 	/* FIXME: the core still expects reg status, and not a boolean
 	 * attached status here.*/
@@ -269,7 +274,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 static void isi_gprs_attached_status(struct ofono_gprs *gprs,
diff --git a/drivers/isimodem/infoserver.c b/drivers/isimodem/infoserver.c
index 35dd98d..9100485 100644
--- a/drivers/isimodem/infoserver.c
+++ b/drivers/isimodem/infoserver.c
@@ -43,7 +43,7 @@ struct isi_infoserver {
 	unsigned sv;	/* Software version in 0..98 */
 };
 
-static bool serial_number_read_req(GIsiServer *server, void const *data,
+static gboolean serial_number_read_req(GIsiServer *server, void const *data,
 					size_t len, GIsiIncoming *irq,
 					void *opaque)
 {
diff --git a/drivers/isimodem/isimodem.c b/drivers/isimodem/isimodem.c
index 9a5e87e..05ebfe2 100644
--- a/drivers/isimodem/isimodem.c
+++ b/drivers/isimodem/isimodem.c
@@ -96,8 +96,9 @@ static void set_power_by_mtc_state(struct isi_data *isi, int state)
 	}
 }
 
-static void mtc_state_ind_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static void mtc_state_ind_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct isi_data *isi = opaque;
@@ -120,8 +121,9 @@ static void mtc_state_ind_cb(GIsiClient *client, const void *restrict data,
 	}
 }
 
-static bool mtc_poll_query_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean mtc_poll_query_cb(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct isi_data *isi = opaque;
@@ -132,7 +134,7 @@ static bool mtc_poll_query_cb(GIsiClient *client, const void *restrict data,
 		};
 
 		if (isi->linkstate != PN_LINK_UP)
-			return true;
+			return TRUE;
 
 		isi->interval *= 2;
 		if (isi->interval >= 20)
@@ -142,11 +144,11 @@ static bool mtc_poll_query_cb(GIsiClient *client, const void *restrict data,
 					isi->interval,
 					mtc_poll_query_cb, opaque);
 
-		return true;
+		return TRUE;
 	}
 
 	if (len < 3 || msg[0] != MTC_STATE_QUERY_RESP)
-		return false;
+		return FALSE;
 
 	g_isi_subscribe(client, MTC_STATE_INFO_IND, mtc_state_ind_cb, opaque);
 
@@ -157,22 +159,23 @@ static bool mtc_poll_query_cb(GIsiClient *client, const void *restrict data,
 
 	set_power_by_mtc_state(isi, msg[1]);
 
-	return true;
+	return TRUE;
 }
 
-static bool mtc_query_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean mtc_query_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct isi_data *isi = opaque;
 
 	if (!msg) {
 		DBG("ISI client error: %d", g_isi_client_error(client));
-		return true;
+		return TRUE;
 	}
 
 	if (len < 3 || msg[0] != MTC_STATE_QUERY_RESP)
-		return false;
+		return FALSE;
 
 	DBG("current modem state: %s (0x%02X)",
 		mtc_modem_state_name(msg[1]), msg[1]);
@@ -181,10 +184,10 @@ static bool mtc_query_cb(GIsiClient *client, const void *restrict data,
 
 	set_power_by_mtc_state(isi, msg[1]);
 
-	return true;
+	return TRUE;
 }
 
-static void reachable_cb(GIsiClient *client, bool alive, uint16_t object,
+static void reachable_cb(GIsiClient *client, gboolean alive, uint16_t object,
 				void *opaque)
 {
 	struct isi_data *isi = opaque;
diff --git a/drivers/isimodem/network-registration.c b/drivers/isimodem/network-registration.c
index 75dd6bc..4898d42 100644
--- a/drivers/isimodem/network-registration.c
+++ b/drivers/isimodem/network-registration.c
@@ -181,8 +181,9 @@ static gboolean decode_reg_status(struct netreg_data *nd, const guint8 *msg,
 	return TRUE;
 }
 
-static void reg_status_ind_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static void reg_status_ind_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct ofono_netreg *netreg = opaque;
@@ -202,8 +203,9 @@ static void reg_status_ind_cb(GIsiClient *client, const void *restrict data,
 	}
 }
 
-static bool reg_status_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean reg_status_resp_cb(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct isi_cb_data *cbd = opaque;
@@ -222,7 +224,7 @@ static bool reg_status_resp_cb(GIsiClient *client, const void *restrict data,
 	}
 
 	if (len < 3 || msg[0] != NET_REG_STATUS_GET_RESP)
-		return false;
+		return FALSE;
 
 	if (msg[1] != NET_CAUSE_OK) {
 		DBG("Request failed: %s", net_isi_cause_name(msg[1]));
@@ -241,7 +243,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 static void isi_registration_status(struct ofono_netreg *netreg,
@@ -268,8 +270,9 @@ error:
 	g_free(cbd);
 }
 
-static bool name_get_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean name_get_resp_cb(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct isi_cb_data *cbd = opaque;
@@ -288,7 +291,7 @@ static bool name_get_resp_cb(GIsiClient *client, const void *restrict data,
 	}
 
 	if (len < 3 || msg[0] != NET_OPER_NAME_READ_RESP)
-		return false;
+		return FALSE;
 
 	if (msg[1] != NET_CAUSE_OK) {
 		DBG("Request failed: %s", net_isi_cause_name(msg[1]));
@@ -339,7 +342,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 
@@ -373,8 +376,9 @@ error:
 }
 
 
-static bool available_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean available_resp_cb(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct isi_cb_data *cbd = opaque;
@@ -392,7 +396,7 @@ static bool available_resp_cb(GIsiClient *client, const void *restrict data,
 	}
 
 	if (len < 3 || msg[0] != NET_AVAILABLE_GET_RESP)
-		return false;
+		return FALSE;
 
 	if (msg[1] != NET_CAUSE_OK) {
 		DBG("Request failed: %s", net_isi_cause_name(msg[1]));
@@ -460,7 +464,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 static void isi_list_operators(struct ofono_netreg *netreg,
@@ -493,8 +497,9 @@ error:
 	g_free(cbd);
 }
 
-static bool set_auto_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean set_auto_resp_cb(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct isi_cb_data *cbd = opaque;
@@ -507,7 +512,7 @@ static bool set_auto_resp_cb(GIsiClient *client, const void *restrict data,
 	}
 
 	if (!msg || len < 3 || msg[0] != NET_SET_RESP)
-		return false;
+		return FALSE;
 
 	if (msg[1] != NET_CAUSE_OK) {
 		DBG("Request failed: %s", net_isi_cause_name(msg[1]));
@@ -523,7 +528,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 static void isi_register_auto(struct ofono_netreg *netreg,
@@ -558,8 +563,9 @@ error:
 	g_free(cbd);
 }
 
-static bool set_manual_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean set_manual_resp_cb(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct isi_cb_data *cbd = opaque;
@@ -573,7 +579,7 @@ static bool set_manual_resp_cb(GIsiClient *client, const void *restrict data,
 	}
 
 	if (len < 3 || msg[0] != NET_SET_RESP)
-		return false;
+		return FALSE;
 
 	if (msg[1] != NET_CAUSE_OK) {
 		DBG("Request failed: %s", net_isi_cause_name(msg[1]));
@@ -589,7 +595,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 static void isi_register_manual(struct ofono_netreg *netreg,
@@ -638,8 +644,9 @@ static void isi_deregister(struct ofono_netreg *netreg,
 	CALLBACK_WITH_FAILURE(cb, data);
 }
 
-static void rat_ind_cb(GIsiClient *client, const void *restrict data,
-			size_t len, uint16_t object, void *opaque)
+static void rat_ind_cb(GIsiClient *client,
+			const void *restrict data, size_t len,
+			uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct ofono_netreg *netreg = opaque;
@@ -682,8 +689,9 @@ static void rat_ind_cb(GIsiClient *client, const void *restrict data,
 	}
 }
 
-static bool rat_resp_cb(GIsiClient *client, const void *restrict data,
-			size_t len, uint16_t object, void *opaque)
+static gboolean rat_resp_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct ofono_netreg *netreg = opaque;
@@ -693,15 +701,15 @@ static bool rat_resp_cb(GIsiClient *client, const void *restrict data,
 
 	if (!msg) {
 		DBG("ISI client error: %d", g_isi_client_error(client));
-		return true;
+		return TRUE;
 	}
 
 	if (len < 3 || msg[0] != NET_RAT_RESP)
-		return false;
+		return FALSE;
 
 	if (msg[1] != NET_CAUSE_OK) {
 		DBG("Request failed: %s", net_isi_cause_name(msg[1]));
-		return true;
+		return TRUE;
 	}
 
 	g_isi_sb_iter_init(&iter, msg, len, 3);
@@ -718,7 +726,7 @@ static bool rat_resp_cb(GIsiClient *client, const void *restrict data,
 				|| !info
 				|| !g_isi_sb_iter_get_byte(&iter,
 							&nd->gsm_compact, 4))
-				return true;
+				return TRUE;
 
 			break;
 		}
@@ -731,11 +739,12 @@ static bool rat_resp_cb(GIsiClient *client, const void *restrict data,
 		}
 		g_isi_sb_iter_next(&iter);
 	}
-	return true;
+	return TRUE;
 }
 
-static void rssi_ind_cb(GIsiClient *client, const void *restrict data,
-			size_t len, uint16_t object, void *opaque)
+static void rssi_ind_cb(GIsiClient *client,
+			const void *restrict data, size_t len,
+			uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct ofono_netreg *netreg = opaque;
@@ -746,8 +755,9 @@ static void rssi_ind_cb(GIsiClient *client, const void *restrict data,
 	ofono_netreg_strength_notify(netreg, msg[1]);
 }
 
-static void time_ind_cb(GIsiClient *client, const void *restrict data,
-			size_t len, uint16_t object, void *opaque)
+static void time_ind_cb(GIsiClient *client,
+			const void *restrict data, size_t len,
+			uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	const unsigned char *nitz = msg + 3;
@@ -784,8 +794,9 @@ static void time_ind_cb(GIsiClient *client, const void *restrict data,
 	ofono_netreg_time_notify(netreg, &info);
 }
 
-static bool rssi_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean rssi_resp_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct isi_cb_data *cbd = opaque;
@@ -800,7 +811,7 @@ static bool rssi_resp_cb(GIsiClient *client, const void *restrict data,
 	}
 
 	if (len < 3 || msg[0] != NET_RSSI_GET_RESP)
-		return false;
+		return FALSE;
 
 	if (msg[1] != NET_CAUSE_OK) {
 		DBG("Request failed: %s (0x%02X)",
@@ -841,7 +852,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 static void isi_strength(struct ofono_netreg *netreg,
@@ -902,7 +913,7 @@ static gboolean isi_netreg_register(gpointer user)
 	return FALSE;
 }
 
-static void reachable_cb(GIsiClient *client, bool alive, uint16_t object,
+static void reachable_cb(GIsiClient *client, gboolean alive, uint16_t object,
 				void *opaque)
 {
 	struct ofono_netreg *netreg = opaque;
diff --git a/drivers/isimodem/phonebook.c b/drivers/isimodem/phonebook.c
index 16f9a19..9151111 100644
--- a/drivers/isimodem/phonebook.c
+++ b/drivers/isimodem/phonebook.c
@@ -68,7 +68,7 @@ static int decode_read_response(const unsigned char *msg, size_t len,
 	if (msg[1] != SIM_PB_READ)
 		goto error;
 
-	for (g_isi_sb_iter_init_full(&iter, msg, len, 3, true, msg[2]);
+	for (g_isi_sb_iter_init_full(&iter, msg, len, 3, TRUE, msg[2]);
 	     g_isi_sb_iter_is_valid(&iter);
 	     g_isi_sb_iter_next(&iter)) {
 
@@ -206,8 +206,9 @@ error:
 	g_free(cbd);
 }
 
-static bool read_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean read_resp_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct isi_cb_data *cbd = opaque;
@@ -222,7 +223,7 @@ static bool read_resp_cb(GIsiClient *client, const void *restrict data,
 	location = decode_read_response(data, len, cbd->user);
 	if (location != -1) {
 		read_next_entry(client, location, read_resp_cb, cbd);
-		return true;
+		return TRUE;
 	}
 
 	CALLBACK_WITH_SUCCESS(cb, cbd->data);
@@ -233,7 +234,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 static void isi_export_entries(struct ofono_phonebook *pb, const char *storage,
@@ -286,7 +287,7 @@ static gboolean isi_phonebook_register(gpointer user)
 	return FALSE;
 }
 
-static void reachable_cb(GIsiClient *client, bool alive, uint16_t object,
+static void reachable_cb(GIsiClient *client, gboolean alive, uint16_t object,
 				void *opaque)
 {
 	struct ofono_phonebook *pb = opaque;
diff --git a/drivers/isimodem/radio-settings.c b/drivers/isimodem/radio-settings.c
index fe1e0db..f1b7632 100644
--- a/drivers/isimodem/radio-settings.c
+++ b/drivers/isimodem/radio-settings.c
@@ -76,8 +76,9 @@ static int ofono_mode_to_isi_mode(enum ofono_radio_access_mode mode)
 	}
 }
 
-static bool rat_mode_read_resp_cb(GIsiClient *client, const void *restrict data,
-					size_t len, uint16_t object,
+static gboolean rat_mode_read_resp_cb(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object,
 					void *opaque)
 {
 	const unsigned char *msg = data;
@@ -92,7 +93,7 @@ static bool rat_mode_read_resp_cb(GIsiClient *client, const void *restrict data,
 
 	if (len < 3) {
 		DBG("truncated message");
-		return false;
+		return FALSE;
 	}
 
 	if (msg[0] == GSS_CS_SERVICE_FAIL_RESP)
@@ -130,14 +131,14 @@ static bool rat_mode_read_resp_cb(GIsiClient *client, const void *restrict data,
 		goto out;
 	}
 
-	return false;
+	return FALSE;
 
 error:
 	CALLBACK_WITH_FAILURE(cb, -1, cbd->data);
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 static void isi_query_rat_mode(struct ofono_radio_settings *rs,
@@ -165,8 +166,9 @@ error:
 	g_free(cbd);
 }
 
-static bool mode_write_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean mode_write_resp_cb(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct isi_cb_data *cbd = opaque;
@@ -179,7 +181,7 @@ static bool mode_write_resp_cb(GIsiClient *client, const void *restrict data,
 
 	if (len < 3) {
 		DBG("truncated message");
-		return false;
+		return FALSE;
 	}
 
 	if (msg[0] == GSS_CS_SERVICE_FAIL_RESP)
@@ -190,14 +192,14 @@ static bool mode_write_resp_cb(GIsiClient *client, const void *restrict data,
 		goto out;
 	}
 
-	return false;
+	return FALSE;
 
 error:
 	CALLBACK_WITH_FAILURE(cb, cbd->data);
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 static void isi_set_rat_mode(struct ofono_radio_settings *rs,
@@ -250,7 +252,7 @@ static gboolean isi_radio_settings_register(gpointer user)
 	return FALSE;
 }
 
-static void reachable_cb(GIsiClient *client, bool alive, uint16_t object,
+static void reachable_cb(GIsiClient *client, gboolean alive, uint16_t object,
 				void *opaque)
 {
 	struct ofono_radio_settings *rs = opaque;
diff --git a/drivers/isimodem/sim.c b/drivers/isimodem/sim.c
index eb88811..e2ea275 100644
--- a/drivers/isimodem/sim.c
+++ b/drivers/isimodem/sim.c
@@ -45,7 +45,7 @@
 
 struct sim_data {
 	GIsiClient *client;
-	bool registered;
+	gboolean registered;
 };
 
 struct file_info {
@@ -94,8 +94,9 @@ static void isi_read_file_info(struct ofono_sim *sim, int fileid,
 	CALLBACK_WITH_FAILURE(cb, -1, -1, -1, NULL, data);
 }
 
-static bool spn_resp_cb(GIsiClient *client, const void *restrict data,
-			size_t len, uint16_t object, void *opaque)
+static gboolean spn_resp_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct isi_cb_data *cbd = opaque;
@@ -111,7 +112,7 @@ static bool spn_resp_cb(GIsiClient *client, const void *restrict data,
 
 	if (len < 39 || msg[0] != SIM_SERV_PROV_NAME_RESP
 		|| msg[1] != SIM_ST_READ_SERV_PROV_NAME)
-		return false;
+		return FALSE;
 
 	if (msg[2] != SIM_SERV_OK) {
 		DBG("Request failed: %s (0x%02X)",
@@ -141,10 +142,10 @@ done:
 		CALLBACK_WITH_FAILURE(cb, NULL, 0, cbd->data);
 
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
-static bool isi_read_spn(struct ofono_sim *sim, struct isi_cb_data *cbd)
+static gboolean isi_read_spn(struct ofono_sim *sim, struct isi_cb_data *cbd)
 {
 	struct sim_data *sd = ofono_sim_get_data(sim);
 
@@ -158,8 +159,9 @@ static bool isi_read_spn(struct ofono_sim *sim, struct isi_cb_data *cbd)
 					SIM_TIMEOUT, spn_resp_cb, cbd) != NULL;
 }
 
-static bool read_iccid_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *user)
+static gboolean read_iccid_resp_cb(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object, void *user)
 {
 	struct isi_cb_data *cbd = user;
 	ofono_sim_read_cb_t cb = cbd->cb;
@@ -172,7 +174,7 @@ static bool read_iccid_resp_cb(GIsiClient *client, const void *restrict data,
 	}
 
 	if (len < 3 || msg[0] != SIM_READ_FIELD_RESP || msg[1] != ICC)
-		return false;
+		return FALSE;
 
 	if (msg[2] == SIM_SERV_OK && len >= 13)
 		iccid = msg + 3;
@@ -186,10 +188,10 @@ done:
 		CALLBACK_WITH_FAILURE(cb, NULL, 0, cbd->data);
 
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
-static bool isi_read_iccid(struct ofono_sim *sim, struct isi_cb_data *cbd)
+static gboolean isi_read_iccid(struct ofono_sim *sim, struct isi_cb_data *cbd)
 {
 	struct sim_data *sd = ofono_sim_get_data(sim);
 	const unsigned char req[] = { SIM_READ_FIELD_REQ, ICC };
@@ -269,8 +271,9 @@ static void isi_write_file_cyclic(struct ofono_sim *sim, int fileid,
 	CALLBACK_WITH_FAILURE(cb, data);
 }
 
-static bool imsi_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean imsi_resp_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct isi_cb_data *cbd = opaque;
@@ -320,7 +323,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 static void isi_read_imsi(struct ofono_sim *sim,
@@ -351,30 +354,31 @@ static void isi_sim_register(struct ofono_sim *sim)
 	struct sim_data *sd = ofono_sim_get_data(sim);
 
 	if (!sd->registered) {
-		sd->registered = true;
+		sd->registered = TRUE;
 		ofono_sim_register(sim);
 		ofono_sim_inserted_notify(sim, TRUE);
 	}
 }
 
-static bool read_hplmn_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean read_hplmn_resp_cb(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct ofono_sim *sim = opaque;
 
 	if (!msg) {
 		DBG("ISI client error: %d", g_isi_client_error(client));
-		return true;
+		return TRUE;
 	}
 
 	if (len < 3 || msg[0] != SIM_NETWORK_INFO_RESP || msg[1] != READ_HPLMN)
-		return false;
+		return FALSE;
 
 	if (msg[2] != SIM_SERV_NOTREADY)
 		isi_sim_register(sim);
 
-	return true;
+	return TRUE;
 }
 
 
@@ -391,8 +395,9 @@ static void isi_read_hplmn(struct ofono_sim *sim)
 				read_hplmn_resp_cb, sim);
 }
 
-static void sim_ind_cb(GIsiClient *client, const void *restrict data,
-			size_t len, uint16_t object, void *opaque)
+static void sim_ind_cb(GIsiClient *client,
+			const void *restrict data, size_t len,
+			uint16_t object, void *opaque)
 {
 	struct ofono_sim *sim = opaque;
 	struct sim_data *sd = ofono_sim_get_data(sim);
@@ -411,7 +416,7 @@ static void sim_ind_cb(GIsiClient *client, const void *restrict data,
 	}
 }
 
-static void sim_reachable_cb(GIsiClient *client, bool alive,
+static void sim_reachable_cb(GIsiClient *client, gboolean alive,
 				uint16_t object, void *opaque)
 {
 	struct ofono_sim *sim = opaque;
diff --git a/drivers/isimodem/sms.c b/drivers/isimodem/sms.c
index 768d38b..1d69dbb 100644
--- a/drivers/isimodem/sms.c
+++ b/drivers/isimodem/sms.c
@@ -51,8 +51,9 @@ struct sms_data {
 	GIsiClient *sim;
 };
 
-static bool sca_query_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean sca_query_resp_cb(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object, void *opaque)
 {
 	const uint8_t *msg = data;
 	struct isi_cb_data *cbd = opaque;
@@ -68,7 +69,7 @@ static bool sca_query_resp_cb(GIsiClient *client, const void *restrict data,
 	}
 
 	if (len < 31 || msg[0] != SIM_SMS_RESP || msg[1] != READ_PARAMETER)
-		return false;
+		return FALSE;
 
 	if (msg[3] != SIM_SERV_OK)
 		goto error;
@@ -95,7 +96,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 static void isi_sca_query(struct ofono_sms *sms,
@@ -122,8 +123,9 @@ error:
 	g_free(cbd);
 }
 
-static bool sca_set_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean sca_set_resp_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const uint8_t *msg = data;
 	struct isi_cb_data *cbd = opaque;
@@ -135,7 +137,7 @@ static bool sca_set_resp_cb(GIsiClient *client, const void *restrict data,
 	}
 
 	if (len < 3 || msg[0] != SIM_SMS_RESP || msg[1] != UPDATE_PARAMETER)
-		return false;
+		return FALSE;
 
 	if (msg[2] != SIM_SERV_OK)
 		goto error;
@@ -148,7 +150,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 static void isi_sca_set(struct ofono_sms *sms,
@@ -191,8 +193,9 @@ error:
 	g_free(cbd);
 }
 
-static bool submit_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean submit_resp_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const uint8_t *msg = data;
 	struct isi_cb_data *cbd = opaque;
@@ -207,7 +210,7 @@ static bool submit_resp_cb(GIsiClient *client, const void *restrict data,
 	}
 
 	if (len < 3 || msg[0] != SMS_MESSAGE_SEND_RESP)
-		return false;
+		return FALSE;
 
 	for (g_isi_sb_iter_init(&iter, msg, len, 3);
 		g_isi_sb_iter_is_valid(&iter);
@@ -257,7 +260,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 static void isi_submit(struct ofono_sms *sms, unsigned char *pdu,
@@ -322,8 +325,9 @@ error:
 	g_free(cbd);
 }
 
-static void send_status_ind_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static void send_status_ind_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const uint8_t *msg = data;
 
@@ -337,24 +341,25 @@ static void send_status_ind_cb(GIsiClient *client, const void *restrict data,
 	DBG("TODO: Status notification");
 }
 
-static bool report_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean report_resp_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const uint8_t *msg = data;
 
 	if (!msg) {
 		DBG("ISI client error: %d", g_isi_client_error(client));
-		return true;
+		return TRUE;
 	}
 
 	if (len < 3 || msg[0] != SMS_GSM_RECEIVED_PP_REPORT_RESP)
-		return false;
+		return FALSE;
 
 	DBG("Report resp cause=0x%"PRIx8, msg[1]);
-	return true;
+	return TRUE;
 }
 
-static bool send_deliver_report(GIsiClient *client, bool success)
+static gboolean send_deliver_report(GIsiClient *client, gboolean success)
 {
 	uint8_t cause_type = !success ? SMS_CAUSE_TYPE_GSM : 0;
 	uint8_t cause = !success ? SMS_GSM_ERR_MEMORY_CAPACITY_EXC : 0;
@@ -374,11 +379,12 @@ static bool send_deliver_report(GIsiClient *client, bool success)
 	};
 
 	return g_isi_request_make(client, msg, sizeof(msg), SMS_TIMEOUT,
-					report_resp_cb, NULL);
+					report_resp_cb, NULL) != NULL;
 }
 
-static void routing_ntf_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static void routing_ntf_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const uint8_t *msg = data;
 	struct ofono_sms *sms = opaque;
@@ -446,11 +452,12 @@ static void routing_ntf_cb(GIsiClient *client, const void *restrict data,
 	 * reliably stored, i.e., written to disk. Currently, there is
 	 * no such indication from core, so we just blindly trust that
 	 * it did The Right Thing here. */
-	send_deliver_report(client, true);
+	send_deliver_report(client, TRUE);
 }
 
-static bool routing_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean routing_resp_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct ofono_sms *sms = opaque;
@@ -476,17 +483,17 @@ static bool routing_resp_cb(GIsiClient *client, const void *restrict data,
 				msg[1], sms_isi_cause_name(msg[1]));
 			ofono_sms_register(sms);
 		}
-		return true;
+		return TRUE;
 	}
 
 	g_isi_subscribe(client, SMS_PP_ROUTING_NTF, routing_ntf_cb, sms);
 
 	ofono_sms_register(sms);
-	return true;
+	return TRUE;
 
 error:
 	DBG("Unable to bootstrap SMS routing.");
-	return true;
+	return TRUE;
 }
 
 static int isi_sms_probe(struct ofono_sms *sms, unsigned int vendor,
diff --git a/drivers/isimodem/ussd.c b/drivers/isimodem/ussd.c
index a8bbace..8be20b6 100644
--- a/drivers/isimodem/ussd.c
+++ b/drivers/isimodem/ussd.c
@@ -118,8 +118,9 @@ out:
 }
 
 
-static bool ussd_send_resp_cb(GIsiClient *client, const void *restrict data,
-				size_t len, uint16_t object, void *opaque)
+static gboolean ussd_send_resp_cb(GIsiClient *client,
+					const void *restrict data, size_t len,
+					uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct isi_cb_data *cbd = opaque;
@@ -131,13 +132,13 @@ static bool ussd_send_resp_cb(GIsiClient *client, const void *restrict data,
 	}
 
 	if (len < 3)
-		return false;
+		return FALSE;
 
 	if (msg[0] == SS_SERVICE_FAILED_RESP)
 		goto error;
 
 	if (len < 4 || msg[0] != SS_GSM_USSD_SEND_RESP)
-		return false;
+		return FALSE;
 
 	CALLBACK_WITH_SUCCESS(cb, cbd->data);
 
@@ -149,7 +150,7 @@ error:
 
 out:
 	g_free(cbd);
-	return true;
+	return TRUE;
 }
 
 static GIsiRequest *ussd_send_make(GIsiClient *client, uint8_t *str,
@@ -233,8 +234,9 @@ error:
 	g_free(cbd);
 }
 
-static void ussd_ind_cb(GIsiClient *client, const void *restrict data,
-			size_t len, uint16_t object, void *opaque)
+static void ussd_ind_cb(GIsiClient *client,
+			const void *restrict data, size_t len,
+			uint16_t object, void *opaque)
 {
 	const unsigned char *msg = data;
 	struct ofono_ussd *ussd = opaque;
@@ -261,7 +263,8 @@ static gboolean isi_ussd_register(gpointer user)
 	return FALSE;
 }
 
-static void ussd_reachable_cb(GIsiClient *client, bool alive, uint16_t object,
+static void ussd_reachable_cb(GIsiClient *client,
+				gboolean alive, uint16_t object,
 				void *opaque)
 {
 	struct ofono_ussd *ussd = opaque;
diff --git a/drivers/isimodem/voicecall.c b/drivers/isimodem/voicecall.c
index 90106ee..44ffe96 100644
--- a/drivers/isimodem/voicecall.c
+++ b/drivers/isimodem/voicecall.c
@@ -75,12 +75,12 @@ typedef void GIsiIndication (GIsiClient *client,
 		const void *restrict data, size_t len,
 		uint16_t object, void *opaque);
 
-typedef void GIsiVerify (GIsiClient *client, bool alive, uint16_t object,
+typedef void GIsiVerify(GIsiClient *client, gboolean alive, uint16_t object,
 				void *opaque);
 
-typedef bool GIsiResponse(GIsiClient *client,
-			  void const * restrict data, size_t len,
-			  uint16_t object, void *opaque);
+typedef gboolean GIsiResponse(GIsiClient *client,
+				void const *restrict data, size_t len,
+				uint16_t object, void *opaque);
 
 static GIsiVerify isi_call_verify_cb;
 static gboolean isi_call_register(gpointer);
@@ -171,12 +171,12 @@ static void isi_ctx_free(struct isi_call_req_context *irc)
 	}
 }
 
-static bool isi_ctx_return(struct isi_call_req_context *irc,
-			   enum ofono_error_type type,
-			   int error)
+static gboolean isi_ctx_return(struct isi_call_req_context *irc,
+				enum ofono_error_type type,
+				int error)
 {
 	if (!irc)
-		return true;
+		return TRUE;
 
 	if (irc->cb) {
 		struct ofono_error e = { .type = type, .error = error };
@@ -185,19 +185,19 @@ static bool isi_ctx_return(struct isi_call_req_context *irc,
 
 	isi_ctx_free(irc);
 
-	return true;
+	return TRUE;
 }
 
-static bool isi_ctx_return_failure(struct isi_call_req_context *irc)
+static gboolean isi_ctx_return_failure(struct isi_call_req_context *irc)
 {
 	return isi_ctx_return(irc, OFONO_ERROR_TYPE_FAILURE, 0);
 }
 
-static bool isi_ctx_return_success(struct isi_call_req_context *irc)
+static gboolean isi_ctx_return_success(struct isi_call_req_context *irc)
 {
 	if (irc && irc->step) {
 		irc->step(irc, 0);
-		return true;
+		return TRUE;
 	}
 
 	return isi_ctx_return(irc, OFONO_ERROR_TYPE_NO_ERROR, 0);
@@ -408,22 +408,22 @@ isi_call_create_req(struct ofono_voicecall *ovc,
 	return isi_call_req(ovc, req, rlen, isi_call_create_resp, cb, data);
 }
 
-static bool isi_call_create_resp(GIsiClient *client,
-				 void const * restrict data,
-				 size_t len,
-				 uint16_t object,
-				 void *irc)
+static gboolean isi_call_create_resp(GIsiClient *client,
+					void const *restrict data,
+					size_t len,
+					uint16_t object,
+					void *irc)
 {
 	struct {
 		uint8_t message_id, call_id, sub_blocks;
 	} const *m = data;
 
 	if (m != NULL && len < (sizeof *m))
-		return false;
+		return FALSE;
 	if (m == NULL || m->message_id == CALL_COMMON_MESSAGE)
 		return isi_ctx_return_failure(irc);
 	if (m->message_id != CALL_CREATE_RESP)
-		return false;
+		return FALSE;
 
 	if (m->call_id != CALL_ID_NONE && m->sub_blocks == 0)
 		return isi_ctx_return_success(irc);
@@ -518,22 +518,22 @@ isi_call_answer_req(struct ofono_voicecall *ovc,
 	return isi_call_req(ovc, req, rlen, isi_call_answer_resp, cb, data);
 }
 
-static bool isi_call_answer_resp(GIsiClient *client,
-				 void const * restrict data,
-				 size_t len,
-				 uint16_t object,
-				 void *irc)
+static gboolean isi_call_answer_resp(GIsiClient *client,
+					void const *restrict data,
+					size_t len,
+					uint16_t object,
+					void *irc)
 {
 	struct {
 		uint8_t message_id, call_id, sub_blocks;
 	} const *m = data;
 
 	if (m != NULL && len < (sizeof *m))
-		return false;
+		return FALSE;
 	if (m == NULL || m->message_id == CALL_COMMON_MESSAGE)
 		return isi_ctx_return_failure(irc);
 	if (m->message_id != CALL_ANSWER_RESP)
-		return false;
+		return FALSE;
 
 	if (m->call_id != CALL_ID_NONE && m->sub_blocks == 0)
 		return isi_ctx_return_success(irc);
@@ -559,11 +559,11 @@ isi_call_release_req(struct ofono_voicecall *ovc,
 	return isi_call_req(ovc, req, rlen, isi_call_release_resp, cb, data);
 }
 
-static bool isi_call_release_resp(GIsiClient *client,
-				     void const * restrict data,
-				     size_t len,
-				     uint16_t object,
-				     void *irc)
+static gboolean isi_call_release_resp(GIsiClient *client,
+					void const *restrict data,
+					size_t len,
+					uint16_t object,
+					void *irc)
 {
 	struct {
 		uint8_t message_id, call_id, sub_blocks;
@@ -572,11 +572,11 @@ static bool isi_call_release_resp(GIsiClient *client,
 	uint8_t cause_type = 0, cause = 0;
 
 	if (m != NULL && len < (sizeof *m))
-		return false;
+		return FALSE;
 	if (m == NULL || m->message_id == CALL_COMMON_MESSAGE)
 		return isi_ctx_return_failure(irc);
 	if (m->message_id != CALL_RELEASE_RESP)
-		return false;
+		return FALSE;
 
 	for (g_isi_sb_iter_init(i, m, len, (sizeof *m));
 	     g_isi_sb_iter_is_valid(i);
@@ -613,11 +613,11 @@ isi_call_status_req(struct ofono_voicecall *ovc,
 }
 
 
-static bool isi_call_status_resp(GIsiClient *client,
-				 void const * restrict data,
-				 size_t len,
-				 uint16_t object,
-				 void *_irc)
+static gboolean isi_call_status_resp(GIsiClient *client,
+					void const *restrict data,
+					size_t len,
+					uint16_t object,
+					void *_irc)
 {
 	struct isi_call_req_context *irc = _irc;
 	struct ofono_voicecall *ovc = irc->ovc;
@@ -629,11 +629,11 @@ static bool isi_call_status_resp(GIsiClient *client,
 	struct isi_call *call = NULL;
 
 	if (m != NULL && len < (sizeof *m))
-		return false;
+		return FALSE;
 	if (m == NULL || m->message_id == CALL_COMMON_MESSAGE)
 		return isi_ctx_return_failure(irc);
 	if (m->message_id != CALL_STATUS_RESP)
-		return false;
+		return FALSE;
 
 	for (g_isi_sb_iter_init(sb, m, len, (sizeof *m));
 	     g_isi_sb_iter_is_valid(sb);
@@ -701,7 +701,7 @@ isi_call_deflect_req(struct ofono_voicecall *ovc,
 
 	if (addr_len > 20) {
 		CALLBACK_WITH_FAILURE(cb, data);
-		return false;
+		return FALSE;
 	}
 
 	for (i = 0; i < addr_len; i++)
@@ -710,11 +710,11 @@ isi_call_deflect_req(struct ofono_voicecall *ovc,
 	return isi_call_req(ovc, req, rlen, isi_call_control_resp, cb, data);
 }
 
-static bool isi_call_control_resp(GIsiClient *client,
-				  void const * restrict data,
-				  size_t len,
-				  uint16_t object,
-				  void *irc)
+static gboolean isi_call_control_resp(GIsiClient *client,
+					void const *restrict data,
+					size_t len,
+					uint16_t object,
+					void *irc)
 {
 	struct {
 		uint8_t message_id, call_id, sub_blocks;
@@ -723,11 +723,11 @@ static bool isi_call_control_resp(GIsiClient *client,
 	uint8_t cause_type = 0, cause = 0;
 
 	if (m != NULL && len < sizeof *m)
-		return false;
+		return FALSE;
 	if (m == NULL || m->message_id == CALL_COMMON_MESSAGE)
 		return isi_ctx_return_failure(irc);
 	if (m->message_id != CALL_CONTROL_RESP)
-		return false;
+		return FALSE;
 
 	for (g_isi_sb_iter_init(i, m, len, (sizeof *m));
 	     g_isi_sb_iter_is_valid(i);
@@ -770,7 +770,7 @@ isi_call_dtmf_send_req(struct ofono_voicecall *ovc,
 
 	if (sub_len >= 256) {
 		CALLBACK_WITH_FAILURE(cb, data);
-		return false;
+		return FALSE;
 	}
 
 	for (i = 0; i < str_len; i++)
@@ -779,11 +779,11 @@ isi_call_dtmf_send_req(struct ofono_voicecall *ovc,
 	return isi_call_req(ovc, req, rlen, isi_call_dtmf_send_resp, cb, data);
 }
 
-static bool isi_call_dtmf_send_resp(GIsiClient *client,
-				    void const * restrict data,
-				    size_t len,
-				    uint16_t object,
-				    void *irc)
+static gboolean isi_call_dtmf_send_resp(GIsiClient *client,
+					void const *restrict data,
+					size_t len,
+					uint16_t object,
+					void *irc)
 {
 	struct {
 		uint8_t message_id, call_id, sub_blocks;
@@ -792,11 +792,11 @@ static bool isi_call_dtmf_send_resp(GIsiClient *client,
 	uint8_t cause_type = 0, cause = 0;
 
 	if (m != NULL && len < (sizeof *m))
-		return false;
+		return FALSE;
 	if (m == NULL || m->message_id == CALL_COMMON_MESSAGE)
 		return isi_ctx_return_failure(irc);
 	if (m->message_id != CALL_DTMF_SEND_RESP)
-		return false;
+		return FALSE;
 
 	if (m->sub_blocks == 0)
 		return isi_ctx_return_success(irc);
@@ -1302,7 +1302,7 @@ static int isi_voicecall_probe(struct ofono_voicecall *ovc,
 }
 
 static void isi_call_verify_cb(GIsiClient *client,
-			       bool alive, uint16_t object,
+			       gboolean alive, uint16_t object,
 			       void *ovc)
 {
 	if (!alive) {
-- 
1.6.3.3


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH 5/6] Fixed style issues in isimodem voicecall.
  2010-05-27 16:12               ` [PATCH 4/6] Eliminated bool, true and false from isimodem Pekka Pessi
@ 2010-05-27 16:12                 ` Pekka Pessi
  2010-05-27 16:12                   ` [PATCH 6/6] Add: set_online and post_online methods to isimodem driver Pekka Pessi
  0 siblings, 1 reply; 15+ messages in thread
From: Pekka Pessi @ 2010-05-27 16:12 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 6301 bytes --]

---
 drivers/isimodem/voicecall.c |   69 +++++++++++++++++++-----------------------
 1 files changed, 31 insertions(+), 38 deletions(-)

diff --git a/drivers/isimodem/voicecall.c b/drivers/isimodem/voicecall.c
index 44ffe96..5c6cc40 100644
--- a/drivers/isimodem/voicecall.c
+++ b/drivers/isimodem/voicecall.c
@@ -71,7 +71,7 @@ static struct ofono_call isi_call_as_ofono_call(struct isi_call const *);
 static int isi_call_status_to_clcc(struct isi_call const *call);
 static struct isi_call *isi_call_set_idle(struct isi_call *call);
 
-typedef void GIsiIndication (GIsiClient *client,
+typedef void GIsiIndication(GIsiClient *client,
 		const void *restrict data, size_t len,
 		uint16_t object, void *opaque);
 
@@ -106,7 +106,7 @@ struct isi_call_req_context {
 
 static struct isi_call_req_context *
 isi_call_req(struct ofono_voicecall *ovc,
-	     void const * restrict req,
+	     void const *restrict req,
 	     size_t len,
 	     GIsiResponse *handler,
 	     ofono_voicecall_cb_t cb,
@@ -143,10 +143,12 @@ static void isi_ctx_queue(struct isi_call_req_context *irc,
 	if (irc->prev == NULL) {
 		struct isi_voicecall *ivc = ofono_voicecall_get_data(irc->ovc);
 
-		irc->prev = &ivc->queue;
-		if ((irc->next = *irc->prev))
+		if (ivc->queue) {
+			irc->next = ivc->queue;
 			irc->next->prev = &irc->next;
-		*irc->prev = irc;
+		}
+		irc->prev = &ivc->queue;
+		ivc->queue = irc;
 	}
 
 	irc->step = next;
@@ -155,7 +157,9 @@ static void isi_ctx_queue(struct isi_call_req_context *irc,
 static void isi_ctx_remove(struct isi_call_req_context *irc)
 {
 	if (irc->prev) {
-		if ((*irc->prev = irc->next)) {
+		*irc->prev = irc->next;
+
+		if (irc->next) {
 			irc->next->prev = irc->prev;
 			irc->next = NULL;
 		}
@@ -285,7 +289,6 @@ static void isi_call_status_sb_proc(struct isi_voicecall *ivc,
 
 static struct isi_call *
 isi_call_status_info_sb_proc(struct isi_voicecall *ivc,
-			     struct isi_call calls[8],
 			     GIsiSubBlockIter const *sb)
 {
 	struct isi_call *call = NULL;
@@ -304,7 +307,7 @@ isi_call_status_info_sb_proc(struct isi_voicecall *ivc,
 	i = call_id & 7;
 
 	if (1 <= i && i <= 7) {
-		call = &calls[i];
+		call = &ivc->calls[i];
 		call->call_id = call_id;
 		call->status = status;
 		call->mode = mode;
@@ -316,7 +319,6 @@ isi_call_status_info_sb_proc(struct isi_voicecall *ivc,
 
 static struct isi_call *
 isi_call_addr_and_status_info_sb_proc(struct isi_voicecall *ivc,
-				      struct isi_call calls[8],
 				      GIsiSubBlockIter const *sb)
 {
 	struct isi_call *call = NULL;
@@ -343,7 +345,7 @@ isi_call_addr_and_status_info_sb_proc(struct isi_voicecall *ivc,
 	i = call_id & 7;
 
 	if (1 <= i && i <= 7) {
-		call = &calls[i];
+		call = &ivc->calls[i];
 		call->call_id = call_id;
 		call->status = status;
 		call->mode = mode;
@@ -433,7 +435,7 @@ static gboolean isi_call_create_resp(GIsiClient *client,
 }
 
 static void isi_call_status_ind_cb(GIsiClient *client,
-				   void const * restrict data,
+				   void const *restrict data,
 				   size_t len,
 				   uint16_t object,
 				   void *_ovc)
@@ -641,11 +643,11 @@ static gboolean isi_call_status_resp(GIsiClient *client,
 		switch (g_isi_sb_iter_get_id(sb)) {
 
 		case CALL_STATUS_INFO:
-			call = isi_call_status_info_sb_proc(ivc, ivc->calls, sb);
+			call = isi_call_status_info_sb_proc(ivc, sb);
 			break;
 
 		case CALL_ADDR_AND_STATUS_INFO:
-			call = isi_call_addr_and_status_info_sb_proc(ivc, ivc->calls, sb);
+			call = isi_call_addr_and_status_info_sb_proc(ivc, sb);
 			if (call)
 				isi_call_notify(ovc, call);
 			break;
@@ -965,7 +967,7 @@ static struct isi_call *isi_call_set_idle(struct isi_call *call)
 /* ---------------------------------------------------------------------- */
 
 static void isi_dial(struct ofono_voicecall *ovc,
-		     const struct ofono_phone_number * restrict number,
+		     const struct ofono_phone_number *restrict number,
 		     enum ofono_clir_option clir,
 		     enum ofono_cug_option cug,
 		     ofono_voicecall_cb_t cb,
@@ -973,8 +975,7 @@ static void isi_dial(struct ofono_voicecall *ovc,
 {
 	unsigned char presentation = CALL_GSM_PRESENTATION_DEFAULT;
 
-	switch (clir)
-	{
+	switch (clir) {
 	case OFONO_CLIR_OPTION_DEFAULT:
 		presentation = CALL_GSM_PRESENTATION_DEFAULT;
 		break;
@@ -986,8 +987,7 @@ static void isi_dial(struct ofono_voicecall *ovc,
 		break;
 	}
 
-	switch (cug)
-	{
+	switch (cug) {
 	case OFONO_CUG_OPTION_DEFAULT:
 		break;
 	case OFONO_CUG_OPTION_INVOCATION:
@@ -1092,8 +1092,7 @@ static void isi_release_all_active(struct ofono_voicecall *ovc,
 			isi_ctx_queue(irc, isi_wait_and_answer);
 		else if (hold)
 			isi_ctx_queue(irc, isi_wait_and_retrieve);
-	}
-	else
+	} else
 		CALLBACK_WITH_FAILURE(cb, data);
 }
 
@@ -1139,21 +1138,19 @@ static void isi_hold_all_active(struct ofono_voicecall *ovc,
 
 	if (waiting) {
 		isi_call_answer_req(ovc, CALL_ID_WAITING, cb, data);
-	}
-	else if (hold) {
+	} else if (hold) {
 		if (active) {
-			id = CALL_ID_ACTIVE, op = CALL_OP_SWAP;
-		}
-		else {
-			id = CALL_ID_HOLD, op = CALL_OP_RETRIEVE;
+			op = CALL_OP_SWAP;
+			id = CALL_ID_ACTIVE;
+		} else {
+			op = CALL_OP_RETRIEVE;
+			id = CALL_ID_HOLD;
 		}
 		isi_call_control_req(ovc, id, op, 0, cb, data);
-	}
-	else if (active) {
+	} else if (active) {
 		id = CALL_ID_ACTIVE, op = CALL_OP_HOLD;
 		isi_call_control_req(ovc, id, op, 0, cb, data);
-	}
-	else {
+	} else {
 		CALLBACK_WITH_FAILURE(cb, data);
 	}
 }
@@ -1182,8 +1179,7 @@ static void isi_release_specific(struct ofono_voicecall *ovc, int id,
 		isi_call_release_req(ovc, id,
 				     CALL_CAUSE_TYPE_CLIENT, cause,
 				     cb, data);
-	}
-	else
+	} else
 		CALLBACK_WITH_FAILURE(cb, data);
 }
 
@@ -1252,14 +1248,11 @@ static void isi_swap_without_accept(struct ofono_voicecall *ovc,
 
 	if (hold && active) {
 		id = CALL_ID_ACTIVE, op = CALL_OP_SWAP;
-	}
-	else if (active) {
+	} else if (active) {
 		id = CALL_ID_ACTIVE, op = CALL_OP_HOLD;
-	}
-	else if (hold) {
+	} else if (hold) {
 		id = CALL_ID_HOLD, op = CALL_OP_RETRIEVE;
-	}
-	else {
+	} else {
 		CALLBACK_WITH_FAILURE(cb, data);
 		return;
 	}
-- 
1.6.3.3


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH 6/6] Add: set_online and post_online methods to isimodem driver
  2010-05-27 16:12                 ` [PATCH 5/6] Fixed style issues in isimodem voicecall Pekka Pessi
@ 2010-05-27 16:12                   ` Pekka Pessi
  0 siblings, 0 replies; 15+ messages in thread
From: Pekka Pessi @ 2010-05-27 16:12 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 5304 bytes --]

---
 drivers/isimodem/isimodem.c |  107 +++++++++++++++++++++++++++++++++++++++----
 1 files changed, 98 insertions(+), 9 deletions(-)

diff --git a/drivers/isimodem/isimodem.c b/drivers/isimodem/isimodem.c
index 05ebfe2..8df6fd6 100644
--- a/drivers/isimodem/isimodem.c
+++ b/drivers/isimodem/isimodem.c
@@ -67,7 +67,8 @@ struct isi_data {
 	GPhonetLinkState linkstate;
 	unsigned interval;
 	int reported;
-	int mtc_state;
+	ofono_bool_t online;
+	struct isi_cb_data *online_cbd;
 };
 
 static void report_powered(struct isi_data *isi, ofono_bool_t powered)
@@ -76,9 +77,27 @@ static void report_powered(struct isi_data *isi, ofono_bool_t powered)
 		ofono_modem_set_powered(isi->modem, isi->reported = powered);
 }
 
-static void set_power_by_mtc_state(struct isi_data *isi, int state)
+static void report_online(struct isi_data *isi, ofono_bool_t online)
 {
-	switch (isi->mtc_state = state) {
+	struct isi_cb_data *cbd = isi->online_cbd;
+	ofono_modem_online_cb cb = cbd->cb;
+
+	isi->online_cbd = NULL;
+
+	if (isi->online == online)
+		CALLBACK_WITH_SUCCESS(cb, cbd->data);
+	else
+		CALLBACK_WITH_FAILURE(cb, cbd->data);
+
+	g_free(cbd);
+}
+
+static void set_power_by_mtc_state(struct isi_data *isi, int mtc_state)
+{
+	if (isi->online_cbd)
+		report_online(isi, mtc_state == MTC_NORMAL);
+
+	switch (mtc_state) {
 	case MTC_STATE_NONE:
 	case MTC_POWER_OFF:
 	case MTC_CHARGING:
@@ -88,9 +107,6 @@ static void set_power_by_mtc_state(struct isi_data *isi, int state)
 
 	case MTC_RF_INACTIVE:
 	case MTC_NORMAL:
-		report_powered(isi, 1);
-		break;
-
 	default:
 		report_powered(isi, 1);
 	}
@@ -157,7 +173,8 @@ static gboolean mtc_poll_query_cb(GIsiClient *client,
 	DBG("target modem state: %s (0x%02X)",
 		mtc_modem_state_name(msg[2]), msg[2]);
 
-	set_power_by_mtc_state(isi, msg[1]);
+	if (msg[1] == msg[2])
+		set_power_by_mtc_state(isi, msg[1]);
 
 	return TRUE;
 }
@@ -182,7 +199,8 @@ static gboolean mtc_query_cb(GIsiClient *client,
 	DBG("target modem state: %s (0x%02X)",
 		mtc_modem_state_name(msg[2]), msg[2]);
 
-	set_power_by_mtc_state(isi, msg[1]);
+	if (msg[1] == msg[2])
+		set_power_by_mtc_state(isi, msg[1]);
 
 	return TRUE;
 }
@@ -279,6 +297,7 @@ static int isi_modem_probe(struct ofono_modem *modem)
 	isi->ifname = ifname;
 	isi->link = link;
 	isi->client = g_isi_client_create(isi->idx, PN_MTC);
+	isi->reported = -1;
 
 	return 0;
 }
@@ -296,6 +315,66 @@ static void isi_modem_remove(struct ofono_modem *modem)
 	g_free(isi);
 }
 
+static gboolean mtc_state_cb(GIsiClient *client,
+				const void *restrict data, size_t len,
+				uint16_t object, void *opaque)
+{
+	struct isi_cb_data *cbd = opaque;
+	struct ofono_modem *modem = cbd->user;
+	ofono_modem_online_cb cb = cbd->cb;
+	struct isi_data *isi = ofono_modem_get_data(modem);
+	const unsigned char *msg = data;
+
+	if (!msg) {
+		DBG("ISI client error: %d", g_isi_client_error(client));
+		goto err;
+	}
+
+	if (len < 3 || msg[0] != MTC_STATE_RESP)
+		return FALSE;
+
+	DBG("cause: %s (0x%02X)", mtc_isi_cause_name(msg[1]), msg[1]);
+
+	if (msg[1] == MTC_OK) {
+		isi->online_cbd = cbd;
+		return TRUE;
+	}
+
+err:
+	if (msg && msg[1] == MTC_ALREADY_ACTIVE)
+		CALLBACK_WITH_SUCCESS(cb, cbd->data);
+	else
+		CALLBACK_WITH_FAILURE(cb, cbd->data);
+
+	g_free(cbd);
+	return TRUE;
+}
+
+static void isi_modem_online(struct ofono_modem *modem, ofono_bool_t online,
+				ofono_modem_online_cb cb, void *data)
+{
+	struct isi_data *isi = ofono_modem_get_data(modem);
+	const unsigned char req[] = {
+		MTC_STATE_REQ, online ? MTC_NORMAL : MTC_RF_INACTIVE, 0x00
+	};
+	struct isi_cb_data *cbd = isi_cb_data_new(modem, cb, data);
+
+	DBG("(%p) with %s", modem, isi->ifname);
+
+	if (!cbd)
+		goto error;
+
+	isi->online = online;
+
+	if (g_isi_request_make(isi->client, req, sizeof(req), MTC_TIMEOUT,
+				mtc_state_cb, cbd))
+		return;
+
+error:
+	g_free(cbd);
+	CALLBACK_WITH_FAILURE(cb, data);
+}
+
 static void isi_modem_pre_sim(struct ofono_modem *modem)
 {
 	struct isi_data *isi = ofono_modem_get_data(modem);
@@ -310,12 +389,20 @@ static void isi_modem_pre_sim(struct ofono_modem *modem)
 static void isi_modem_post_sim(struct ofono_modem *modem)
 {
 	struct isi_data *isi = ofono_modem_get_data(modem);
+
+	DBG("(%p) with %s", modem, isi->ifname);
+
+	ofono_phonebook_create(isi->modem, 0, "isimodem", isi->idx);
+}
+
+static void isi_modem_post_online(struct ofono_modem *modem)
+{
+	struct isi_data *isi = ofono_modem_get_data(modem);
 	struct ofono_gprs *gprs;
 	struct ofono_gprs_context *gc;
 
 	DBG("(%p) with %s", modem, isi->ifname);
 
-	ofono_phonebook_create(isi->modem, 0, "isimodem", isi->idx);
 	ofono_netreg_create(isi->modem, 0, "isimodem", isi->idx);
 	ofono_sms_create(isi->modem, 0, "isimodem", isi->idx);
 	ofono_cbs_create(isi->modem, 0, "isimodem", isi->idx);
@@ -339,8 +426,10 @@ static struct ofono_modem_driver driver = {
 	.name = "isimodem",
 	.probe = isi_modem_probe,
 	.remove = isi_modem_remove,
+	.set_online = isi_modem_online,
 	.pre_sim = isi_modem_pre_sim,
 	.post_sim = isi_modem_post_sim,
+	.post_online = isi_modem_post_online,
 };
 
 static int isimodem_init(void)
-- 
1.6.3.3


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* Re: [PATCH 1/6] Use ofono_bool_t instead of bool in modem API.
  2010-05-27 16:12         ` [PATCH 1/6] Use ofono_bool_t instead of bool in modem API Pekka Pessi
  2010-05-27 16:12           ` [PATCH 2/6] Use ofono_bool_t with D-Bus API Pekka Pessi
@ 2010-05-27 18:01           ` Denis Kenzior
  1 sibling, 0 replies; 15+ messages in thread
From: Denis Kenzior @ 2010-05-27 18:01 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 427 bytes --]

Hi Pekka,

>  int ofono_modem_set_boolean(struct ofono_modem *modem,
> -				const char *key, bool value);
> -bool ofono_modem_get_boolean(struct ofono_modem *modem, const char *key);
> +				const char *key, gboolean value);
> +gboolean ofono_modem_get_boolean(struct ofono_modem *modem, const char
>  *key);

Err, please pay attention.  This should be ofono_bool_t.  I fixed it for you 
(again).

Regards,
-Denis

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH 2/6] Use ofono_bool_t with D-Bus API.
  2010-05-27 16:12           ` [PATCH 2/6] Use ofono_bool_t with D-Bus API Pekka Pessi
  2010-05-27 16:12             ` [PATCH 3/6] Eliminated bool, true and false from gisi Pekka Pessi
@ 2010-05-27 18:02             ` Denis Kenzior
  1 sibling, 0 replies; 15+ messages in thread
From: Denis Kenzior @ 2010-05-27 18:02 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 526 bytes --]

Hi Pekka,

>  	if (modem->powered_pending == FALSE) {
>  		DBusConnection *conn = ofono_dbus_get_connection();
> -		dbus_bool_t powered = FALSE;
> -
>  		modem->powered = FALSE;
>  		ofono_dbus_signal_property_changed(conn, modem->path,
>  						OFONO_MODEM_INTERFACE,
>  						"Powered", DBUS_TYPE_BOOLEAN,
> -						&powered);
> +						&modem->powered);

Actually this is the preferred approach and is more type safe.  If you notice 
cases where we don't do this, then please send a patch.

Regards,
-Denis

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH 3/6] Eliminated bool, true and false from gisi.
  2010-05-27 16:12             ` [PATCH 3/6] Eliminated bool, true and false from gisi Pekka Pessi
  2010-05-27 16:12               ` [PATCH 4/6] Eliminated bool, true and false from isimodem Pekka Pessi
@ 2010-05-27 19:36               ` Denis Kenzior
  1 sibling, 0 replies; 15+ messages in thread
From: Denis Kenzior @ 2010-05-27 19:36 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 543 bytes --]

Hi Pekka,

> ---
>  gisi/client.c  |   10 +------
>  gisi/client.h  |   17 ++++++-------
>  gisi/iter.c    |   73
>  +++++++++++++++++++++++++++---------------------------- gisi/iter.h    |  
>  23 ++++++++---------
>  gisi/netlink.c |    1 -
>  gisi/netlink.h |    1 -
>  gisi/pipe.c    |   45 +++++++++++++++++-----------------
>  gisi/server.h  |    7 ++---
>  gisi/verify.c  |   13 ++++-----
>  9 files changed, 88 insertions(+), 102 deletions(-)
> 

All other patches in this series have been applied.

Thanks,
-Denis

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2010-05-27 19:36 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <1274885889-11479-2-git-send-email-Pekka.Pessi@nokia.com>
2010-05-26 14:58 ` [PATCH 3/4] Add: set_online and post_online methods to isimodem driver Pekka Pessi
2010-05-27  2:08   ` Denis Kenzior
2010-05-27  6:48     ` Aki Niemi
2010-05-27 11:44       ` Denis Kenzior
2010-05-27 12:34     ` Pekka Pessi
2010-05-27 12:48       ` Denis Kenzior
2010-05-27 16:12         ` [PATCH 1/6] Use ofono_bool_t instead of bool in modem API Pekka Pessi
2010-05-27 16:12           ` [PATCH 2/6] Use ofono_bool_t with D-Bus API Pekka Pessi
2010-05-27 16:12             ` [PATCH 3/6] Eliminated bool, true and false from gisi Pekka Pessi
2010-05-27 16:12               ` [PATCH 4/6] Eliminated bool, true and false from isimodem Pekka Pessi
2010-05-27 16:12                 ` [PATCH 5/6] Fixed style issues in isimodem voicecall Pekka Pessi
2010-05-27 16:12                   ` [PATCH 6/6] Add: set_online and post_online methods to isimodem driver Pekka Pessi
2010-05-27 19:36               ` [PATCH 3/6] Eliminated bool, true and false from gisi Denis Kenzior
2010-05-27 18:02             ` [PATCH 2/6] Use ofono_bool_t with D-Bus API Denis Kenzior
2010-05-27 18:01           ` [PATCH 1/6] Use ofono_bool_t instead of bool in modem API Denis Kenzior

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.