[PATCH_v4 0/5] Private network request to ConnMan
by Guillaume Zajac
Hi,
Changelog from v3 is:
- Add private-network source/include
- ConnMan plugin is independant from emulator
- Each application that need VPN will pass a callback as argument
when private network is requested. This callback will contain the
private network settings.
Guillaume Zajac (5):
gatppp: Add new contructor to use external fd
private-network: add callback typedef drivers and settings
private-network: add request/release functions and new feature to
Makefile.am
emulator: add request/release private network calls
connman: add plugin in oFono to request request/release private
network
Makefile.am | 10 +-
gatchat/gatppp.c | 33 +++++-
gatchat/gatppp.h | 1 +
gatchat/ppp.h | 2 +-
gatchat/ppp_net.c | 40 ++++---
include/private-network.h | 59 +++++++++
plugins/connman.c | 297 +++++++++++++++++++++++++++++++++++++++++++++
src/emulator.c | 49 ++++++--
src/ofono.h | 6 +
src/private-network.c | 89 ++++++++++++++
10 files changed, 556 insertions(+), 30 deletions(-)
create mode 100644 include/private-network.h
create mode 100644 plugins/connman.c
create mode 100644 src/private-network.c
23 hours, 21 minutes
Read/Write EFcfis/EFcphs-cff files
by Jeevaka Badrappan
Hi,
This patch reads and writes the call forwarding unconditional status
from and to the SIM depending on the SIM file availability.
New property needs to be added due to the fact that number won't be
available from the cphs-cff file.
Incase of SIM, EFcphs-cff file holds call forwarding status and it
is represented as a flag. In case of USIM(EFcfis), we have the status
flag and also number.So, adding new property for status and using the
existing VoiceUnconditional with number will work for both SIM and USIM cases.
Other option is to have 2 properties, "VoiceUnconditional" and "Number".
"VoiceUnconditional" will have the status of the call forwarding( "enabled",
"disabled") whereas the "Number" property will have the call forwared number.
offline-online state transitions results in caching the call forwaring status
every time. To avoid this, call forwarding atom is moved to the post sim and
its moved also due to the fact that call forwarding status doesn't change in
roaming.
Regards,
Jeevaka
Jeevaka Badrappan (7):
call-forwarding: Read/Write cfis/cphs-cff
ifx: Move call forwarding to post sim
isigen: Move call forwarding to post sim
plugins/n900: Move call forwarding to post sim
phonesim: Move call forwarding to post sim
doc: Add new property to call forwarding
TODO: Marking the Read/Write EFcfis task as done
TODO | 9 --
doc/call-forwarding-api.txt | 5 +
doc/features.txt | 5 +
plugins/ifx.c | 2 +-
plugins/isigen.c | 2 +-
plugins/n900.c | 2 +-
plugins/phonesim.c | 3 +-
src/call-forwarding.c | 242 ++++++++++++++++++++++++++++++++++++++++++-
8 files changed, 256 insertions(+), 14 deletions(-)
1 day, 3 hours
Business
by Daser Jnr.
Hi all
>From a business point of view, can some one tell me what i can do with ofono
Cheers
Daser S.
3 months, 4 weeks
[PATCH 0/8] Sierra Wireless CDMA modem support
by Forest Bond
From: Forest Bond <forest.bond(a)rapidrollout.com>
This series adds support for Sierra Wireless CDMA modems. Tested with
the MC5728V on the Sprint CDMA network.
Forest Bond (8):
sierramodem: Add skeleton for Sierra Wireless modem driver
sierramodem: Add skeleton cdma netreg driver
sierramodem: Add ERI parsing functions
sierramodem: Report network registration status
sierra: Create GPRS context in post_sim function
sierra: Initialize GSM error reporting separately
sierra: Support CDMA modems
udevng: Support single-interface sierra devices
Makefile.am | 8 +
drivers/sierramodem/cdma-netreg.c | 385 +++++++++++++++++++++++++++++++++++++
drivers/sierramodem/eri.c | 282 +++++++++++++++++++++++++++
drivers/sierramodem/eri.h | 23 +++
drivers/sierramodem/sierramodem.c | 50 +++++
drivers/sierramodem/sierramodem.h | 26 +++
plugins/sierra.c | 117 +++++++++---
plugins/udevng.c | 43 ++++-
8 files changed, 900 insertions(+), 34 deletions(-)
create mode 100644 drivers/sierramodem/cdma-netreg.c
create mode 100644 drivers/sierramodem/eri.c
create mode 100644 drivers/sierramodem/eri.h
create mode 100644 drivers/sierramodem/sierramodem.c
create mode 100644 drivers/sierramodem/sierramodem.h
--
Forest Bond
http://www.alittletooquiet.net
http://www.rapidrollout.com
9 years, 3 months
[PATCH 1/2] qmimodem: add uim message types
by Cedric Jehasse
From: Cedric Jehasse <cedric.jehasse(a)softathome.com>
Define message types for verify pin and card status indication.
---
drivers/qmimodem/uim.h | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/qmimodem/uim.h b/drivers/qmimodem/uim.h
index 8f123e7..73e9c94 100644
--- a/drivers/qmimodem/uim.h
+++ b/drivers/qmimodem/uim.h
@@ -24,10 +24,13 @@
#define QMI_UIM_WRITE_TRANSPARENT 34 /* Write data */
#define QMI_UIM_WRITE_RECORD 35 /* Write a record */
#define QMI_UIM_GET_FILE_ATTRIBUTES 36 /* Get file attributes */
+#define QMI_UIM_VERIFY_PIN 38 /* Verify PIN*/
#define QMI_UIM_EVENT_REGISTRATION 46 /* Register for indications */
#define QMI_UIM_GET_CARD_STATUS 47 /* Get card status */
+#define QMI_UIM_CARD_STATUS_IND 50 /* Card status indication*/
+
/* Register for indications */
#define QMI_UIM_PARAM_EVENT_MASK 0x01 /* uint32 */
--
1.7.9.5
9 years, 4 months
[PATCHv2 1/2] hfpmodem: Retry AT+CLCC request after outgoing callsetup
by Timo Mueller
From: Timo Mueller <timo.mueller(a)bmw-carit.de>
Currently the list of current calls is requested right after an
outgoing callsetup has been reported by the AG device. If the AG
device updates the list after reporting the callsetup the +CLCC
response may not contain the new call and it is not registered
with oFono.
In this case AT+CLCC should be requested again once after a small
delay.
AT sequence that exhibited the failure (AG device was a Nokia N9
placing an outgoing call)
< \r\n+CIEV: 5,2\r\n
> AT+CLCC\r
< \r\nOK\r\n
< \r\n+VGS=7\r\n
< \r\n+VGM=7\r\n
< \r\n+CIEV: 5,3\r\n
< \r\n+CIEV: 4,1\r\n
< \r\n+CIEV: 5,0\r\n
---
v2: Request CLCC immediately and schedule a second request if the
call was not found in the response. Recheck CLCC when callheld=2 was
received after a callsetup=<2 or 3>.
drivers/hfpmodem/voicecall.c | 28 +++++++++++++++++++++++++++-
1 file changed, 27 insertions(+), 1 deletion(-)
diff --git a/drivers/hfpmodem/voicecall.c b/drivers/hfpmodem/voicecall.c
index 33dd05e..18ed54a 100644
--- a/drivers/hfpmodem/voicecall.c
+++ b/drivers/hfpmodem/voicecall.c
@@ -295,6 +295,31 @@ static void clcc_poll_cb(gboolean ok, GAtResult *result, gpointer user_data)
vc);
}
+static void clcc_poll_dialing_cb(gboolean ok, GAtResult *result,
+ gpointer user_data)
+{
+ struct ofono_voicecall *vc = user_data;
+ struct voicecall_data *vd = ofono_voicecall_get_data(vc);
+ GSList *calls, *dialing;
+
+ if (!ok)
+ return;
+
+ calls = at_util_parse_clcc(result);
+ dialing = find_dialing(calls);
+
+ if (dialing == NULL) {
+ if (vd->clcc_source)
+ g_source_remove(vd->clcc_source);
+
+ vd->clcc_source = g_timeout_add(POLL_CLCC_DELAY,
+ poll_clcc, vc);
+ return;
+ }
+
+ clcc_poll_cb(ok, result, user_data);
+}
+
static gboolean poll_clcc(gpointer user_data)
{
struct ofono_voicecall *vc = user_data;
@@ -977,7 +1002,8 @@ static void ciev_callsetup_notify(struct ofono_voicecall *vc,
* from AG: query and create call.
*/
g_at_chat_send(vd->chat, "AT+CLCC", clcc_prefix,
- clcc_poll_cb, vc, NULL);
+ clcc_poll_dialing_cb, vc, NULL);
+
break;
case 3:
--
1.7.11.7
9 years, 4 months
[PATCH v0 0/4] Reject SCO connection
by Claudio Takahasi
Remaining patches of "External HFP: Add SCO" patch series.
* Patches left of the last series:
hfp_hf_bluez5: Add rejecting SCO connection
hfp_hf_bluez5: Fix missing fd close
* Major changes:
- splits patch "hfp_hf_bluez5: Add rejecting SCO connection"
- Replaces bdaddr_t by string. Adapter address is now being
stored as modem string
Claudio Takahasi (2):
hfp_hf_bluez5: Add rejecting SCO connection
hfp_hf_bluez5: Fix missing fd close
Vinicius Costa Gomes (2):
hfp_hf_bluez5: Rename 'Address' modem property to 'Remote'
hfp_hf_bluez5: Set the 'Remote' and 'Local' properties
plugins/hfp_hf_bluez5.c | 111 ++++++++++++++++++++++++++++++++++++++----------
1 file changed, 88 insertions(+), 23 deletions(-)
--
1.7.11.7
9 years, 4 months
[PATCH 1/2] bluetooth: Rename HFP AG plugin
by Frédéric Danis
As BlueZ 5 introduced backwards incompatible API changes, and we want to
keep support for BlueZ 4 based HFP AG plugin for some time, we need to
separate HFP AG plugin which is based on BlueZ 4 from the one based on
BlueZ 5.
The hfp_ag.c plugin is renamed to hfp_ag_bluez4. This will make it easy
to add an HFP AG plugin for BlueZ 5.
---
Makefile.am | 4 ++--
plugins/{hfp_ag.c => hfp_ag_bluez4.c} | 5 +++--
2 files changed, 5 insertions(+), 4 deletions(-)
rename plugins/{hfp_ag.c => hfp_ag_bluez4.c} (97%)
diff --git a/Makefile.am b/Makefile.am
index f24cac7..ee6d24c 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -421,8 +421,8 @@ builtin_sources += plugins/sap.c plugins/bluez4.h
builtin_modules += hfp_bluez4
builtin_sources += plugins/hfp_hf_bluez4.c plugins/bluez4.h
-builtin_modules += hfp_ag
-builtin_sources += plugins/hfp_ag.c plugins/bluez4.h
+builtin_modules += hfp_ag_bluez4
+builtin_sources += plugins/hfp_ag_bluez4.c plugins/bluez4.h
builtin_modules += dun_gw
builtin_sources += plugins/dun_gw.c plugins/bluez4.h
diff --git a/plugins/hfp_ag.c b/plugins/hfp_ag_bluez4.c
similarity index 97%
rename from plugins/hfp_ag.c
rename to plugins/hfp_ag_bluez4.c
index 12374ad..039b665 100644
--- a/plugins/hfp_ag.c
+++ b/plugins/hfp_ag_bluez4.c
@@ -213,5 +213,6 @@ static void hfp_ag_exit(void)
}
}
-OFONO_PLUGIN_DEFINE(hfp_ag, "Hands-Free Audio Gateway Profile Plugins", VERSION,
- OFONO_PLUGIN_PRIORITY_DEFAULT, hfp_ag_init, hfp_ag_exit)
+OFONO_PLUGIN_DEFINE(hfp_ag_bluez4, "Hands-Free Audio Gateway Profile Plugins",
+ VERSION, OFONO_PLUGIN_PRIORITY_DEFAULT,
+ hfp_ag_init, hfp_ag_exit)
--
1.7.9.5
9 years, 4 months
[PATCH v0 1/2] hfp_hf_bluez5: Fix registering modem on NewConnection
by Claudio Takahasi
HFP modem will be registered when Proxy Added callback gets called
or when Pair is True. This patch removes the support for dynamic modem
registration when a new connection is notified and there isn't a modem
associated with the Bluetooth remote device.
BlueZ behaviour has been changed and a NewConnection is not notified
before the service discovery finishes.
---
plugins/hfp_hf_bluez5.c | 23 +++--------------------
1 file changed, 3 insertions(+), 20 deletions(-)
diff --git a/plugins/hfp_hf_bluez5.c b/plugins/hfp_hf_bluez5.c
index ff4dbad..d2f3abb 100644
--- a/plugins/hfp_hf_bluez5.c
+++ b/plugins/hfp_hf_bluez5.c
@@ -270,10 +270,8 @@ static DBusMessage *profile_new_connection(DBusConnection *conn,
{
struct hfp *hfp;
struct ofono_modem *modem;
- DBusMessageIter iter;
- GDBusProxy *proxy;
DBusMessageIter entry;
- const char *device, *alias, *address;
+ const char *device;
int fd, err;
DBG("Profile handler NewConnection");
@@ -286,21 +284,6 @@ static DBusMessage *profile_new_connection(DBusConnection *conn,
dbus_message_iter_get_basic(&entry, &device);
- proxy = g_hash_table_lookup(devices_proxies, device);
- if (proxy == NULL)
- return g_dbus_create_error(msg, BLUEZ_ERROR_INTERFACE
- ".Rejected",
- "Unknown Bluetooth device");
-
- g_dbus_proxy_get_property(proxy, "Alias", &iter);
-
- dbus_message_iter_get_basic(&iter, &alias);
-
- if (g_dbus_proxy_get_property(proxy, "Address", &iter) == FALSE)
- goto invalid;
-
- dbus_message_iter_get_basic(&iter, &address);
-
dbus_message_iter_next(&entry);
if (dbus_message_iter_get_arg_type(&entry) != DBUS_TYPE_UNIX_FD)
goto invalid;
@@ -309,12 +292,12 @@ static DBusMessage *profile_new_connection(DBusConnection *conn,
if (fd < 0)
goto invalid;
- modem = modem_register(device, address, alias);
+ modem = g_hash_table_lookup(modem_hash, device);
if (modem == NULL) {
close(fd);
return g_dbus_create_error(msg, BLUEZ_ERROR_INTERFACE
".Rejected",
- "Could not register HFP modem");
+ "Unknown Bluetooth device");
}
err = service_level_connection(modem, fd, HFP_VERSION_LATEST);
--
1.7.11.7
9 years, 4 months
[PATCH] hfp_hf_bluez5: Remove error handling for g_io_channel_unix_new()
by Vinicius Costa Gomes
Apart from g_io_channel_unix_new() not setting errno, it never
returns an NULL pointer on error, because in practice it only
calls g_new().
---
plugins/hfp_hf_bluez5.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/plugins/hfp_hf_bluez5.c b/plugins/hfp_hf_bluez5.c
index 8cac945..ff4dbad 100644
--- a/plugins/hfp_hf_bluez5.c
+++ b/plugins/hfp_hf_bluez5.c
@@ -137,11 +137,6 @@ static int service_level_connection(struct ofono_modem *modem,
GAtChat *chat;
io = g_io_channel_unix_new(fd);
- if (io == NULL) {
- ofono_error("Service level connection failed: %s (%d)",
- strerror(errno), errno);
- return -EIO;
- }
syntax = g_at_syntax_new_gsm_permissive();
chat = g_at_chat_new(io, syntax);
--
1.8.1.1
9 years, 4 months