aboutsummaryrefslogtreecommitdiff
path: root/libmm-glib
diff options
context:
space:
mode:
authorGuido Günther <agx@sigxcpu.org>2014-02-05 08:40:16 +0100
committerGuido Günther <agx@sigxcpu.org>2014-02-05 08:40:16 +0100
commitfa2b467e288cb137ffd792becbf0c1e757d85be4 (patch)
treece308eb0886e93805e7d88bccce48c93797fd6dd /libmm-glib
parentafc4b839a31c530d73b91aa2483795f185eb7e52 (diff)
New upstream version 1.2.0upstream/1.2.0upstream
Diffstat (limited to 'libmm-glib')
-rw-r--r--libmm-glib/Makefile.am93
-rw-r--r--libmm-glib/Makefile.in338
-rw-r--r--libmm-glib/generated/Makefile.am12
-rw-r--r--libmm-glib/generated/Makefile.in38
-rw-r--r--libmm-glib/generated/mm-enums-types.h112
-rw-r--r--libmm-glib/generated/mm-gdbus-bearer.h2
-rw-r--r--libmm-glib/generated/mm-gdbus-manager.h2
-rw-r--r--libmm-glib/generated/mm-gdbus-modem.h490
-rw-r--r--libmm-glib/generated/mm-gdbus-sim.h2
-rw-r--r--libmm-glib/generated/mm-gdbus-sms.h12
-rw-r--r--libmm-glib/libmm-glib.h4
-rw-r--r--libmm-glib/mm-bearer-ip-config.c10
-rw-r--r--libmm-glib/mm-bearer-properties.c27
-rw-r--r--libmm-glib/mm-bearer-properties.h2
-rw-r--r--libmm-glib/mm-bearer.c12
-rw-r--r--libmm-glib/mm-cdma-manual-activation-properties.c879
-rw-r--r--libmm-glib/mm-cdma-manual-activation-properties.h113
-rw-r--r--libmm-glib/mm-common-helpers.c196
-rw-r--r--libmm-glib/mm-common-helpers.h16
-rw-r--r--libmm-glib/mm-helper-types.h24
-rw-r--r--libmm-glib/mm-location-gps-nmea.c2
-rw-r--r--libmm-glib/mm-manager.c2
-rw-r--r--libmm-glib/mm-modem-3gpp.c23
-rw-r--r--libmm-glib/mm-modem-3gpp.h1
-rw-r--r--libmm-glib/mm-modem-cdma.c92
-rw-r--r--libmm-glib/mm-modem-cdma.h14
-rw-r--r--libmm-glib/mm-modem-firmware.c4
-rw-r--r--libmm-glib/mm-modem-location.c18
-rw-r--r--libmm-glib/mm-modem-messaging.c56
-rw-r--r--libmm-glib/mm-modem-oma.c593
-rw-r--r--libmm-glib/mm-modem-oma.h135
-rw-r--r--libmm-glib/mm-modem-signal.c602
-rw-r--r--libmm-glib/mm-modem-signal.h101
-rw-r--r--libmm-glib/mm-modem-time.c20
-rw-r--r--libmm-glib/mm-modem.c111
-rw-r--r--libmm-glib/mm-modem.h3
-rw-r--r--libmm-glib/mm-object.c72
-rw-r--r--libmm-glib/mm-object.h6
-rw-r--r--libmm-glib/mm-signal.c441
-rw-r--r--libmm-glib/mm-signal.h98
-rw-r--r--libmm-glib/mm-simple-connect-properties.c8
-rw-r--r--libmm-glib/mm-simple-connect-properties.h2
-rw-r--r--libmm-glib/mm-simple-status.c45
-rw-r--r--libmm-glib/mm-simple-status.h2
-rw-r--r--libmm-glib/mm-sms-properties.c128
-rw-r--r--libmm-glib/mm-sms-properties.h6
-rw-r--r--libmm-glib/mm-sms.c38
-rw-r--r--libmm-glib/mm-sms.h4
-rw-r--r--libmm-glib/mm-unlock-retries.c4
-rw-r--r--libmm-glib/tests/Makefile.in26
50 files changed, 4804 insertions, 237 deletions
diff --git a/libmm-glib/Makefile.am b/libmm-glib/Makefile.am
index 6c1e9ba..54e79fc 100644
--- a/libmm-glib/Makefile.am
+++ b/libmm-glib/Makefile.am
@@ -27,6 +27,10 @@ libmm_glib_la_SOURCES = \
mm-modem-time.c \
mm-modem-firmware.h \
mm-modem-firmware.c \
+ mm-modem-signal.h \
+ mm-modem-signal.c \
+ mm-modem-oma.h \
+ mm-modem-oma.c \
mm-sim.h \
mm-sim.c \
mm-sms.h \
@@ -61,16 +65,26 @@ libmm_glib_la_SOURCES = \
mm-network-timezone.h \
mm-network-timezone.c \
mm-firmware-properties.h \
- mm-firmware-properties.c
+ mm-firmware-properties.c \
+ mm-cdma-manual-activation-properties.h \
+ mm-cdma-manual-activation-properties.c \
+ mm-signal.h \
+ mm-signal.c
libmm_glib_la_CPPFLAGS = \
- $(LIBMM_GLIB_CFLAGS) \
+ -I$(srcdir) \
-I$(top_srcdir) \
+ -I$(top_builddir) \
-I$(top_srcdir)/include \
-I$(top_builddir)/include \
-I${top_srcdir}/libmm-glib/generated \
-I${top_builddir}/libmm-glib/generated \
- -DLIBMM_GLIB_COMPILATION
+ -DLIBMM_GLIB_COMPILATION \
+ $(AM_CPPFLAGS)
+
+libmm_glib_la_CFLAGS = \
+ $(LIBMM_GLIB_CFLAGS) \
+ $(AM_CFLAGS)
libmm_glib_la_LIBADD = \
${top_builddir}/libmm-glib/generated/libmm-generated.la \
@@ -93,6 +107,8 @@ include_HEADERS = \
mm-modem-location.h \
mm-modem-time.h \
mm-modem-firmware.h \
+ mm-modem-signal.h \
+ mm-modem-oma.h \
mm-modem-simple.h \
mm-sim.h \
mm-sms.h \
@@ -109,4 +125,73 @@ include_HEADERS = \
mm-location-cdma-bs.h \
mm-unlock-retries.h \
mm-network-timezone.h \
- mm-firmware-properties.h
+ mm-firmware-properties.h \
+ mm-cdma-manual-activation-properties.h \
+ mm-signal.h
+
+CLEANFILES =
+
+# Introspection
+
+if HAVE_INTROSPECTION
+
+GENERATED_H = \
+ mm-enums-types.h \
+ mm-errors-types.h \
+ mm-gdbus-manager.h \
+ mm-gdbus-sim.h \
+ mm-gdbus-sms.h \
+ mm-gdbus-bearer.h \
+ mm-gdbus-modem.h
+
+GENERATED_C = \
+ mm-enums-types.c \
+ mm-errors-types.c \
+ mm-errors-quarks.c \
+ mm-gdbus-manager.c \
+ mm-gdbus-sim.c \
+ mm-gdbus-sms.c \
+ mm-gdbus-bearer.c \
+ mm-gdbus-modem.c
+
+PUBLIC_H = \
+ ModemManager-names.h \
+ ModemManager-version.h
+ ModemManager-enums.h \
+ ModemManager-errors.h \
+ ModemManager.h
+
+INTROSPECTION_GIRS = ModemManager-1.0.gir
+INTROSPECTION_SCANNER_ARGS = --warn-all
+INTROSPECTION_COMPILER_ARGS =
+
+ModemManager-1.0.gir: libmm-glib.la
+ModemManager_1_0_gir_INCLUDES = GLib-2.0 GObject-2.0 Gio-2.0
+ModemManager_1_0_gir_CFLAGS = $(libmm_glib_la_CPPFLAGS)
+ModemManager_1_0_gir_LIBS = libmm-glib.la
+ModemManager_1_0_gir_EXPORT_PACKAGES = libmm-glib
+ModemManager_1_0_gir_SCANNERFLAGS = \
+ --c-include "libmm-glib.h" \
+ --identifier-prefix=MM \
+ --identifier-prefix=Mm \
+ --symbol-prefix=mm
+ModemManager_1_0_gir_FILES = \
+ $(include_HEADERS) \
+ $(filter-out %.h,$(libmm_glib_la_SOURCES)) \
+ $(filter %.c,$(libmm_glib_la_SOURCES)) \
+ $(addprefix generated/,$(GENERATED_H)) \
+ $(addprefix generated/,$(GENERATED_C)) \
+ $(addprefix ../include/,$(PUBLIC_H)) \
+ $(NULL)
+
+girdir = $(datadir)/gir-1.0
+nodist_gir_DATA = $(INTROSPECTION_GIRS)
+
+typelibdir = $(libdir)/girepository-1.0
+nodist_typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
+
+CLEANFILES += $(nodist_gir_DATA) $(nodist_typelib_DATA)
+
+endif # HAVE_INTROSPECTION
+
+-include $(INTROSPECTION_MAKEFILE)
diff --git a/libmm-glib/Makefile.in b/libmm-glib/Makefile.in
index 2cd295c..6f1368b 100644
--- a/libmm-glib/Makefile.in
+++ b/libmm-glib/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -15,6 +15,7 @@
@SET_MAKE@
+
VPATH = @srcdir@
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
@@ -79,6 +80,7 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
+@HAVE_INTROSPECTION_TRUE@am__append_1 = $(nodist_gir_DATA) $(nodist_typelib_DATA)
subdir = libmm-glib
DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
$(top_srcdir)/depcomp $(include_HEADERS)
@@ -86,12 +88,13 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/compiler_warnings.m4 \
$(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gtk-doc.m4 \
$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
- $(top_srcdir)/m4/intltool.m4 $(top_srcdir)/m4/lib-ld.m4 \
- $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
- $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
- $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
- $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \
- $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \
+ $(top_srcdir)/m4/intltool.m4 $(top_srcdir)/m4/introspection.m4 \
+ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
+ $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+ $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/vapigen.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
@@ -126,7 +129,8 @@ am__uninstall_files_from_dir = { \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
-am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includedir)"
+am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(girdir)" \
+ "$(DESTDIR)$(typelibdir)" "$(DESTDIR)$(includedir)"
LTLIBRARIES = $(lib_LTLIBRARIES)
am__DEPENDENCIES_1 =
libmm_glib_la_DEPENDENCIES = \
@@ -140,9 +144,11 @@ am_libmm_glib_la_OBJECTS = libmm_glib_la-mm-helper-types.lo \
libmm_glib_la-mm-modem-simple.lo \
libmm_glib_la-mm-modem-location.lo \
libmm_glib_la-mm-modem-time.lo \
- libmm_glib_la-mm-modem-firmware.lo libmm_glib_la-mm-sim.lo \
- libmm_glib_la-mm-sms.lo libmm_glib_la-mm-modem-messaging.lo \
- libmm_glib_la-mm-bearer.lo libmm_glib_la-mm-common-helpers.lo \
+ libmm_glib_la-mm-modem-firmware.lo \
+ libmm_glib_la-mm-modem-signal.lo libmm_glib_la-mm-modem-oma.lo \
+ libmm_glib_la-mm-sim.lo libmm_glib_la-mm-sms.lo \
+ libmm_glib_la-mm-modem-messaging.lo libmm_glib_la-mm-bearer.lo \
+ libmm_glib_la-mm-common-helpers.lo \
libmm_glib_la-mm-simple-status.lo \
libmm_glib_la-mm-simple-connect-properties.lo \
libmm_glib_la-mm-bearer-properties.lo \
@@ -154,15 +160,17 @@ am_libmm_glib_la_OBJECTS = libmm_glib_la-mm-helper-types.lo \
libmm_glib_la-mm-location-cdma-bs.lo \
libmm_glib_la-mm-unlock-retries.lo \
libmm_glib_la-mm-network-timezone.lo \
- libmm_glib_la-mm-firmware-properties.lo
+ libmm_glib_la-mm-firmware-properties.lo \
+ libmm_glib_la-mm-cdma-manual-activation-properties.lo \
+ libmm_glib_la-mm-signal.lo
libmm_glib_la_OBJECTS = $(am_libmm_glib_la_OBJECTS)
AM_V_lt = $(am__v_lt_@AM_V@)
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
am__v_lt_0 = --silent
am__v_lt_1 =
libmm_glib_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
- $(libmm_glib_la_LDFLAGS) $(LDFLAGS) -o $@
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(libmm_glib_la_CFLAGS) \
+ $(CFLAGS) $(libmm_glib_la_LDFLAGS) $(LDFLAGS) -o $@
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
@@ -212,6 +220,7 @@ am__can_run_installinfo = \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
+DATA = $(nodist_gir_DATA) $(nodist_typelib_DATA)
HEADERS = $(include_HEADERS)
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
@@ -325,6 +334,14 @@ INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@
INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@
INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@
INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
+INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@
+INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@
+INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@
+INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@
+INTROSPECTION_LIBS = @INTROSPECTION_LIBS@
+INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@
+INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@
+INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBICONV = @LIBICONV@
@@ -391,6 +408,9 @@ STRIP = @STRIP@
SYSTEMD_UNIT_DIR = @SYSTEMD_UNIT_DIR@
UDEV_BASE_DIR = @UDEV_BASE_DIR@
USE_NLS = @USE_NLS@
+VAPIGEN = @VAPIGEN@
+VAPIGEN_MAKEFILE = @VAPIGEN_MAKEFILE@
+VAPIGEN_VAPIDIR = @VAPIGEN_VAPIDIR@
VERSION = @VERSION@
XGETTEXT = @XGETTEXT@
XGETTEXT_015 = @XGETTEXT_015@
@@ -476,6 +496,10 @@ libmm_glib_la_SOURCES = \
mm-modem-time.c \
mm-modem-firmware.h \
mm-modem-firmware.c \
+ mm-modem-signal.h \
+ mm-modem-signal.c \
+ mm-modem-oma.h \
+ mm-modem-oma.c \
mm-sim.h \
mm-sim.c \
mm-sms.h \
@@ -510,16 +534,26 @@ libmm_glib_la_SOURCES = \
mm-network-timezone.h \
mm-network-timezone.c \
mm-firmware-properties.h \
- mm-firmware-properties.c
+ mm-firmware-properties.c \
+ mm-cdma-manual-activation-properties.h \
+ mm-cdma-manual-activation-properties.c \
+ mm-signal.h \
+ mm-signal.c
libmm_glib_la_CPPFLAGS = \
- $(LIBMM_GLIB_CFLAGS) \
+ -I$(srcdir) \
-I$(top_srcdir) \
+ -I$(top_builddir) \
-I$(top_srcdir)/include \
-I$(top_builddir)/include \
-I${top_srcdir}/libmm-glib/generated \
-I${top_builddir}/libmm-glib/generated \
- -DLIBMM_GLIB_COMPILATION
+ -DLIBMM_GLIB_COMPILATION \
+ $(AM_CPPFLAGS)
+
+libmm_glib_la_CFLAGS = \
+ $(LIBMM_GLIB_CFLAGS) \
+ $(AM_CFLAGS)
libmm_glib_la_LIBADD = \
${top_builddir}/libmm-glib/generated/libmm-generated.la \
@@ -541,6 +575,8 @@ include_HEADERS = \
mm-modem-location.h \
mm-modem-time.h \
mm-modem-firmware.h \
+ mm-modem-signal.h \
+ mm-modem-oma.h \
mm-modem-simple.h \
mm-sim.h \
mm-sms.h \
@@ -557,8 +593,62 @@ include_HEADERS = \
mm-location-cdma-bs.h \
mm-unlock-retries.h \
mm-network-timezone.h \
- mm-firmware-properties.h
-
+ mm-firmware-properties.h \
+ mm-cdma-manual-activation-properties.h \
+ mm-signal.h
+
+CLEANFILES = $(am__append_1)
+
+# Introspection
+@HAVE_INTROSPECTION_TRUE@GENERATED_H = \
+@HAVE_INTROSPECTION_TRUE@ mm-enums-types.h \
+@HAVE_INTROSPECTION_TRUE@ mm-errors-types.h \
+@HAVE_INTROSPECTION_TRUE@ mm-gdbus-manager.h \
+@HAVE_INTROSPECTION_TRUE@ mm-gdbus-sim.h \
+@HAVE_INTROSPECTION_TRUE@ mm-gdbus-sms.h \
+@HAVE_INTROSPECTION_TRUE@ mm-gdbus-bearer.h \
+@HAVE_INTROSPECTION_TRUE@ mm-gdbus-modem.h
+
+@HAVE_INTROSPECTION_TRUE@GENERATED_C = \
+@HAVE_INTROSPECTION_TRUE@ mm-enums-types.c \
+@HAVE_INTROSPECTION_TRUE@ mm-errors-types.c \
+@HAVE_INTROSPECTION_TRUE@ mm-errors-quarks.c \
+@HAVE_INTROSPECTION_TRUE@ mm-gdbus-manager.c \
+@HAVE_INTROSPECTION_TRUE@ mm-gdbus-sim.c \
+@HAVE_INTROSPECTION_TRUE@ mm-gdbus-sms.c \
+@HAVE_INTROSPECTION_TRUE@ mm-gdbus-bearer.c \
+@HAVE_INTROSPECTION_TRUE@ mm-gdbus-modem.c
+
+@HAVE_INTROSPECTION_TRUE@PUBLIC_H = \
+@HAVE_INTROSPECTION_TRUE@ ModemManager-names.h \
+@HAVE_INTROSPECTION_TRUE@ ModemManager-version.h
+
+@HAVE_INTROSPECTION_TRUE@INTROSPECTION_GIRS = ModemManager-1.0.gir
+@HAVE_INTROSPECTION_TRUE@INTROSPECTION_SCANNER_ARGS = --warn-all
+@HAVE_INTROSPECTION_TRUE@INTROSPECTION_COMPILER_ARGS =
+@HAVE_INTROSPECTION_TRUE@ModemManager_1_0_gir_INCLUDES = GLib-2.0 GObject-2.0 Gio-2.0
+@HAVE_INTROSPECTION_TRUE@ModemManager_1_0_gir_CFLAGS = $(libmm_glib_la_CPPFLAGS)
+@HAVE_INTROSPECTION_TRUE@ModemManager_1_0_gir_LIBS = libmm-glib.la
+@HAVE_INTROSPECTION_TRUE@ModemManager_1_0_gir_EXPORT_PACKAGES = libmm-glib
+@HAVE_INTROSPECTION_TRUE@ModemManager_1_0_gir_SCANNERFLAGS = \
+@HAVE_INTROSPECTION_TRUE@ --c-include "libmm-glib.h" \
+@HAVE_INTROSPECTION_TRUE@ --identifier-prefix=MM \
+@HAVE_INTROSPECTION_TRUE@ --identifier-prefix=Mm \
+@HAVE_INTROSPECTION_TRUE@ --symbol-prefix=mm
+
+@HAVE_INTROSPECTION_TRUE@ModemManager_1_0_gir_FILES = \
+@HAVE_INTROSPECTION_TRUE@ $(include_HEADERS) \
+@HAVE_INTROSPECTION_TRUE@ $(filter-out %.h,$(libmm_glib_la_SOURCES)) \
+@HAVE_INTROSPECTION_TRUE@ $(filter %.c,$(libmm_glib_la_SOURCES)) \
+@HAVE_INTROSPECTION_TRUE@ $(addprefix generated/,$(GENERATED_H)) \
+@HAVE_INTROSPECTION_TRUE@ $(addprefix generated/,$(GENERATED_C)) \
+@HAVE_INTROSPECTION_TRUE@ $(addprefix ../include/,$(PUBLIC_H)) \
+@HAVE_INTROSPECTION_TRUE@ $(NULL)
+
+@HAVE_INTROSPECTION_TRUE@girdir = $(datadir)/gir-1.0
+@HAVE_INTROSPECTION_TRUE@nodist_gir_DATA = $(INTROSPECTION_GIRS)
+@HAVE_INTROSPECTION_TRUE@typelibdir = $(libdir)/girepository-1.0
+@HAVE_INTROSPECTION_TRUE@nodist_typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
all: all-recursive
.SUFFIXES:
@@ -641,6 +731,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-bearer-ip-config.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-bearer-properties.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-bearer.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-cdma-manual-activation-properties.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-common-helpers.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-firmware-properties.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-helper-types.Plo@am__quote@
@@ -655,11 +746,14 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-modem-firmware.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-modem-location.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-modem-messaging.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-modem-oma.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-modem-signal.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-modem-simple.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-modem-time.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-modem.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-network-timezone.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-object.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-signal.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-sim.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-simple-connect-properties.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmm_glib_la-mm-simple-status.Plo@am__quote@
@@ -692,206 +786,276 @@ distclean-compile:
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
libmm_glib_la-mm-helper-types.lo: mm-helper-types.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-helper-types.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-helper-types.Tpo -c -o libmm_glib_la-mm-helper-types.lo `test -f 'mm-helper-types.c' || echo '$(srcdir)/'`mm-helper-types.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-helper-types.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-helper-types.Tpo -c -o libmm_glib_la-mm-helper-types.lo `test -f 'mm-helper-types.c' || echo '$(srcdir)/'`mm-helper-types.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-helper-types.Tpo $(DEPDIR)/libmm_glib_la-mm-helper-types.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-helper-types.c' object='libmm_glib_la-mm-helper-types.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-helper-types.lo `test -f 'mm-helper-types.c' || echo '$(srcdir)/'`mm-helper-types.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-helper-types.lo `test -f 'mm-helper-types.c' || echo '$(srcdir)/'`mm-helper-types.c
libmm_glib_la-mm-manager.lo: mm-manager.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-manager.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-manager.Tpo -c -o libmm_glib_la-mm-manager.lo `test -f 'mm-manager.c' || echo '$(srcdir)/'`mm-manager.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-manager.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-manager.Tpo -c -o libmm_glib_la-mm-manager.lo `test -f 'mm-manager.c' || echo '$(srcdir)/'`mm-manager.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-manager.Tpo $(DEPDIR)/libmm_glib_la-mm-manager.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-manager.c' object='libmm_glib_la-mm-manager.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-manager.lo `test -f 'mm-manager.c' || echo '$(srcdir)/'`mm-manager.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-manager.lo `test -f 'mm-manager.c' || echo '$(srcdir)/'`mm-manager.c
libmm_glib_la-mm-object.lo: mm-object.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-object.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-object.Tpo -c -o libmm_glib_la-mm-object.lo `test -f 'mm-object.c' || echo '$(srcdir)/'`mm-object.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-object.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-object.Tpo -c -o libmm_glib_la-mm-object.lo `test -f 'mm-object.c' || echo '$(srcdir)/'`mm-object.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-object.Tpo $(DEPDIR)/libmm_glib_la-mm-object.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-object.c' object='libmm_glib_la-mm-object.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-object.lo `test -f 'mm-object.c' || echo '$(srcdir)/'`mm-object.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-object.lo `test -f 'mm-object.c' || echo '$(srcdir)/'`mm-object.c
libmm_glib_la-mm-modem.lo: mm-modem.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-modem.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-modem.Tpo -c -o libmm_glib_la-mm-modem.lo `test -f 'mm-modem.c' || echo '$(srcdir)/'`mm-modem.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-modem.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-modem.Tpo -c -o libmm_glib_la-mm-modem.lo `test -f 'mm-modem.c' || echo '$(srcdir)/'`mm-modem.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-modem.Tpo $(DEPDIR)/libmm_glib_la-mm-modem.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-modem.c' object='libmm_glib_la-mm-modem.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-modem.lo `test -f 'mm-modem.c' || echo '$(srcdir)/'`mm-modem.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-modem.lo `test -f 'mm-modem.c' || echo '$(srcdir)/'`mm-modem.c
libmm_glib_la-mm-modem-3gpp.lo: mm-modem-3gpp.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-modem-3gpp.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-modem-3gpp.Tpo -c -o libmm_glib_la-mm-modem-3gpp.lo `test -f 'mm-modem-3gpp.c' || echo '$(srcdir)/'`mm-modem-3gpp.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-modem-3gpp.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-modem-3gpp.Tpo -c -o libmm_glib_la-mm-modem-3gpp.lo `test -f 'mm-modem-3gpp.c' || echo '$(srcdir)/'`mm-modem-3gpp.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-modem-3gpp.Tpo $(DEPDIR)/libmm_glib_la-mm-modem-3gpp.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-modem-3gpp.c' object='libmm_glib_la-mm-modem-3gpp.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-modem-3gpp.lo `test -f 'mm-modem-3gpp.c' || echo '$(srcdir)/'`mm-modem-3gpp.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-modem-3gpp.lo `test -f 'mm-modem-3gpp.c' || echo '$(srcdir)/'`mm-modem-3gpp.c
libmm_glib_la-mm-modem-3gpp-ussd.lo: mm-modem-3gpp-ussd.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-modem-3gpp-ussd.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-modem-3gpp-ussd.Tpo -c -o libmm_glib_la-mm-modem-3gpp-ussd.lo `test -f 'mm-modem-3gpp-ussd.c' || echo '$(srcdir)/'`mm-modem-3gpp-ussd.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-modem-3gpp-ussd.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-modem-3gpp-ussd.Tpo -c -o libmm_glib_la-mm-modem-3gpp-ussd.lo `test -f 'mm-modem-3gpp-ussd.c' || echo '$(srcdir)/'`mm-modem-3gpp-ussd.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-modem-3gpp-ussd.Tpo $(DEPDIR)/libmm_glib_la-mm-modem-3gpp-ussd.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-modem-3gpp-ussd.c' object='libmm_glib_la-mm-modem-3gpp-ussd.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-modem-3gpp-ussd.lo `test -f 'mm-modem-3gpp-ussd.c' || echo '$(srcdir)/'`mm-modem-3gpp-ussd.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-modem-3gpp-ussd.lo `test -f 'mm-modem-3gpp-ussd.c' || echo '$(srcdir)/'`mm-modem-3gpp-ussd.c
libmm_glib_la-mm-modem-cdma.lo: mm-modem-cdma.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-modem-cdma.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-modem-cdma.Tpo -c -o libmm_glib_la-mm-modem-cdma.lo `test -f 'mm-modem-cdma.c' || echo '$(srcdir)/'`mm-modem-cdma.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-modem-cdma.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-modem-cdma.Tpo -c -o libmm_glib_la-mm-modem-cdma.lo `test -f 'mm-modem-cdma.c' || echo '$(srcdir)/'`mm-modem-cdma.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-modem-cdma.Tpo $(DEPDIR)/libmm_glib_la-mm-modem-cdma.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-modem-cdma.c' object='libmm_glib_la-mm-modem-cdma.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-modem-cdma.lo `test -f 'mm-modem-cdma.c' || echo '$(srcdir)/'`mm-modem-cdma.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-modem-cdma.lo `test -f 'mm-modem-cdma.c' || echo '$(srcdir)/'`mm-modem-cdma.c
libmm_glib_la-mm-modem-simple.lo: mm-modem-simple.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-modem-simple.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-modem-simple.Tpo -c -o libmm_glib_la-mm-modem-simple.lo `test -f 'mm-modem-simple.c' || echo '$(srcdir)/'`mm-modem-simple.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-modem-simple.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-modem-simple.Tpo -c -o libmm_glib_la-mm-modem-simple.lo `test -f 'mm-modem-simple.c' || echo '$(srcdir)/'`mm-modem-simple.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-modem-simple.Tpo $(DEPDIR)/libmm_glib_la-mm-modem-simple.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-modem-simple.c' object='libmm_glib_la-mm-modem-simple.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-modem-simple.lo `test -f 'mm-modem-simple.c' || echo '$(srcdir)/'`mm-modem-simple.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-modem-simple.lo `test -f 'mm-modem-simple.c' || echo '$(srcdir)/'`mm-modem-simple.c
libmm_glib_la-mm-modem-location.lo: mm-modem-location.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-modem-location.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-modem-location.Tpo -c -o libmm_glib_la-mm-modem-location.lo `test -f 'mm-modem-location.c' || echo '$(srcdir)/'`mm-modem-location.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-modem-location.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-modem-location.Tpo -c -o libmm_glib_la-mm-modem-location.lo `test -f 'mm-modem-location.c' || echo '$(srcdir)/'`mm-modem-location.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-modem-location.Tpo $(DEPDIR)/libmm_glib_la-mm-modem-location.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-modem-location.c' object='libmm_glib_la-mm-modem-location.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-modem-location.lo `test -f 'mm-modem-location.c' || echo '$(srcdir)/'`mm-modem-location.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-modem-location.lo `test -f 'mm-modem-location.c' || echo '$(srcdir)/'`mm-modem-location.c
libmm_glib_la-mm-modem-time.lo: mm-modem-time.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-modem-time.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-modem-time.Tpo -c -o libmm_glib_la-mm-modem-time.lo `test -f 'mm-modem-time.c' || echo '$(srcdir)/'`mm-modem-time.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-modem-time.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-modem-time.Tpo -c -o libmm_glib_la-mm-modem-time.lo `test -f 'mm-modem-time.c' || echo '$(srcdir)/'`mm-modem-time.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-modem-time.Tpo $(DEPDIR)/libmm_glib_la-mm-modem-time.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-modem-time.c' object='libmm_glib_la-mm-modem-time.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-modem-time.lo `test -f 'mm-modem-time.c' || echo '$(srcdir)/'`mm-modem-time.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-modem-time.lo `test -f 'mm-modem-time.c' || echo '$(srcdir)/'`mm-modem-time.c
libmm_glib_la-mm-modem-firmware.lo: mm-modem-firmware.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-modem-firmware.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-modem-firmware.Tpo -c -o libmm_glib_la-mm-modem-firmware.lo `test -f 'mm-modem-firmware.c' || echo '$(srcdir)/'`mm-modem-firmware.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-modem-firmware.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-modem-firmware.Tpo -c -o libmm_glib_la-mm-modem-firmware.lo `test -f 'mm-modem-firmware.c' || echo '$(srcdir)/'`mm-modem-firmware.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-modem-firmware.Tpo $(DEPDIR)/libmm_glib_la-mm-modem-firmware.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-modem-firmware.c' object='libmm_glib_la-mm-modem-firmware.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-modem-firmware.lo `test -f 'mm-modem-firmware.c' || echo '$(srcdir)/'`mm-modem-firmware.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-modem-firmware.lo `test -f 'mm-modem-firmware.c' || echo '$(srcdir)/'`mm-modem-firmware.c
+
+libmm_glib_la-mm-modem-signal.lo: mm-modem-signal.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-modem-signal.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-modem-signal.Tpo -c -o libmm_glib_la-mm-modem-signal.lo `test -f 'mm-modem-signal.c' || echo '$(srcdir)/'`mm-modem-signal.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-modem-signal.Tpo $(DEPDIR)/libmm_glib_la-mm-modem-signal.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-modem-signal.c' object='libmm_glib_la-mm-modem-signal.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-modem-signal.lo `test -f 'mm-modem-signal.c' || echo '$(srcdir)/'`mm-modem-signal.c
+
+libmm_glib_la-mm-modem-oma.lo: mm-modem-oma.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-modem-oma.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-modem-oma.Tpo -c -o libmm_glib_la-mm-modem-oma.lo `test -f 'mm-modem-oma.c' || echo '$(srcdir)/'`mm-modem-oma.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-modem-oma.Tpo $(DEPDIR)/libmm_glib_la-mm-modem-oma.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-modem-oma.c' object='libmm_glib_la-mm-modem-oma.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-modem-oma.lo `test -f 'mm-modem-oma.c' || echo '$(srcdir)/'`mm-modem-oma.c
libmm_glib_la-mm-sim.lo: mm-sim.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-sim.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-sim.Tpo -c -o libmm_glib_la-mm-sim.lo `test -f 'mm-sim.c' || echo '$(srcdir)/'`mm-sim.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-sim.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-sim.Tpo -c -o libmm_glib_la-mm-sim.lo `test -f 'mm-sim.c' || echo '$(srcdir)/'`mm-sim.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-sim.Tpo $(DEPDIR)/libmm_glib_la-mm-sim.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-sim.c' object='libmm_glib_la-mm-sim.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-sim.lo `test -f 'mm-sim.c' || echo '$(srcdir)/'`mm-sim.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-sim.lo `test -f 'mm-sim.c' || echo '$(srcdir)/'`mm-sim.c
libmm_glib_la-mm-sms.lo: mm-sms.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-sms.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-sms.Tpo -c -o libmm_glib_la-mm-sms.lo `test -f 'mm-sms.c' || echo '$(srcdir)/'`mm-sms.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-sms.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-sms.Tpo -c -o libmm_glib_la-mm-sms.lo `test -f 'mm-sms.c' || echo '$(srcdir)/'`mm-sms.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-sms.Tpo $(DEPDIR)/libmm_glib_la-mm-sms.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-sms.c' object='libmm_glib_la-mm-sms.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-sms.lo `test -f 'mm-sms.c' || echo '$(srcdir)/'`mm-sms.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-sms.lo `test -f 'mm-sms.c' || echo '$(srcdir)/'`mm-sms.c
libmm_glib_la-mm-modem-messaging.lo: mm-modem-messaging.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-modem-messaging.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-modem-messaging.Tpo -c -o libmm_glib_la-mm-modem-messaging.lo `test -f 'mm-modem-messaging.c' || echo '$(srcdir)/'`mm-modem-messaging.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-modem-messaging.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-modem-messaging.Tpo -c -o libmm_glib_la-mm-modem-messaging.lo `test -f 'mm-modem-messaging.c' || echo '$(srcdir)/'`mm-modem-messaging.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-modem-messaging.Tpo $(DEPDIR)/libmm_glib_la-mm-modem-messaging.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-modem-messaging.c' object='libmm_glib_la-mm-modem-messaging.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-modem-messaging.lo `test -f 'mm-modem-messaging.c' || echo '$(srcdir)/'`mm-modem-messaging.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-modem-messaging.lo `test -f 'mm-modem-messaging.c' || echo '$(srcdir)/'`mm-modem-messaging.c
libmm_glib_la-mm-bearer.lo: mm-bearer.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-bearer.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-bearer.Tpo -c -o libmm_glib_la-mm-bearer.lo `test -f 'mm-bearer.c' || echo '$(srcdir)/'`mm-bearer.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-bearer.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-bearer.Tpo -c -o libmm_glib_la-mm-bearer.lo `test -f 'mm-bearer.c' || echo '$(srcdir)/'`mm-bearer.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-bearer.Tpo $(DEPDIR)/libmm_glib_la-mm-bearer.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-bearer.c' object='libmm_glib_la-mm-bearer.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-bearer.lo `test -f 'mm-bearer.c' || echo '$(srcdir)/'`mm-bearer.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-bearer.lo `test -f 'mm-bearer.c' || echo '$(srcdir)/'`mm-bearer.c
libmm_glib_la-mm-common-helpers.lo: mm-common-helpers.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-common-helpers.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-common-helpers.Tpo -c -o libmm_glib_la-mm-common-helpers.lo `test -f 'mm-common-helpers.c' || echo '$(srcdir)/'`mm-common-helpers.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-common-helpers.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-common-helpers.Tpo -c -o libmm_glib_la-mm-common-helpers.lo `test -f 'mm-common-helpers.c' || echo '$(srcdir)/'`mm-common-helpers.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-common-helpers.Tpo $(DEPDIR)/libmm_glib_la-mm-common-helpers.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-common-helpers.c' object='libmm_glib_la-mm-common-helpers.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-common-helpers.lo `test -f 'mm-common-helpers.c' || echo '$(srcdir)/'`mm-common-helpers.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-common-helpers.lo `test -f 'mm-common-helpers.c' || echo '$(srcdir)/'`mm-common-helpers.c
libmm_glib_la-mm-simple-status.lo: mm-simple-status.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-simple-status.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-simple-status.Tpo -c -o libmm_glib_la-mm-simple-status.lo `test -f 'mm-simple-status.c' || echo '$(srcdir)/'`mm-simple-status.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-simple-status.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-simple-status.Tpo -c -o libmm_glib_la-mm-simple-status.lo `test -f 'mm-simple-status.c' || echo '$(srcdir)/'`mm-simple-status.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-simple-status.Tpo $(DEPDIR)/libmm_glib_la-mm-simple-status.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-simple-status.c' object='libmm_glib_la-mm-simple-status.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-simple-status.lo `test -f 'mm-simple-status.c' || echo '$(srcdir)/'`mm-simple-status.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-simple-status.lo `test -f 'mm-simple-status.c' || echo '$(srcdir)/'`mm-simple-status.c
libmm_glib_la-mm-simple-connect-properties.lo: mm-simple-connect-properties.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-simple-connect-properties.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-simple-connect-properties.Tpo -c -o libmm_glib_la-mm-simple-connect-properties.lo `test -f 'mm-simple-connect-properties.c' || echo '$(srcdir)/'`mm-simple-connect-properties.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-simple-connect-properties.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-simple-connect-properties.Tpo -c -o libmm_glib_la-mm-simple-connect-properties.lo `test -f 'mm-simple-connect-properties.c' || echo '$(srcdir)/'`mm-simple-connect-properties.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-simple-connect-properties.Tpo $(DEPDIR)/libmm_glib_la-mm-simple-connect-properties.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-simple-connect-properties.c' object='libmm_glib_la-mm-simple-connect-properties.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-simple-connect-properties.lo `test -f 'mm-simple-connect-properties.c' || echo '$(srcdir)/'`mm-simple-connect-properties.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-simple-connect-properties.lo `test -f 'mm-simple-connect-properties.c' || echo '$(srcdir)/'`mm-simple-connect-properties.c
libmm_glib_la-mm-bearer-properties.lo: mm-bearer-properties.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-bearer-properties.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-bearer-properties.Tpo -c -o libmm_glib_la-mm-bearer-properties.lo `test -f 'mm-bearer-properties.c' || echo '$(srcdir)/'`mm-bearer-properties.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-bearer-properties.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-bearer-properties.Tpo -c -o libmm_glib_la-mm-bearer-properties.lo `test -f 'mm-bearer-properties.c' || echo '$(srcdir)/'`mm-bearer-properties.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-bearer-properties.Tpo $(DEPDIR)/libmm_glib_la-mm-bearer-properties.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-bearer-properties.c' object='libmm_glib_la-mm-bearer-properties.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-bearer-properties.lo `test -f 'mm-bearer-properties.c' || echo '$(srcdir)/'`mm-bearer-properties.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-bearer-properties.lo `test -f 'mm-bearer-properties.c' || echo '$(srcdir)/'`mm-bearer-properties.c
libmm_glib_la-mm-sms-properties.lo: mm-sms-properties.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-sms-properties.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-sms-properties.Tpo -c -o libmm_glib_la-mm-sms-properties.lo `test -f 'mm-sms-properties.c' || echo '$(srcdir)/'`mm-sms-properties.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-sms-properties.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-sms-properties.Tpo -c -o libmm_glib_la-mm-sms-properties.lo `test -f 'mm-sms-properties.c' || echo '$(srcdir)/'`mm-sms-properties.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-sms-properties.Tpo $(DEPDIR)/libmm_glib_la-mm-sms-properties.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-sms-properties.c' object='libmm_glib_la-mm-sms-properties.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-sms-properties.lo `test -f 'mm-sms-properties.c' || echo '$(srcdir)/'`mm-sms-properties.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-sms-properties.lo `test -f 'mm-sms-properties.c' || echo '$(srcdir)/'`mm-sms-properties.c
libmm_glib_la-mm-bearer-ip-config.lo: mm-bearer-ip-config.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-bearer-ip-config.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-bearer-ip-config.Tpo -c -o libmm_glib_la-mm-bearer-ip-config.lo `test -f 'mm-bearer-ip-config.c' || echo '$(srcdir)/'`mm-bearer-ip-config.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-bearer-ip-config.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-bearer-ip-config.Tpo -c -o libmm_glib_la-mm-bearer-ip-config.lo `test -f 'mm-bearer-ip-config.c' || echo '$(srcdir)/'`mm-bearer-ip-config.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-bearer-ip-config.Tpo $(DEPDIR)/libmm_glib_la-mm-bearer-ip-config.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-bearer-ip-config.c' object='libmm_glib_la-mm-bearer-ip-config.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-bearer-ip-config.lo `test -f 'mm-bearer-ip-config.c' || echo '$(srcdir)/'`mm-bearer-ip-config.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-bearer-ip-config.lo `test -f 'mm-bearer-ip-config.c' || echo '$(srcdir)/'`mm-bearer-ip-config.c
libmm_glib_la-mm-location-3gpp.lo: mm-location-3gpp.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-location-3gpp.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-location-3gpp.Tpo -c -o libmm_glib_la-mm-location-3gpp.lo `test -f 'mm-location-3gpp.c' || echo '$(srcdir)/'`mm-location-3gpp.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-location-3gpp.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-location-3gpp.Tpo -c -o libmm_glib_la-mm-location-3gpp.lo `test -f 'mm-location-3gpp.c' || echo '$(srcdir)/'`mm-location-3gpp.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-location-3gpp.Tpo $(DEPDIR)/libmm_glib_la-mm-location-3gpp.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-location-3gpp.c' object='libmm_glib_la-mm-location-3gpp.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-location-3gpp.lo `test -f 'mm-location-3gpp.c' || echo '$(srcdir)/'`mm-location-3gpp.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-location-3gpp.lo `test -f 'mm-location-3gpp.c' || echo '$(srcdir)/'`mm-location-3gpp.c
libmm_glib_la-mm-location-gps-raw.lo: mm-location-gps-raw.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-location-gps-raw.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-location-gps-raw.Tpo -c -o libmm_glib_la-mm-location-gps-raw.lo `test -f 'mm-location-gps-raw.c' || echo '$(srcdir)/'`mm-location-gps-raw.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-location-gps-raw.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-location-gps-raw.Tpo -c -o libmm_glib_la-mm-location-gps-raw.lo `test -f 'mm-location-gps-raw.c' || echo '$(srcdir)/'`mm-location-gps-raw.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-location-gps-raw.Tpo $(DEPDIR)/libmm_glib_la-mm-location-gps-raw.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-location-gps-raw.c' object='libmm_glib_la-mm-location-gps-raw.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-location-gps-raw.lo `test -f 'mm-location-gps-raw.c' || echo '$(srcdir)/'`mm-location-gps-raw.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-location-gps-raw.lo `test -f 'mm-location-gps-raw.c' || echo '$(srcdir)/'`mm-location-gps-raw.c
libmm_glib_la-mm-location-gps-nmea.lo: mm-location-gps-nmea.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-location-gps-nmea.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-location-gps-nmea.Tpo -c -o libmm_glib_la-mm-location-gps-nmea.lo `test -f 'mm-location-gps-nmea.c' || echo '$(srcdir)/'`mm-location-gps-nmea.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-location-gps-nmea.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-location-gps-nmea.Tpo -c -o libmm_glib_la-mm-location-gps-nmea.lo `test -f 'mm-location-gps-nmea.c' || echo '$(srcdir)/'`mm-location-gps-nmea.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-location-gps-nmea.Tpo $(DEPDIR)/libmm_glib_la-mm-location-gps-nmea.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-location-gps-nmea.c' object='libmm_glib_la-mm-location-gps-nmea.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-location-gps-nmea.lo `test -f 'mm-location-gps-nmea.c' || echo '$(srcdir)/'`mm-location-gps-nmea.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-location-gps-nmea.lo `test -f 'mm-location-gps-nmea.c' || echo '$(srcdir)/'`mm-location-gps-nmea.c
libmm_glib_la-mm-location-cdma-bs.lo: mm-location-cdma-bs.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-location-cdma-bs.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-location-cdma-bs.Tpo -c -o libmm_glib_la-mm-location-cdma-bs.lo `test -f 'mm-location-cdma-bs.c' || echo '$(srcdir)/'`mm-location-cdma-bs.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-location-cdma-bs.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-location-cdma-bs.Tpo -c -o libmm_glib_la-mm-location-cdma-bs.lo `test -f 'mm-location-cdma-bs.c' || echo '$(srcdir)/'`mm-location-cdma-bs.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-location-cdma-bs.Tpo $(DEPDIR)/libmm_glib_la-mm-location-cdma-bs.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-location-cdma-bs.c' object='libmm_glib_la-mm-location-cdma-bs.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-location-cdma-bs.lo `test -f 'mm-location-cdma-bs.c' || echo '$(srcdir)/'`mm-location-cdma-bs.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-location-cdma-bs.lo `test -f 'mm-location-cdma-bs.c' || echo '$(srcdir)/'`mm-location-cdma-bs.c
libmm_glib_la-mm-unlock-retries.lo: mm-unlock-retries.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-unlock-retries.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-unlock-retries.Tpo -c -o libmm_glib_la-mm-unlock-retries.lo `test -f 'mm-unlock-retries.c' || echo '$(srcdir)/'`mm-unlock-retries.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-unlock-retries.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-unlock-retries.Tpo -c -o libmm_glib_la-mm-unlock-retries.lo `test -f 'mm-unlock-retries.c' || echo '$(srcdir)/'`mm-unlock-retries.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-unlock-retries.Tpo $(DEPDIR)/libmm_glib_la-mm-unlock-retries.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-unlock-retries.c' object='libmm_glib_la-mm-unlock-retries.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-unlock-retries.lo `test -f 'mm-unlock-retries.c' || echo '$(srcdir)/'`mm-unlock-retries.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-unlock-retries.lo `test -f 'mm-unlock-retries.c' || echo '$(srcdir)/'`mm-unlock-retries.c
libmm_glib_la-mm-network-timezone.lo: mm-network-timezone.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-network-timezone.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-network-timezone.Tpo -c -o libmm_glib_la-mm-network-timezone.lo `test -f 'mm-network-timezone.c' || echo '$(srcdir)/'`mm-network-timezone.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-network-timezone.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-network-timezone.Tpo -c -o libmm_glib_la-mm-network-timezone.lo `test -f 'mm-network-timezone.c' || echo '$(srcdir)/'`mm-network-timezone.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-network-timezone.Tpo $(DEPDIR)/libmm_glib_la-mm-network-timezone.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-network-timezone.c' object='libmm_glib_la-mm-network-timezone.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-network-timezone.lo `test -f 'mm-network-timezone.c' || echo '$(srcdir)/'`mm-network-timezone.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-network-timezone.lo `test -f 'mm-network-timezone.c' || echo '$(srcdir)/'`mm-network-timezone.c
libmm_glib_la-mm-firmware-properties.lo: mm-firmware-properties.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-firmware-properties.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-firmware-properties.Tpo -c -o libmm_glib_la-mm-firmware-properties.lo `test -f 'mm-firmware-properties.c' || echo '$(srcdir)/'`mm-firmware-properties.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-firmware-properties.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-firmware-properties.Tpo -c -o libmm_glib_la-mm-firmware-properties.lo `test -f 'mm-firmware-properties.c' || echo '$(srcdir)/'`mm-firmware-properties.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-firmware-properties.Tpo $(DEPDIR)/libmm_glib_la-mm-firmware-properties.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-firmware-properties.c' object='libmm_glib_la-mm-firmware-properties.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-firmware-properties.lo `test -f 'mm-firmware-properties.c' || echo '$(srcdir)/'`mm-firmware-properties.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-firmware-properties.lo `test -f 'mm-firmware-properties.c' || echo '$(srcdir)/'`mm-firmware-properties.c
+
+libmm_glib_la-mm-cdma-manual-activation-properties.lo: mm-cdma-manual-activation-properties.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-cdma-manual-activation-properties.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-cdma-manual-activation-properties.Tpo -c -o libmm_glib_la-mm-cdma-manual-activation-properties.lo `test -f 'mm-cdma-manual-activation-properties.c' || echo '$(srcdir)/'`mm-cdma-manual-activation-properties.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-cdma-manual-activation-properties.Tpo $(DEPDIR)/libmm_glib_la-mm-cdma-manual-activation-properties.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-cdma-manual-activation-properties.c' object='libmm_glib_la-mm-cdma-manual-activation-properties.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-cdma-manual-activation-properties.lo `test -f 'mm-cdma-manual-activation-properties.c' || echo '$(srcdir)/'`mm-cdma-manual-activation-properties.c
+
+libmm_glib_la-mm-signal.lo: mm-signal.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -MT libmm_glib_la-mm-signal.lo -MD -MP -MF $(DEPDIR)/libmm_glib_la-mm-signal.Tpo -c -o libmm_glib_la-mm-signal.lo `test -f 'mm-signal.c' || echo '$(srcdir)/'`mm-signal.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmm_glib_la-mm-signal.Tpo $(DEPDIR)/libmm_glib_la-mm-signal.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mm-signal.c' object='libmm_glib_la-mm-signal.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmm_glib_la_CPPFLAGS) $(CPPFLAGS) $(libmm_glib_la_CFLAGS) $(CFLAGS) -c -o libmm_glib_la-mm-signal.lo `test -f 'mm-signal.c' || echo '$(srcdir)/'`mm-signal.c
mostlyclean-libtool:
-rm -f *.lo
clean-libtool:
-rm -rf .libs _libs
+install-nodist_girDATA: $(nodist_gir_DATA)
+ @$(NORMAL_INSTALL)
+ @list='$(nodist_gir_DATA)'; test -n "$(girdir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(girdir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(girdir)" || exit 1; \
+ fi; \
+ for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; \
+ done | $(am__base_list) | \
+ while read files; do \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(girdir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(girdir)" || exit $$?; \
+ done
+
+uninstall-nodist_girDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_gir_DATA)'; test -n "$(girdir)" || list=; \
+ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+ dir='$(DESTDIR)$(girdir)'; $(am__uninstall_files_from_dir)
+install-nodist_typelibDATA: $(nodist_typelib_DATA)
+ @$(NORMAL_INSTALL)
+ @list='$(nodist_typelib_DATA)'; test -n "$(typelibdir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(typelibdir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(typelibdir)" || exit 1; \
+ fi; \
+ for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; \
+ done | $(am__base_list) | \
+ while read files; do \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(typelibdir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(typelibdir)" || exit $$?; \
+ done
+
+uninstall-nodist_typelibDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_typelib_DATA)'; test -n "$(typelibdir)" || list=; \
+ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+ dir='$(DESTDIR)$(typelibdir)'; $(am__uninstall_files_from_dir)
install-includeHEADERS: $(include_HEADERS)
@$(NORMAL_INSTALL)
@list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
@@ -1070,10 +1234,10 @@ distdir: $(DISTFILES)
done
check-am: all-am
check: check-recursive
-all-am: Makefile $(LTLIBRARIES) $(HEADERS)
+all-am: Makefile $(LTLIBRARIES) $(DATA) $(HEADERS)
installdirs: installdirs-recursive
installdirs-am:
- for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includedir)"; do \
+ for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(girdir)" "$(DESTDIR)$(typelibdir)" "$(DESTDIR)$(includedir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-recursive
@@ -1098,6 +1262,7 @@ install-strip:
mostlyclean-generic:
clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
@@ -1129,7 +1294,8 @@ info: info-recursive
info-am:
-install-data-am: install-includeHEADERS
+install-data-am: install-includeHEADERS install-nodist_girDATA \
+ install-nodist_typelibDATA
install-dvi: install-dvi-recursive
@@ -1175,7 +1341,8 @@ ps: ps-recursive
ps-am:
-uninstall-am: uninstall-includeHEADERS uninstall-libLTLIBRARIES
+uninstall-am: uninstall-includeHEADERS uninstall-libLTLIBRARIES \
+ uninstall-nodist_girDATA uninstall-nodist_typelibDATA
.MAKE: $(am__recursive_targets) install-am install-strip
@@ -1187,14 +1354,23 @@ uninstall-am: uninstall-includeHEADERS uninstall-libLTLIBRARIES
install install-am install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-includeHEADERS install-info \
- install-info-am install-libLTLIBRARIES install-man install-pdf \
+ install-info-am install-libLTLIBRARIES install-man \
+ install-nodist_girDATA install-nodist_typelibDATA install-pdf \
install-pdf-am install-ps install-ps-am install-strip \
installcheck installcheck-am installdirs installdirs-am \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \
- uninstall-includeHEADERS uninstall-libLTLIBRARIES
+ uninstall-includeHEADERS uninstall-libLTLIBRARIES \
+ uninstall-nodist_girDATA uninstall-nodist_typelibDATA
+
+@HAVE_INTROSPECTION_TRUE@ ModemManager-enums.h \
+@HAVE_INTROSPECTION_TRUE@ ModemManager-errors.h \
+@HAVE_INTROSPECTION_TRUE@ ModemManager.h
+
+@HAVE_INTROSPECTION_TRUE@ModemManager-1.0.gir: libmm-glib.la
+-include $(INTROSPECTION_MAKEFILE)
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/libmm-glib/generated/Makefile.am b/libmm-glib/generated/Makefile.am
index b54b234..14d7bf3 100644
--- a/libmm-glib/generated/Makefile.am
+++ b/libmm-glib/generated/Makefile.am
@@ -30,10 +30,12 @@ GENERATED_DOC = \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Location.xml \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Time.xml \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Firmware.xml \
+ mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Oma.xml \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.ModemCdma.xml \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Modem3gpp.xml \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Modem3gpp.Ussd.xml \
- mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Simple.xml
+ mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Simple.xml \
+ mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Signal.xml
BUILT_SOURCES = $(GENERATED_H) $(GENERATED_C) $(GENERATED_DOC)
@@ -94,20 +96,24 @@ mm_gdbus_modem_generated = \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Location.xml \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Time.xml \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Firmware.xml \
+ mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Oma.xml \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.ModemCdma.xml \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Modem3gpp.xml \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Modem3gpp.Ussd.xml \
- mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Simple.xml
+ mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Simple.xml \
+ mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Signal.xml
mm_gdbus_modem_deps = \
$(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.xml \
$(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.Messaging.xml \
$(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.Location.xml \
$(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.Time.xml \
$(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.Firmware.xml \
+ $(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.Oma.xml \
$(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.ModemCdma.xml \
$(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.Modem3gpp.xml \
$(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.Modem3gpp.Ussd.xml \
- $(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.Simple.xml
+ $(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.Simple.xml \
+ $(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.Signal.xml
$(mm_gdbus_modem_generated): $(mm_gdbus_modem_deps)
$(AM_V_GEN) gdbus-codegen \
--interface-prefix org.freedesktop.ModemManager1. \
diff --git a/libmm-glib/generated/Makefile.in b/libmm-glib/generated/Makefile.in
index 9671e1e..3406efe 100644
--- a/libmm-glib/generated/Makefile.in
+++ b/libmm-glib/generated/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -86,12 +86,13 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/compiler_warnings.m4 \
$(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gtk-doc.m4 \
$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
- $(top_srcdir)/m4/intltool.m4 $(top_srcdir)/m4/lib-ld.m4 \
- $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
- $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
- $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
- $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \
- $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \
+ $(top_srcdir)/m4/intltool.m4 $(top_srcdir)/m4/introspection.m4 \
+ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
+ $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+ $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/vapigen.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
@@ -265,6 +266,14 @@ INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@
INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@
INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@
INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
+INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@
+INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@
+INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@
+INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@
+INTROSPECTION_LIBS = @INTROSPECTION_LIBS@
+INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@
+INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@
+INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBICONV = @LIBICONV@
@@ -331,6 +340,9 @@ STRIP = @STRIP@
SYSTEMD_UNIT_DIR = @SYSTEMD_UNIT_DIR@
UDEV_BASE_DIR = @UDEV_BASE_DIR@
USE_NLS = @USE_NLS@
+VAPIGEN = @VAPIGEN@
+VAPIGEN_MAKEFILE = @VAPIGEN_MAKEFILE@
+VAPIGEN_VAPIDIR = @VAPIGEN_VAPIDIR@
VERSION = @VERSION@
XGETTEXT = @XGETTEXT@
XGETTEXT_015 = @XGETTEXT_015@
@@ -419,10 +431,12 @@ GENERATED_DOC = \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Location.xml \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Time.xml \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Firmware.xml \
+ mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Oma.xml \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.ModemCdma.xml \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Modem3gpp.xml \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Modem3gpp.Ussd.xml \
- mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Simple.xml
+ mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Simple.xml \
+ mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Signal.xml
BUILT_SOURCES = $(GENERATED_H) $(GENERATED_C) $(GENERATED_DOC)
@@ -442,10 +456,12 @@ mm_gdbus_modem_generated = \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Location.xml \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Time.xml \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Firmware.xml \
+ mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Oma.xml \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.ModemCdma.xml \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Modem3gpp.xml \
mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Modem3gpp.Ussd.xml \
- mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Simple.xml
+ mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Simple.xml \
+ mm-gdbus-doc-org.freedesktop.ModemManager1.Modem.Signal.xml
mm_gdbus_modem_deps = \
$(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.xml \
@@ -453,10 +469,12 @@ mm_gdbus_modem_deps = \
$(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.Location.xml \
$(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.Time.xml \
$(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.Firmware.xml \
+ $(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.Oma.xml \
$(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.ModemCdma.xml \
$(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.Modem3gpp.xml \
$(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.Modem3gpp.Ussd.xml \
- $(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.Simple.xml
+ $(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.Simple.xml \
+ $(top_srcdir)/introspection/org.freedesktop.ModemManager1.Modem.Signal.xml
# SIM interface
diff --git a/libmm-glib/generated/mm-enums-types.h b/libmm-glib/generated/mm-enums-types.h
index 9d132e4..75f02d8 100644
--- a/libmm-glib/generated/mm-enums-types.h
+++ b/libmm-glib/generated/mm-enums-types.h
@@ -250,6 +250,38 @@ const gchar *mm_sms_validity_type_get_string (MMSmsValidityType val);
gchar *mm_sms_validity_type_build_string_from_mask (MMSmsValidityType mask);
#endif
+GType mm_sms_cdma_teleservice_id_get_type (void) G_GNUC_CONST;
+#define MM_TYPE_SMS_CDMA_TELESERVICE_ID (mm_sms_cdma_teleservice_id_get_type ())
+
+/* Define type-specific symbols */
+#undef __MM_IS_ENUM__
+#undef __MM_IS_FLAGS__
+#define __MM_IS_ENUM__
+
+#if defined __MM_IS_ENUM__
+const gchar *mm_sms_cdma_teleservice_id_get_string (MMSmsCdmaTeleserviceId val);
+#endif
+
+#if defined __MM_IS_FLAGS__
+gchar *mm_sms_cdma_teleservice_id_build_string_from_mask (MMSmsCdmaTeleserviceId mask);
+#endif
+
+GType mm_sms_cdma_service_category_get_type (void) G_GNUC_CONST;
+#define MM_TYPE_SMS_CDMA_SERVICE_CATEGORY (mm_sms_cdma_service_category_get_type ())
+
+/* Define type-specific symbols */
+#undef __MM_IS_ENUM__
+#undef __MM_IS_FLAGS__
+#define __MM_IS_ENUM__
+
+#if defined __MM_IS_ENUM__
+const gchar *mm_sms_cdma_service_category_get_string (MMSmsCdmaServiceCategory val);
+#endif
+
+#if defined __MM_IS_FLAGS__
+gchar *mm_sms_cdma_service_category_build_string_from_mask (MMSmsCdmaServiceCategory mask);
+#endif
+
GType mm_modem_location_source_get_type (void) G_GNUC_CONST;
#define MM_TYPE_MODEM_LOCATION_SOURCE (mm_modem_location_source_get_type ())
@@ -426,6 +458,22 @@ const gchar *mm_modem_3gpp_network_availability_get_string (MMModem3gppNetworkAv
gchar *mm_modem_3gpp_network_availability_build_string_from_mask (MMModem3gppNetworkAvailability mask);
#endif
+GType mm_modem_3gpp_subscription_state_get_type (void) G_GNUC_CONST;
+#define MM_TYPE_MODEM_3GPP_SUBSCRIPTION_STATE (mm_modem_3gpp_subscription_state_get_type ())
+
+/* Define type-specific symbols */
+#undef __MM_IS_ENUM__
+#undef __MM_IS_FLAGS__
+#define __MM_IS_ENUM__
+
+#if defined __MM_IS_ENUM__
+const gchar *mm_modem_3gpp_subscription_state_get_string (MMModem3gppSubscriptionState val);
+#endif
+
+#if defined __MM_IS_FLAGS__
+gchar *mm_modem_3gpp_subscription_state_build_string_from_mask (MMModem3gppSubscriptionState mask);
+#endif
+
GType mm_modem_3gpp_ussd_session_state_get_type (void) G_GNUC_CONST;
#define MM_TYPE_MODEM_3GPP_USSD_SESSION_STATE (mm_modem_3gpp_ussd_session_state_get_type ())
@@ -458,6 +506,70 @@ const gchar *mm_firmware_image_type_get_string (MMFirmwareImageType val);
gchar *mm_firmware_image_type_build_string_from_mask (MMFirmwareImageType mask);
#endif
+GType mm_oma_feature_get_type (void) G_GNUC_CONST;
+#define MM_TYPE_OMA_FEATURE (mm_oma_feature_get_type ())
+
+/* Define type-specific symbols */
+#undef __MM_IS_ENUM__
+#undef __MM_IS_FLAGS__
+#define __MM_IS_FLAGS__
+
+#if defined __MM_IS_ENUM__
+const gchar *mm_oma_feature_get_string (MMOmaFeature val);
+#endif
+
+#if defined __MM_IS_FLAGS__
+gchar *mm_oma_feature_build_string_from_mask (MMOmaFeature mask);
+#endif
+
+GType mm_oma_session_type_get_type (void) G_GNUC_CONST;
+#define MM_TYPE_OMA_SESSION_TYPE (mm_oma_session_type_get_type ())
+
+/* Define type-specific symbols */
+#undef __MM_IS_ENUM__
+#undef __MM_IS_FLAGS__
+#define __MM_IS_ENUM__
+
+#if defined __MM_IS_ENUM__
+const gchar *mm_oma_session_type_get_string (MMOmaSessionType val);
+#endif
+
+#if defined __MM_IS_FLAGS__
+gchar *mm_oma_session_type_build_string_from_mask (MMOmaSessionType mask);
+#endif
+
+GType mm_oma_session_state_get_type (void) G_GNUC_CONST;
+#define MM_TYPE_OMA_SESSION_STATE (mm_oma_session_state_get_type ())
+
+/* Define type-specific symbols */
+#undef __MM_IS_ENUM__
+#undef __MM_IS_FLAGS__
+#define __MM_IS_ENUM__
+
+#if defined __MM_IS_ENUM__
+const gchar *mm_oma_session_state_get_string (MMOmaSessionState val);
+#endif
+
+#if defined __MM_IS_FLAGS__
+gchar *mm_oma_session_state_build_string_from_mask (MMOmaSessionState mask);
+#endif
+
+GType mm_oma_session_state_failed_reason_get_type (void) G_GNUC_CONST;
+#define MM_TYPE_OMA_SESSION_STATE_FAILED_REASON (mm_oma_session_state_failed_reason_get_type ())
+
+/* Define type-specific symbols */
+#undef __MM_IS_ENUM__
+#undef __MM_IS_FLAGS__
+#define __MM_IS_ENUM__
+
+#if defined __MM_IS_ENUM__
+const gchar *mm_oma_session_state_failed_reason_get_string (MMOmaSessionStateFailedReason val);
+#endif
+
+#if defined __MM_IS_FLAGS__
+gchar *mm_oma_session_state_failed_reason_build_string_from_mask (MMOmaSessionStateFailedReason mask);
+#endif
+
G_END_DECLS
#endif /* __MM_ENUMS_TYPES_H__ */
diff --git a/libmm-glib/generated/mm-gdbus-bearer.h b/libmm-glib/generated/mm-gdbus-bearer.h
index 5d2c096..b3d25eb 100644
--- a/libmm-glib/generated/mm-gdbus-bearer.h
+++ b/libmm-glib/generated/mm-gdbus-bearer.h
@@ -1,5 +1,5 @@
/*
- * Generated by gdbus-codegen 2.36.3. DO NOT EDIT.
+ * Generated by gdbus-codegen 2.39.3. DO NOT EDIT.
*
* The license of this code is the same as for the source it was derived from.
*/
diff --git a/libmm-glib/generated/mm-gdbus-manager.h b/libmm-glib/generated/mm-gdbus-manager.h
index f30af97..6b67577 100644
--- a/libmm-glib/generated/mm-gdbus-manager.h
+++ b/libmm-glib/generated/mm-gdbus-manager.h
@@ -1,5 +1,5 @@
/*
- * Generated by gdbus-codegen 2.36.3. DO NOT EDIT.
+ * Generated by gdbus-codegen 2.39.3. DO NOT EDIT.
*
* The license of this code is the same as for the source it was derived from.
*/
diff --git a/libmm-glib/generated/mm-gdbus-modem.h b/libmm-glib/generated/mm-gdbus-modem.h
index 3c80357..95acfa5 100644
--- a/libmm-glib/generated/mm-gdbus-modem.h
+++ b/libmm-glib/generated/mm-gdbus-modem.h
@@ -1,5 +1,5 @@
/*
- * Generated by gdbus-codegen 2.36.3. DO NOT EDIT.
+ * Generated by gdbus-codegen 2.39.3. DO NOT EDIT.
*
* The license of this code is the same as for the source it was derived from.
*/
@@ -86,6 +86,8 @@ struct _MmGdbusModemIface
guint (*get_access_technologies) (MmGdbusModem *object);
+ const gchar *const * (*get_bearers) (MmGdbusModem *object);
+
GVariant * (*get_current_bands) (MmGdbusModem *object);
guint (*get_current_capabilities) (MmGdbusModem *object);
@@ -423,6 +425,10 @@ const gchar *mm_gdbus_modem_get_sim (MmGdbusModem *object);
gchar *mm_gdbus_modem_dup_sim (MmGdbusModem *object);
void mm_gdbus_modem_set_sim (MmGdbusModem *object, const gchar *value);
+const gchar *const *mm_gdbus_modem_get_bearers (MmGdbusModem *object);
+gchar **mm_gdbus_modem_dup_bearers (MmGdbusModem *object);
+void mm_gdbus_modem_set_bearers (MmGdbusModem *object, const gchar *const *value);
+
GVariant *mm_gdbus_modem_get_supported_capabilities (MmGdbusModem *object);
GVariant *mm_gdbus_modem_dup_supported_capabilities (MmGdbusModem *object);
void mm_gdbus_modem_set_supported_capabilities (MmGdbusModem *object, GVariant *value);
@@ -653,6 +659,8 @@ struct _MmGdbusModemMessagingIface
guint (*get_default_storage) (MmGdbusModemMessaging *object);
+ const gchar *const * (*get_messages) (MmGdbusModemMessaging *object);
+
GVariant * (*get_supported_storages) (MmGdbusModemMessaging *object);
void (*added) (
@@ -761,6 +769,10 @@ gboolean mm_gdbus_modem_messaging_call_create_sync (
/* D-Bus property accessors: */
+const gchar *const *mm_gdbus_modem_messaging_get_messages (MmGdbusModemMessaging *object);
+gchar **mm_gdbus_modem_messaging_dup_messages (MmGdbusModemMessaging *object);
+void mm_gdbus_modem_messaging_set_messages (MmGdbusModemMessaging *object, const gchar *const *value);
+
GVariant *mm_gdbus_modem_messaging_get_supported_storages (MmGdbusModemMessaging *object);
GVariant *mm_gdbus_modem_messaging_dup_supported_storages (MmGdbusModemMessaging *object);
void mm_gdbus_modem_messaging_set_supported_storages (MmGdbusModemMessaging *object, GVariant *value);
@@ -1430,6 +1442,280 @@ MmGdbusModemFirmware *mm_gdbus_modem_firmware_skeleton_new (void);
/* ------------------------------------------------------------------------ */
+/* Declarations for org.freedesktop.ModemManager1.Modem.Oma */
+
+#define MM_GDBUS_TYPE_MODEM_OMA (mm_gdbus_modem_oma_get_type ())
+#define MM_GDBUS_MODEM_OMA(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), MM_GDBUS_TYPE_MODEM_OMA, MmGdbusModemOma))
+#define MM_GDBUS_IS_MODEM_OMA(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), MM_GDBUS_TYPE_MODEM_OMA))
+#define MM_GDBUS_MODEM_OMA_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), MM_GDBUS_TYPE_MODEM_OMA, MmGdbusModemOmaIface))
+
+struct _MmGdbusModemOma;
+typedef struct _MmGdbusModemOma MmGdbusModemOma;
+typedef struct _MmGdbusModemOmaIface MmGdbusModemOmaIface;
+
+struct _MmGdbusModemOmaIface
+{
+ GTypeInterface parent_iface;
+
+
+
+ gboolean (*handle_accept_network_initiated_session) (
+ MmGdbusModemOma *object,
+ GDBusMethodInvocation *invocation,
+ guint arg_session_id,
+ gboolean arg_accept);
+
+ gboolean (*handle_cancel_session) (
+ MmGdbusModemOma *object,
+ GDBusMethodInvocation *invocation);
+
+ gboolean (*handle_setup) (
+ MmGdbusModemOma *object,
+ GDBusMethodInvocation *invocation,
+ guint arg_features);
+
+ gboolean (*handle_start_client_initiated_session) (
+ MmGdbusModemOma *object,
+ GDBusMethodInvocation *invocation,
+ guint arg_session_type);
+
+ guint (*get_features) (MmGdbusModemOma *object);
+
+ GVariant * (*get_pending_network_initiated_sessions) (MmGdbusModemOma *object);
+
+ gint (*get_session_state) (MmGdbusModemOma *object);
+
+ guint (*get_session_type) (MmGdbusModemOma *object);
+
+ void (*session_state_changed) (
+ MmGdbusModemOma *object,
+ gint arg_old_session_state,
+ gint arg_new_session_state,
+ guint arg_session_state_failed_reason);
+
+};
+
+GType mm_gdbus_modem_oma_get_type (void) G_GNUC_CONST;
+
+GDBusInterfaceInfo *mm_gdbus_modem_oma_interface_info (void);
+guint mm_gdbus_modem_oma_override_properties (GObjectClass *klass, guint property_id_begin);
+
+
+/* D-Bus method call completion functions: */
+void mm_gdbus_modem_oma_complete_setup (
+ MmGdbusModemOma *object,
+ GDBusMethodInvocation *invocation);
+
+void mm_gdbus_modem_oma_complete_start_client_initiated_session (
+ MmGdbusModemOma *object,
+ GDBusMethodInvocation *invocation);
+
+void mm_gdbus_modem_oma_complete_accept_network_initiated_session (
+ MmGdbusModemOma *object,
+ GDBusMethodInvocation *invocation);
+
+void mm_gdbus_modem_oma_complete_cancel_session (
+ MmGdbusModemOma *object,
+ GDBusMethodInvocation *invocation);
+
+
+
+/* D-Bus signal emissions functions: */
+void mm_gdbus_modem_oma_emit_session_state_changed (
+ MmGdbusModemOma *object,
+ gint arg_old_session_state,
+ gint arg_new_session_state,
+ guint arg_session_state_failed_reason);
+
+
+
+/* D-Bus method calls: */
+void mm_gdbus_modem_oma_call_setup (
+ MmGdbusModemOma *proxy,
+ guint arg_features,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean mm_gdbus_modem_oma_call_setup_finish (
+ MmGdbusModemOma *proxy,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean mm_gdbus_modem_oma_call_setup_sync (
+ MmGdbusModemOma *proxy,
+ guint arg_features,
+ GCancellable *cancellable,
+ GError **error);
+
+void mm_gdbus_modem_oma_call_start_client_initiated_session (
+ MmGdbusModemOma *proxy,
+ guint arg_session_type,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean mm_gdbus_modem_oma_call_start_client_initiated_session_finish (
+ MmGdbusModemOma *proxy,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean mm_gdbus_modem_oma_call_start_client_initiated_session_sync (
+ MmGdbusModemOma *proxy,
+ guint arg_session_type,
+ GCancellable *cancellable,
+ GError **error);
+
+void mm_gdbus_modem_oma_call_accept_network_initiated_session (
+ MmGdbusModemOma *proxy,
+ guint arg_session_id,
+ gboolean arg_accept,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean mm_gdbus_modem_oma_call_accept_network_initiated_session_finish (
+ MmGdbusModemOma *proxy,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean mm_gdbus_modem_oma_call_accept_network_initiated_session_sync (
+ MmGdbusModemOma *proxy,
+ guint arg_session_id,
+ gboolean arg_accept,
+ GCancellable *cancellable,
+ GError **error);
+
+void mm_gdbus_modem_oma_call_cancel_session (
+ MmGdbusModemOma *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean mm_gdbus_modem_oma_call_cancel_session_finish (
+ MmGdbusModemOma *proxy,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean mm_gdbus_modem_oma_call_cancel_session_sync (
+ MmGdbusModemOma *proxy,
+ GCancellable *cancellable,
+ GError **error);
+
+
+
+/* D-Bus property accessors: */
+guint mm_gdbus_modem_oma_get_features (MmGdbusModemOma *object);
+void mm_gdbus_modem_oma_set_features (MmGdbusModemOma *object, guint value);
+
+GVariant *mm_gdbus_modem_oma_get_pending_network_initiated_sessions (MmGdbusModemOma *object);
+GVariant *mm_gdbus_modem_oma_dup_pending_network_initiated_sessions (MmGdbusModemOma *object);
+void mm_gdbus_modem_oma_set_pending_network_initiated_sessions (MmGdbusModemOma *object, GVariant *value);
+
+guint mm_gdbus_modem_oma_get_session_type (MmGdbusModemOma *object);
+void mm_gdbus_modem_oma_set_session_type (MmGdbusModemOma *object, guint value);
+
+gint mm_gdbus_modem_oma_get_session_state (MmGdbusModemOma *object);
+void mm_gdbus_modem_oma_set_session_state (MmGdbusModemOma *object, gint value);
+
+
+/* ---- */
+
+#define MM_GDBUS_TYPE_MODEM_OMA_PROXY (mm_gdbus_modem_oma_proxy_get_type ())
+#define MM_GDBUS_MODEM_OMA_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), MM_GDBUS_TYPE_MODEM_OMA_PROXY, MmGdbusModemOmaProxy))
+#define MM_GDBUS_MODEM_OMA_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), MM_GDBUS_TYPE_MODEM_OMA_PROXY, MmGdbusModemOmaProxyClass))
+#define MM_GDBUS_MODEM_OMA_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), MM_GDBUS_TYPE_MODEM_OMA_PROXY, MmGdbusModemOmaProxyClass))
+#define MM_GDBUS_IS_MODEM_OMA_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), MM_GDBUS_TYPE_MODEM_OMA_PROXY))
+#define MM_GDBUS_IS_MODEM_OMA_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), MM_GDBUS_TYPE_MODEM_OMA_PROXY))
+
+typedef struct _MmGdbusModemOmaProxy MmGdbusModemOmaProxy;
+typedef struct _MmGdbusModemOmaProxyClass MmGdbusModemOmaProxyClass;
+typedef struct _MmGdbusModemOmaProxyPrivate MmGdbusModemOmaProxyPrivate;
+
+struct _MmGdbusModemOmaProxy
+{
+ /*< private >*/
+ GDBusProxy parent_instance;
+ MmGdbusModemOmaProxyPrivate *priv;
+};
+
+struct _MmGdbusModemOmaProxyClass
+{
+ GDBusProxyClass parent_class;
+};
+
+GType mm_gdbus_modem_oma_proxy_get_type (void) G_GNUC_CONST;
+
+void mm_gdbus_modem_oma_proxy_new (
+ GDBusConnection *connection,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+MmGdbusModemOma *mm_gdbus_modem_oma_proxy_new_finish (
+ GAsyncResult *res,
+ GError **error);
+MmGdbusModemOma *mm_gdbus_modem_oma_proxy_new_sync (
+ GDBusConnection *connection,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GError **error);
+
+void mm_gdbus_modem_oma_proxy_new_for_bus (
+ GBusType bus_type,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+MmGdbusModemOma *mm_gdbus_modem_oma_proxy_new_for_bus_finish (
+ GAsyncResult *res,
+ GError **error);
+MmGdbusModemOma *mm_gdbus_modem_oma_proxy_new_for_bus_sync (
+ GBusType bus_type,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GError **error);
+
+
+/* ---- */
+
+#define MM_GDBUS_TYPE_MODEM_OMA_SKELETON (mm_gdbus_modem_oma_skeleton_get_type ())
+#define MM_GDBUS_MODEM_OMA_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), MM_GDBUS_TYPE_MODEM_OMA_SKELETON, MmGdbusModemOmaSkeleton))
+#define MM_GDBUS_MODEM_OMA_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), MM_GDBUS_TYPE_MODEM_OMA_SKELETON, MmGdbusModemOmaSkeletonClass))
+#define MM_GDBUS_MODEM_OMA_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), MM_GDBUS_TYPE_MODEM_OMA_SKELETON, MmGdbusModemOmaSkeletonClass))
+#define MM_GDBUS_IS_MODEM_OMA_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), MM_GDBUS_TYPE_MODEM_OMA_SKELETON))
+#define MM_GDBUS_IS_MODEM_OMA_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), MM_GDBUS_TYPE_MODEM_OMA_SKELETON))
+
+typedef struct _MmGdbusModemOmaSkeleton MmGdbusModemOmaSkeleton;
+typedef struct _MmGdbusModemOmaSkeletonClass MmGdbusModemOmaSkeletonClass;
+typedef struct _MmGdbusModemOmaSkeletonPrivate MmGdbusModemOmaSkeletonPrivate;
+
+struct _MmGdbusModemOmaSkeleton
+{
+ /*< private >*/
+ GDBusInterfaceSkeleton parent_instance;
+ MmGdbusModemOmaSkeletonPrivate *priv;
+};
+
+struct _MmGdbusModemOmaSkeletonClass
+{
+ GDBusInterfaceSkeletonClass parent_class;
+};
+
+GType mm_gdbus_modem_oma_skeleton_get_type (void) G_GNUC_CONST;
+
+MmGdbusModemOma *mm_gdbus_modem_oma_skeleton_new (void);
+
+
+/* ------------------------------------------------------------------------ */
/* Declarations for org.freedesktop.ModemManager1.Modem.ModemCdma */
#define MM_GDBUS_TYPE_MODEM_CDMA (mm_gdbus_modem_cdma_get_type ())
@@ -1701,6 +1987,8 @@ struct _MmGdbusModem3gppIface
guint (*get_registration_state) (MmGdbusModem3gpp *object);
+ guint (*get_subscription_state) (MmGdbusModem3gpp *object);
+
};
GType mm_gdbus_modem3gpp_get_type (void) G_GNUC_CONST;
@@ -1779,6 +2067,9 @@ void mm_gdbus_modem3gpp_set_operator_name (MmGdbusModem3gpp *object, const gchar
guint mm_gdbus_modem3gpp_get_enabled_facility_locks (MmGdbusModem3gpp *object);
void mm_gdbus_modem3gpp_set_enabled_facility_locks (MmGdbusModem3gpp *object, guint value);
+guint mm_gdbus_modem3gpp_get_subscription_state (MmGdbusModem3gpp *object);
+void mm_gdbus_modem3gpp_set_subscription_state (MmGdbusModem3gpp *object, guint value);
+
/* ---- */
@@ -2316,6 +2607,197 @@ GType mm_gdbus_modem_simple_skeleton_get_type (void) G_GNUC_CONST;
MmGdbusModemSimple *mm_gdbus_modem_simple_skeleton_new (void);
+/* ------------------------------------------------------------------------ */
+/* Declarations for org.freedesktop.ModemManager1.Modem.Signal */
+
+#define MM_GDBUS_TYPE_MODEM_SIGNAL (mm_gdbus_modem_signal_get_type ())
+#define MM_GDBUS_MODEM_SIGNAL(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), MM_GDBUS_TYPE_MODEM_SIGNAL, MmGdbusModemSignal))
+#define MM_GDBUS_IS_MODEM_SIGNAL(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), MM_GDBUS_TYPE_MODEM_SIGNAL))
+#define MM_GDBUS_MODEM_SIGNAL_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), MM_GDBUS_TYPE_MODEM_SIGNAL, MmGdbusModemSignalIface))
+
+struct _MmGdbusModemSignal;
+typedef struct _MmGdbusModemSignal MmGdbusModemSignal;
+typedef struct _MmGdbusModemSignalIface MmGdbusModemSignalIface;
+
+struct _MmGdbusModemSignalIface
+{
+ GTypeInterface parent_iface;
+
+
+ gboolean (*handle_setup) (
+ MmGdbusModemSignal *object,
+ GDBusMethodInvocation *invocation,
+ guint arg_rate);
+
+ GVariant * (*get_cdma) (MmGdbusModemSignal *object);
+
+ GVariant * (*get_evdo) (MmGdbusModemSignal *object);
+
+ GVariant * (*get_gsm) (MmGdbusModemSignal *object);
+
+ GVariant * (*get_lte) (MmGdbusModemSignal *object);
+
+ guint (*get_rate) (MmGdbusModemSignal *object);
+
+ GVariant * (*get_umts) (MmGdbusModemSignal *object);
+
+};
+
+GType mm_gdbus_modem_signal_get_type (void) G_GNUC_CONST;
+
+GDBusInterfaceInfo *mm_gdbus_modem_signal_interface_info (void);
+guint mm_gdbus_modem_signal_override_properties (GObjectClass *klass, guint property_id_begin);
+
+
+/* D-Bus method call completion functions: */
+void mm_gdbus_modem_signal_complete_setup (
+ MmGdbusModemSignal *object,
+ GDBusMethodInvocation *invocation);
+
+
+
+/* D-Bus method calls: */
+void mm_gdbus_modem_signal_call_setup (
+ MmGdbusModemSignal *proxy,
+ guint arg_rate,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean mm_gdbus_modem_signal_call_setup_finish (
+ MmGdbusModemSignal *proxy,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean mm_gdbus_modem_signal_call_setup_sync (
+ MmGdbusModemSignal *proxy,
+ guint arg_rate,
+ GCancellable *cancellable,
+ GError **error);
+
+
+
+/* D-Bus property accessors: */
+guint mm_gdbus_modem_signal_get_rate (MmGdbusModemSignal *object);
+void mm_gdbus_modem_signal_set_rate (MmGdbusModemSignal *object, guint value);
+
+GVariant *mm_gdbus_modem_signal_get_cdma (MmGdbusModemSignal *object);
+GVariant *mm_gdbus_modem_signal_dup_cdma (MmGdbusModemSignal *object);
+void mm_gdbus_modem_signal_set_cdma (MmGdbusModemSignal *object, GVariant *value);
+
+GVariant *mm_gdbus_modem_signal_get_evdo (MmGdbusModemSignal *object);
+GVariant *mm_gdbus_modem_signal_dup_evdo (MmGdbusModemSignal *object);
+void mm_gdbus_modem_signal_set_evdo (MmGdbusModemSignal *object, GVariant *value);
+
+GVariant *mm_gdbus_modem_signal_get_gsm (MmGdbusModemSignal *object);
+GVariant *mm_gdbus_modem_signal_dup_gsm (MmGdbusModemSignal *object);
+void mm_gdbus_modem_signal_set_gsm (MmGdbusModemSignal *object, GVariant *value);
+
+GVariant *mm_gdbus_modem_signal_get_umts (MmGdbusModemSignal *object);
+GVariant *mm_gdbus_modem_signal_dup_umts (MmGdbusModemSignal *object);
+void mm_gdbus_modem_signal_set_umts (MmGdbusModemSignal *object, GVariant *value);
+
+GVariant *mm_gdbus_modem_signal_get_lte (MmGdbusModemSignal *object);
+GVariant *mm_gdbus_modem_signal_dup_lte (MmGdbusModemSignal *object);
+void mm_gdbus_modem_signal_set_lte (MmGdbusModemSignal *object, GVariant *value);
+
+
+/* ---- */
+
+#define MM_GDBUS_TYPE_MODEM_SIGNAL_PROXY (mm_gdbus_modem_signal_proxy_get_type ())
+#define MM_GDBUS_MODEM_SIGNAL_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), MM_GDBUS_TYPE_MODEM_SIGNAL_PROXY, MmGdbusModemSignalProxy))
+#define MM_GDBUS_MODEM_SIGNAL_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), MM_GDBUS_TYPE_MODEM_SIGNAL_PROXY, MmGdbusModemSignalProxyClass))
+#define MM_GDBUS_MODEM_SIGNAL_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), MM_GDBUS_TYPE_MODEM_SIGNAL_PROXY, MmGdbusModemSignalProxyClass))
+#define MM_GDBUS_IS_MODEM_SIGNAL_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), MM_GDBUS_TYPE_MODEM_SIGNAL_PROXY))
+#define MM_GDBUS_IS_MODEM_SIGNAL_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), MM_GDBUS_TYPE_MODEM_SIGNAL_PROXY))
+
+typedef struct _MmGdbusModemSignalProxy MmGdbusModemSignalProxy;
+typedef struct _MmGdbusModemSignalProxyClass MmGdbusModemSignalProxyClass;
+typedef struct _MmGdbusModemSignalProxyPrivate MmGdbusModemSignalProxyPrivate;
+
+struct _MmGdbusModemSignalProxy
+{
+ /*< private >*/
+ GDBusProxy parent_instance;
+ MmGdbusModemSignalProxyPrivate *priv;
+};
+
+struct _MmGdbusModemSignalProxyClass
+{
+ GDBusProxyClass parent_class;
+};
+
+GType mm_gdbus_modem_signal_proxy_get_type (void) G_GNUC_CONST;
+
+void mm_gdbus_modem_signal_proxy_new (
+ GDBusConnection *connection,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+MmGdbusModemSignal *mm_gdbus_modem_signal_proxy_new_finish (
+ GAsyncResult *res,
+ GError **error);
+MmGdbusModemSignal *mm_gdbus_modem_signal_proxy_new_sync (
+ GDBusConnection *connection,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GError **error);
+
+void mm_gdbus_modem_signal_proxy_new_for_bus (
+ GBusType bus_type,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+MmGdbusModemSignal *mm_gdbus_modem_signal_proxy_new_for_bus_finish (
+ GAsyncResult *res,
+ GError **error);
+MmGdbusModemSignal *mm_gdbus_modem_signal_proxy_new_for_bus_sync (
+ GBusType bus_type,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GError **error);
+
+
+/* ---- */
+
+#define MM_GDBUS_TYPE_MODEM_SIGNAL_SKELETON (mm_gdbus_modem_signal_skeleton_get_type ())
+#define MM_GDBUS_MODEM_SIGNAL_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), MM_GDBUS_TYPE_MODEM_SIGNAL_SKELETON, MmGdbusModemSignalSkeleton))
+#define MM_GDBUS_MODEM_SIGNAL_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), MM_GDBUS_TYPE_MODEM_SIGNAL_SKELETON, MmGdbusModemSignalSkeletonClass))
+#define MM_GDBUS_MODEM_SIGNAL_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), MM_GDBUS_TYPE_MODEM_SIGNAL_SKELETON, MmGdbusModemSignalSkeletonClass))
+#define MM_GDBUS_IS_MODEM_SIGNAL_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), MM_GDBUS_TYPE_MODEM_SIGNAL_SKELETON))
+#define MM_GDBUS_IS_MODEM_SIGNAL_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), MM_GDBUS_TYPE_MODEM_SIGNAL_SKELETON))
+
+typedef struct _MmGdbusModemSignalSkeleton MmGdbusModemSignalSkeleton;
+typedef struct _MmGdbusModemSignalSkeletonClass MmGdbusModemSignalSkeletonClass;
+typedef struct _MmGdbusModemSignalSkeletonPrivate MmGdbusModemSignalSkeletonPrivate;
+
+struct _MmGdbusModemSignalSkeleton
+{
+ /*< private >*/
+ GDBusInterfaceSkeleton parent_instance;
+ MmGdbusModemSignalSkeletonPrivate *priv;
+};
+
+struct _MmGdbusModemSignalSkeletonClass
+{
+ GDBusInterfaceSkeletonClass parent_class;
+};
+
+GType mm_gdbus_modem_signal_skeleton_get_type (void) G_GNUC_CONST;
+
+MmGdbusModemSignal *mm_gdbus_modem_signal_skeleton_new (void);
+
+
/* ---- */
#define MM_GDBUS_TYPE_OBJECT (mm_gdbus_object_get_type ())
@@ -2339,19 +2821,23 @@ MmGdbusModemMessaging *mm_gdbus_object_get_modem_messaging (MmGdbusObject *objec
MmGdbusModemLocation *mm_gdbus_object_get_modem_location (MmGdbusObject *object);
MmGdbusModemTime *mm_gdbus_object_get_modem_time (MmGdbusObject *object);
MmGdbusModemFirmware *mm_gdbus_object_get_modem_firmware (MmGdbusObject *object);
+MmGdbusModemOma *mm_gdbus_object_get_modem_oma (MmGdbusObject *object);
MmGdbusModemCdma *mm_gdbus_object_get_modem_cdma (MmGdbusObject *object);
MmGdbusModem3gpp *mm_gdbus_object_get_modem3gpp (MmGdbusObject *object);
MmGdbusModem3gppUssd *mm_gdbus_object_get_modem3gpp_ussd (MmGdbusObject *object);
MmGdbusModemSimple *mm_gdbus_object_get_modem_simple (MmGdbusObject *object);
+MmGdbusModemSignal *mm_gdbus_object_get_modem_signal (MmGdbusObject *object);
MmGdbusModem *mm_gdbus_object_peek_modem (MmGdbusObject *object);
MmGdbusModemMessaging *mm_gdbus_object_peek_modem_messaging (MmGdbusObject *object);
MmGdbusModemLocation *mm_gdbus_object_peek_modem_location (MmGdbusObject *object);
MmGdbusModemTime *mm_gdbus_object_peek_modem_time (MmGdbusObject *object);
MmGdbusModemFirmware *mm_gdbus_object_peek_modem_firmware (MmGdbusObject *object);
+MmGdbusModemOma *mm_gdbus_object_peek_modem_oma (MmGdbusObject *object);
MmGdbusModemCdma *mm_gdbus_object_peek_modem_cdma (MmGdbusObject *object);
MmGdbusModem3gpp *mm_gdbus_object_peek_modem3gpp (MmGdbusObject *object);
MmGdbusModem3gppUssd *mm_gdbus_object_peek_modem3gpp_ussd (MmGdbusObject *object);
MmGdbusModemSimple *mm_gdbus_object_peek_modem_simple (MmGdbusObject *object);
+MmGdbusModemSignal *mm_gdbus_object_peek_modem_signal (MmGdbusObject *object);
#define MM_GDBUS_TYPE_OBJECT_PROXY (mm_gdbus_object_proxy_get_type ())
#define MM_GDBUS_OBJECT_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), MM_GDBUS_TYPE_OBJECT_PROXY, MmGdbusObjectProxy))
@@ -2409,10 +2895,12 @@ void mm_gdbus_object_skeleton_set_modem_messaging (MmGdbusObjectSkeleton *object
void mm_gdbus_object_skeleton_set_modem_location (MmGdbusObjectSkeleton *object, MmGdbusModemLocation *interface_);
void mm_gdbus_object_skeleton_set_modem_time (MmGdbusObjectSkeleton *object, MmGdbusModemTime *interface_);
void mm_gdbus_object_skeleton_set_modem_firmware (MmGdbusObjectSkeleton *object, MmGdbusModemFirmware *interface_);
+void mm_gdbus_object_skeleton_set_modem_oma (MmGdbusObjectSkeleton *object, MmGdbusModemOma *interface_);
void mm_gdbus_object_skeleton_set_modem_cdma (MmGdbusObjectSkeleton *object, MmGdbusModemCdma *interface_);
void mm_gdbus_object_skeleton_set_modem3gpp (MmGdbusObjectSkeleton *object, MmGdbusModem3gpp *interface_);
void mm_gdbus_object_skeleton_set_modem3gpp_ussd (MmGdbusObjectSkeleton *object, MmGdbusModem3gppUssd *interface_);
void mm_gdbus_object_skeleton_set_modem_simple (MmGdbusObjectSkeleton *object, MmGdbusModemSimple *interface_);
+void mm_gdbus_object_skeleton_set_modem_signal (MmGdbusObjectSkeleton *object, MmGdbusModemSignal *interface_);
/* ---- */
diff --git a/libmm-glib/generated/mm-gdbus-sim.h b/libmm-glib/generated/mm-gdbus-sim.h
index b318a6d..09571a5 100644
--- a/libmm-glib/generated/mm-gdbus-sim.h
+++ b/libmm-glib/generated/mm-gdbus-sim.h
@@ -1,5 +1,5 @@
/*
- * Generated by gdbus-codegen 2.36.3. DO NOT EDIT.
+ * Generated by gdbus-codegen 2.39.3. DO NOT EDIT.
*
* The license of this code is the same as for the source it was derived from.
*/
diff --git a/libmm-glib/generated/mm-gdbus-sms.h b/libmm-glib/generated/mm-gdbus-sms.h
index c965eb2..f20ede0 100644
--- a/libmm-glib/generated/mm-gdbus-sms.h
+++ b/libmm-glib/generated/mm-gdbus-sms.h
@@ -1,5 +1,5 @@
/*
- * Generated by gdbus-codegen 2.36.3. DO NOT EDIT.
+ * Generated by gdbus-codegen 2.39.3. DO NOT EDIT.
*
* The license of this code is the same as for the source it was derived from.
*/
@@ -54,12 +54,16 @@ struct _MmGdbusSmsIface
guint (*get_pdu_type) (MmGdbusSms *object);
+ guint (*get_service_category) (MmGdbusSms *object);
+
const gchar * (*get_smsc) (MmGdbusSms *object);
guint (*get_state) (MmGdbusSms *object);
guint (*get_storage) (MmGdbusSms *object);
+ guint (*get_teleservice_id) (MmGdbusSms *object);
+
const gchar * (*get_text) (MmGdbusSms *object);
const gchar * (*get_timestamp) (MmGdbusSms *object);
@@ -152,6 +156,12 @@ void mm_gdbus_sms_set_validity (MmGdbusSms *object, GVariant *value);
gint mm_gdbus_sms_get_class (MmGdbusSms *object);
void mm_gdbus_sms_set_class (MmGdbusSms *object, gint value);
+guint mm_gdbus_sms_get_teleservice_id (MmGdbusSms *object);
+void mm_gdbus_sms_set_teleservice_id (MmGdbusSms *object, guint value);
+
+guint mm_gdbus_sms_get_service_category (MmGdbusSms *object);
+void mm_gdbus_sms_set_service_category (MmGdbusSms *object, guint value);
+
gboolean mm_gdbus_sms_get_delivery_report_request (MmGdbusSms *object);
void mm_gdbus_sms_set_delivery_report_request (MmGdbusSms *object, gboolean value);
diff --git a/libmm-glib/libmm-glib.h b/libmm-glib/libmm-glib.h
index 8b5e920..30f72d3 100644
--- a/libmm-glib/libmm-glib.h
+++ b/libmm-glib/libmm-glib.h
@@ -43,6 +43,8 @@
# include <mm-modem-messaging.h>
# include <mm-modem-time.h>
# include <mm-modem-firmware.h>
+# include <mm-modem-signal.h>
+# include <mm-modem-oma.h>
#endif
#if defined (_LIBMM_INSIDE_MM) || \
@@ -66,6 +68,8 @@
#include <mm-unlock-retries.h>
#include <mm-network-timezone.h>
#include <mm-firmware-properties.h>
+#include <mm-cdma-manual-activation-properties.h>
+#include <mm-signal.h>
/* generated */
#include <mm-errors-types.h>
diff --git a/libmm-glib/mm-bearer-ip-config.c b/libmm-glib/mm-bearer-ip-config.c
index 14f99f3..e436c39 100644
--- a/libmm-glib/mm-bearer-ip-config.c
+++ b/libmm-glib/mm-bearer-ip-config.c
@@ -139,7 +139,7 @@ mm_bearer_ip_config_set_prefix (MMBearerIpConfig *self,
*
* Gets the list of IP addresses of DNS servers to be used with this bearer.
*
- * Returns: a NULL-terminated array of strings. Do not free the returned value, it is owned by @self.
+ * Returns: (transfer none) (array zero-terminated=1): a NULL-terminated array of strings. Do not free the returned value, it is owned by @self.
*/
const gchar **
mm_bearer_ip_config_get_dns (MMBearerIpConfig *self)
@@ -331,6 +331,14 @@ mm_bearer_ip_config_new_from_dictionary (GVariant *dictionary,
/*****************************************************************************/
+/**
+ * mm_bearer_ip_config_dup:
+ * @orig: a #MMBearerIpConfig
+ *
+ * Creates a copy of @orig.
+ *
+ * Returns: (transfer full): a newly created #MMBearerIpConfig
+ */
MMBearerIpConfig *
mm_bearer_ip_config_dup (MMBearerIpConfig *orig)
{
diff --git a/libmm-glib/mm-bearer-properties.c b/libmm-glib/mm-bearer-properties.c
index c4f4ba2..c864f8e 100644
--- a/libmm-glib/mm-bearer-properties.c
+++ b/libmm-glib/mm-bearer-properties.c
@@ -408,6 +408,16 @@ mm_bearer_properties_get_dictionary (MMBearerProperties *self)
/*****************************************************************************/
+
+/**
+ * mm_bearer_properties_consume_string:
+ * @self: a #MMBearerProperties
+ * @key:
+ * @value:
+ * @error: (allow-none): Return location for error or %NULL.
+ *
+ * Returns: %TRUE if the operation succeded, %FALSE if @error is set.
+ */
gboolean
mm_bearer_properties_consume_string (MMBearerProperties *self,
const gchar *key,
@@ -517,6 +527,15 @@ mm_bearer_properties_new_from_string (const gchar *str,
/*****************************************************************************/
+/**
+ * mm_bearer_properties_consume_variant:
+ * @properties: a #MMBearerProperties
+ * @key:
+ * @value: a #GVariant
+ * @error: (allow-none): Return location for error or %NULL.
+ *
+ * Returns: %TRUE if the operation succeded, %FALSE if @error is set.
+ */
gboolean
mm_bearer_properties_consume_variant (MMBearerProperties *properties,
const gchar *key,
@@ -613,6 +632,14 @@ mm_bearer_properties_new_from_dictionary (GVariant *dictionary,
/*****************************************************************************/
+/**
+ * mm_bearer_properties_dup:
+ * @orig: a #MMBearerProperties
+ *
+ * Creates a copy of @orig.
+ *
+ * Returns: (transfer full): a newly created #MMBearerProperties
+ */
MMBearerProperties *
mm_bearer_properties_dup (MMBearerProperties *orig)
{
diff --git a/libmm-glib/mm-bearer-properties.h b/libmm-glib/mm-bearer-properties.h
index 852d16e..361c867 100644
--- a/libmm-glib/mm-bearer-properties.h
+++ b/libmm-glib/mm-bearer-properties.h
@@ -102,7 +102,7 @@ gboolean mm_bearer_properties_consume_string (MMBearerProperties *self,
const gchar *value,
GError **error);
-gboolean mm_bearer_properties_consume_variant (MMBearerProperties *self,
+gboolean mm_bearer_properties_consume_variant (MMBearerProperties *properties,
const gchar *key,
GVariant *value,
GError **error);
diff --git a/libmm-glib/mm-bearer.c b/libmm-glib/mm-bearer.c
index 36da4f7..4694cbe 100644
--- a/libmm-glib/mm-bearer.c
+++ b/libmm-glib/mm-bearer.c
@@ -273,7 +273,7 @@ ensure_internal_ipv4_config (MMBearer *self,
* mm_bearer_get_ipv4_config() again to get a new #MMBearerIpConfig with the
* new values.</warning>
*
- * Returns: (transfer full) A #MMBearerIpConfig that must be freed with g_object_unref() or %NULL if unknown.
+ * Returns: (transfer full): A #MMBearerIpConfig that must be freed with g_object_unref() or %NULL if unknown.
*/
MMBearerIpConfig *
mm_bearer_get_ipv4_config (MMBearer *self)
@@ -298,7 +298,7 @@ mm_bearer_get_ipv4_config (MMBearer *self)
* @self was constructed. Use mm_bearer_get_ipv4_config() if on another
* thread.</warning>
*
- * Returns: (transfer none) A #MMBearerIpConfig. Do not free the returned value, it belongs to @self.
+ * Returns: (transfer none): A #MMBearerIpConfig. Do not free the returned value, it belongs to @self.
*/
MMBearerIpConfig *
mm_bearer_peek_ipv4_config (MMBearer *self)
@@ -385,7 +385,7 @@ ensure_internal_ipv6_config (MMBearer *self,
* mm_bearer_get_ipv6_config() again to get a new #MMBearerIpConfig with the
* new values.</warning>
*
- * Returns: (transfer full) A #MMBearerIpConfig that must be freed with g_object_unref() or %NULL if unknown.
+ * Returns: (transfer full): A #MMBearerIpConfig that must be freed with g_object_unref() or %NULL if unknown.
*/
MMBearerIpConfig *
mm_bearer_get_ipv6_config (MMBearer *self)
@@ -410,7 +410,7 @@ mm_bearer_get_ipv6_config (MMBearer *self)
* @self was constructed. Use mm_bearer_get_ipv6_config() if on another
* thread.</warning>
*
- * Returns: (transfer none) A #MMBearerIpConfig. Do not free the returned value, it belongs to @self.
+ * Returns: (transfer none): A #MMBearerIpConfig. Do not free the returned value, it belongs to @self.
*/
MMBearerIpConfig *
mm_bearer_peek_ipv6_config (MMBearer *self)
@@ -497,7 +497,7 @@ ensure_internal_properties (MMBearer *self,
* mm_bearer_get_properties() again to get a new #MMBearerProperties with the
* new values.</warning>
*
- * Returns: (transfer full) A #MMBearerProperties that must be freed with g_object_unref() or %NULL if unknown.
+ * Returns: (transfer full): A #MMBearerProperties that must be freed with g_object_unref() or %NULL if unknown.
*/
MMBearerProperties *
mm_bearer_get_properties (MMBearer *self)
@@ -522,7 +522,7 @@ mm_bearer_get_properties (MMBearer *self)
* @self was constructed. Use mm_bearer_get_properties() if on another
* thread.</warning>
*
- * Returns: (transfer none) A #MMBearerProperties. Do not free the returned value, it belongs to @self.
+ * Returns: (transfer none): A #MMBearerProperties. Do not free the returned value, it belongs to @self.
*/
MMBearerProperties *
mm_bearer_peek_properties (MMBearer *self)
diff --git a/libmm-glib/mm-cdma-manual-activation-properties.c b/libmm-glib/mm-cdma-manual-activation-properties.c
new file mode 100644
index 0000000..7d017c4
--- /dev/null
+++ b/libmm-glib/mm-cdma-manual-activation-properties.c
@@ -0,0 +1,879 @@
+/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details:
+ *
+ * Copyright (C) 2012 Google Inc.
+ */
+
+#include <string.h>
+
+#include "mm-errors-types.h"
+#include "mm-common-helpers.h"
+#include "mm-cdma-manual-activation-properties.h"
+
+/**
+ * SECTION: mm-cdma-manual-activation-properties
+ * @title: MMCdmaManualActivationProperties
+ * @short_description: Helper object to handle manual CDMA activation properties.
+ *
+ * The #MMCdmaManualActivationProperties is an object handling the properties
+ * required during a manual CDMA activation request.
+ */
+
+G_DEFINE_TYPE (MMCdmaManualActivationProperties, mm_cdma_manual_activation_properties, G_TYPE_OBJECT)
+
+#define PROPERTY_SPC "spc"
+#define PROPERTY_SID "sid"
+#define PROPERTY_MDN "mdn"
+#define PROPERTY_MIN "min"
+#define PROPERTY_MN_HA_KEY "mn-ha-key"
+#define PROPERTY_MN_AAA_KEY "mn-aaa-key"
+#define PROPERTY_PRL "prl"
+
+struct _MMCdmaManualActivationPropertiesPrivate {
+ /* Mandatory parameters */
+ gchar *spc;
+ guint16 sid;
+ gchar *mdn;
+ gchar *min;
+ /* Optional */
+ gchar *mn_ha_key;
+ gchar *mn_aaa_key;
+ GByteArray *prl;
+};
+
+/*****************************************************************************/
+
+/**
+ * mm_cdma_manual_activation_properties_get_spc:
+ * @self: A #MMCdmaManualActivationProperties.
+ *
+ * Gets the Service Programming Code.
+ *
+ * Returns: (transfer none): The SPC. Do not free the returned value, it is owned by @self.
+ */
+const gchar *
+mm_cdma_manual_activation_properties_get_spc (MMCdmaManualActivationProperties *self)
+{
+ g_return_val_if_fail (MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES (self), NULL);
+
+ return self->priv->spc;
+}
+
+/* SPC is a 6-digit string */
+static gboolean
+validate_spc (const gchar *spc,
+ GError **error)
+{
+ guint i;
+
+ if (strlen (spc) != 6) {
+ g_set_error (error,
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "SPC must be exactly 6-digit long");
+ return FALSE;
+ }
+
+ for (i = 0; i < 6; i ++) {
+ if (!g_ascii_isdigit (spc[i])) {
+ g_set_error (error,
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "SPC must not contain non-digit characters");
+ return FALSE;
+ }
+ }
+
+ return TRUE;
+}
+
+/**
+ * mm_cdma_manual_activation_properties_set_spc:
+ * @self: A #MMCdmaManualActivationProperties.
+ * @spc: The SPC string, exactly 6 digits.
+ * @error: Return location for error or %NULL.
+ *
+ * Sets the Service Programming Code.
+ *
+ * Returns: %TRUE if the SPC was successfully set, or %FALSE if @error is set.
+ */
+gboolean
+mm_cdma_manual_activation_properties_set_spc (MMCdmaManualActivationProperties *self,
+ const gchar *spc,
+ GError **error)
+{
+ g_return_val_if_fail (MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES (self), FALSE);
+
+ if (!validate_spc (spc, error))
+ return FALSE;
+
+ g_free (self->priv->spc);
+ self->priv->spc = g_strdup (spc);
+ return TRUE;
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_cdma_manual_activation_properties_get_sid:
+ * @self: A #MMCdmaManualActivationProperties.
+ *
+ * Gets the System Identification Number.
+ *
+ * Returns: The SID.
+ */
+guint16
+mm_cdma_manual_activation_properties_get_sid (MMCdmaManualActivationProperties *self)
+{
+ g_return_val_if_fail (MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES (self), 0);
+
+ return self->priv->sid;
+}
+
+/**
+ * mm_cdma_manual_activation_properties_set_sid:
+ * @self: A #MMCdmaManualActivationProperties.
+ * @sid: The SID.
+ *
+ * Sets the Service Identification Number.
+ */
+void
+mm_cdma_manual_activation_properties_set_sid (MMCdmaManualActivationProperties *self,
+ guint16 sid)
+{
+ g_return_if_fail (MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES (self));
+
+ self->priv->sid = sid;
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_cdma_manual_activation_properties_get_mdn:
+ * @self: A #MMCdmaManualActivationProperties.
+ *
+ * Gets the Mobile Directory Number.
+ *
+ * Returns: (transfer none): The MDN. Do not free the returned value, it is owned by @self.
+ */
+const gchar *
+mm_cdma_manual_activation_properties_get_mdn (MMCdmaManualActivationProperties *self)
+{
+ g_return_val_if_fail (MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES (self), NULL);
+
+ return self->priv->mdn;
+}
+
+/* MDN is max 15 characters */
+static gboolean
+validate_mdn (const gchar *mdn,
+ GError **error)
+{
+ if (strlen (mdn) > 15) {
+ g_set_error (error,
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "MDN must be maximum 15 characters long");
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+/**
+ * mm_cdma_manual_activation_properties_set_mdn:
+ * @self: A #MMCdmaManualActivationProperties.
+ * @mdn: The MDN string, maximum 15 characters.
+ * @error: Return location for error or %NULL.
+ *
+ * Sets the Mobile Directory Number.
+ *
+ * Returns: %TRUE if the MDN was successfully set, or %FALSE if @error is set.
+ */
+gboolean
+mm_cdma_manual_activation_properties_set_mdn (MMCdmaManualActivationProperties *self,
+ const gchar *mdn,
+ GError **error)
+{
+ g_return_val_if_fail (MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES (self), FALSE);
+
+ if (!validate_mdn (mdn, error))
+ return FALSE;
+
+ g_free (self->priv->mdn);
+ self->priv->mdn = g_strdup (mdn);
+ return TRUE;
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_cdma_manual_activation_properties_get_min:
+ * @self: A #MMCdmaManualActivationProperties.
+ *
+ * Gets the Mobile Indentification Number.
+ *
+ * Returns: (transfer none): The MIN. Do not free the returned value, it is owned by @self.
+ */
+const gchar *
+mm_cdma_manual_activation_properties_get_min (MMCdmaManualActivationProperties *self)
+{
+ g_return_val_if_fail (MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES (self), NULL);
+
+ return self->priv->min;
+}
+
+/* MIN is max 15 characters */
+static gboolean
+validate_min (const gchar *min,
+ GError **error)
+{
+ if (strlen (min) > 15) {
+ g_set_error (error,
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "MIN must be maximum 15 characters long");
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+/**
+ * mm_cdma_manual_activation_properties_set_min:
+ * @self: A #MMCdmaManualActivationProperties.
+ * @min: The MIN string, maximum 15 characters.
+ * @error: Return location for error or %NULL.
+ *
+ * Sets the Mobile Identification Number.
+ *
+ * Returns: %TRUE if the MIN was successfully set, or %FALSE if @error is set.
+ */
+gboolean
+mm_cdma_manual_activation_properties_set_min (MMCdmaManualActivationProperties *self,
+ const gchar *min,
+ GError **error)
+{
+ g_return_val_if_fail (MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES (self), FALSE);
+
+ if (!validate_min (min, error))
+ return FALSE;
+
+ g_free (self->priv->min);
+ self->priv->min = g_strdup (min);
+ return TRUE;
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_cdma_manual_activation_properties_get_mn_ha_key:
+ * @self: A #MMCdmaManualActivationProperties.
+ *
+ * Gets the MN-HA key.
+ *
+ * Returns: (transfer none): The MN-HA key. Do not free the returned value, it is owned by @self.
+ */
+const gchar *
+mm_cdma_manual_activation_properties_get_mn_ha_key (MMCdmaManualActivationProperties *self)
+{
+ g_return_val_if_fail (MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES (self), NULL);
+
+ return self->priv->mn_ha_key;
+}
+
+/* MN-HA key is max 16 characters */
+static gboolean
+validate_mn_ha_key (const gchar *mn_ha_key,
+ GError **error)
+{
+ if (strlen (mn_ha_key) > 16) {
+ g_set_error (error,
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "MN-HA key must be maximum 16 characters long");
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+/**
+ * mm_cdma_manual_activation_properties_set_mn_ha_key:
+ * @self: A #MMCdmaManualActivationProperties.
+ * @mn_ha_key: The MN-HA key string, maximum 16 characters.
+ * @error: Return location for error or %NULL.
+ *
+ * Sets the Mobile Identification Number.
+ *
+ * Returns: %TRUE if the MN-HA key was successfully set, or %FALSE if @error is set.
+ */
+gboolean
+mm_cdma_manual_activation_properties_set_mn_ha_key (MMCdmaManualActivationProperties *self,
+ const gchar *mn_ha_key,
+ GError **error)
+{
+ g_return_val_if_fail (MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES (self), FALSE);
+
+ if (!validate_mn_ha_key (mn_ha_key, error))
+ return FALSE;
+
+ g_free (self->priv->mn_ha_key);
+ self->priv->mn_ha_key = g_strdup (mn_ha_key);
+ return TRUE;
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_cdma_manual_activation_properties_get_mn_aaa_key:
+ * @self: A #MMCdmaManualActivationProperties.
+ *
+ * Gets the MN-AAA key.
+ *
+ * Returns: (transfer none): The MN-AAA key. Do not free the returned value, it is owned by @self.
+ */
+const gchar *
+mm_cdma_manual_activation_properties_get_mn_aaa_key (MMCdmaManualActivationProperties *self)
+{
+ g_return_val_if_fail (MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES (self), NULL);
+
+ return self->priv->mn_aaa_key;
+}
+
+/* MN-AAA key is max 16 characters */
+static gboolean
+validate_mn_aaa_key (const gchar *mn_aaa_key,
+ GError **error)
+{
+ if (strlen (mn_aaa_key) > 16) {
+ g_set_error (error,
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "MN-AAA key must be maximum 16 characters long");
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+/**
+ * mm_cdma_manual_activation_properties_set_mn_aaa_key:
+ * @self: A #MMCdmaManualActivationProperties.
+ * @mn_aaa_key: The MN-AAA key string, maximum 16 characters.
+ * @error: Return location for error or %NULL.
+ *
+ * Sets the Mobile Identification Number.
+ *
+ * Returns: %TRUE if the MN-AAA key was successfully set, or %FALSE if @error is set.
+ */
+gboolean
+mm_cdma_manual_activation_properties_set_mn_aaa_key (MMCdmaManualActivationProperties *self,
+ const gchar *mn_aaa_key,
+ GError **error)
+{
+ g_return_val_if_fail (MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES (self), FALSE);
+
+ if (!validate_mn_aaa_key (mn_aaa_key, error))
+ return FALSE;
+
+ g_free (self->priv->mn_aaa_key);
+ self->priv->mn_aaa_key = g_strdup (mn_aaa_key);
+ return TRUE;
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_cdma_manual_activation_properties_get_prl:
+ * @self: A #MMCdmaManualActivationProperties.
+ * @prl_len: (out): Size of the returned PRL.
+ *
+ * Gets the Preferred Roaming List.
+ *
+ * Returns: (transfer none): The PRL. Do not free the returned value, it is owned by @self.
+ */
+const guint8 *
+mm_cdma_manual_activation_properties_get_prl (MMCdmaManualActivationProperties *self,
+ gsize *prl_len)
+{
+ g_return_val_if_fail (MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES (self), NULL);
+ if (self->priv->prl && prl_len)
+ *prl_len = self->priv->prl->len;
+
+ return self->priv->prl->data;
+}
+
+/**
+ * mm_cdma_manual_activation_properties_peek_prl_bytearray:
+ * @self: A #MMCdmaManualActivationProperties.
+ *
+ * Gets the Preferred Roaming List.
+ *
+ * Returns: (transfer none): A #GByteArray with the PRL, or %NULL if it doesn't contain any. Do not free the returned value, it is owned by @self.
+ */
+GByteArray *
+mm_cdma_manual_activation_properties_peek_prl_bytearray (MMCdmaManualActivationProperties *self)
+{
+ g_return_val_if_fail (MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES (self), NULL);
+
+ return self->priv->prl;
+}
+
+/**
+ * mm_cdma_manual_activation_properties_get_prl_bytearray:
+ * @self: A #MMCdmaManualActivationProperties.
+ *
+ * Gets the Preferred Roaming List.
+ *
+ * Returns: (transfer full): A #GByteArray with the PRL, or %NULL if it doesn't contain any. The returned value should be freed with g_byte_array_unref().
+ */
+GByteArray *
+mm_cdma_manual_activation_properties_get_prl_bytearray (MMCdmaManualActivationProperties *self)
+{
+ g_return_val_if_fail (MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES (self), NULL);
+
+ return (self->priv->prl ? g_byte_array_ref (self->priv->prl) : NULL);
+}
+
+static gboolean
+validate_prl (const guint8 *prl,
+ gsize prl_size,
+ GError **error)
+{
+ if (prl_size > 16384) {
+ g_set_error (error,
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "PRL must be maximum 16384 bytes long");
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+/**
+ * mm_cdma_manual_activation_properties_set_prl:
+ * @self: A #MMCdmaManualActivationProperties.
+ * @prl: The PRL.
+ * @prl_length: Length of @prl.
+ * @error: Return location for error or %NULL.
+ *
+ * Sets the Preferred Roaming List.
+ *
+ * Returns: %TRUE if the PRL was successfully set, or %FALSE if @error is set.
+ */
+gboolean
+mm_cdma_manual_activation_properties_set_prl (MMCdmaManualActivationProperties *self,
+ const guint8 *prl,
+ gsize prl_length,
+ GError **error)
+{
+ g_return_val_if_fail (MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES (self), FALSE);
+
+ if (!validate_prl (prl, prl_length, error))
+ return FALSE;
+
+ if (self->priv->prl)
+ g_byte_array_unref (self->priv->prl);
+
+ if (prl && prl_length)
+ self->priv->prl = g_byte_array_append (g_byte_array_sized_new (prl_length),
+ prl,
+ prl_length);
+ else
+ self->priv->prl = NULL;
+ return TRUE;
+}
+
+/**
+ * mm_cdma_manual_activation_properties_set_prl_bytearray:
+ * @self: A #MMCdmaManualActivationProperties.
+ * @prl: A #GByteArray with the PRL to set. This method takes a new reference of @prl.
+ * @error: Return location for error or %NULL.
+ *
+ * Sets the Preferred Roaming List.
+ *
+ * Returns: %TRUE if the PRL was successfully set, or %FALSE if @error is set.
+ */
+gboolean
+mm_cdma_manual_activation_properties_set_prl_bytearray (MMCdmaManualActivationProperties *self,
+ GByteArray *prl,
+ GError **error)
+{
+ g_return_val_if_fail (MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES (self), FALSE);
+
+ if (!validate_prl (prl->data, prl->len, error))
+ return FALSE;
+
+ if (self->priv->prl)
+ g_byte_array_unref (self->priv->prl);
+
+ self->priv->prl = (prl ? g_byte_array_ref (prl) : NULL);
+ return TRUE;
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_cdma_manual_activation_properties_get_dictionary:
+ * @self: A #MMCdmaManualActivationProperties.
+ *
+ * Gets a variant dictionary with the contents of @self.
+ *
+ * Returns: (transfer full): A dictionary with the properties. The returned value should be freed with g_variant_unref().
+ */
+GVariant *
+mm_cdma_manual_activation_properties_get_dictionary (MMCdmaManualActivationProperties *self)
+{
+ GVariantBuilder builder;
+
+ g_return_val_if_fail (MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES (self), NULL);
+
+ /* We do allow NULL */
+ if (!self)
+ return NULL;
+
+ g_return_val_if_fail (MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES (self), NULL);
+
+ g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}"));
+
+ if (self->priv->spc)
+ g_variant_builder_add (&builder,
+ "{sv}",
+ PROPERTY_SPC,
+ g_variant_new_string (self->priv->spc));
+ if (self->priv->sid)
+ g_variant_builder_add (&builder,
+ "{sv}",
+ PROPERTY_SID,
+ g_variant_new_uint16 (self->priv->sid));
+ if (self->priv->mdn)
+ g_variant_builder_add (&builder,
+ "{sv}",
+ PROPERTY_MDN,
+ g_variant_new_string (self->priv->mdn));
+ if (self->priv->min)
+ g_variant_builder_add (&builder,
+ "{sv}",
+ PROPERTY_MIN,
+ g_variant_new_string (self->priv->min));
+ if (self->priv->mn_ha_key)
+ g_variant_builder_add (&builder,
+ "{sv}",
+ PROPERTY_MN_HA_KEY,
+ g_variant_new_string (self->priv->mn_ha_key));
+ if (self->priv->mn_aaa_key)
+ g_variant_builder_add (&builder,
+ "{sv}",
+ PROPERTY_MN_AAA_KEY,
+ g_variant_new_string (self->priv->mn_aaa_key));
+ if (self->priv->prl)
+ g_variant_builder_add (
+ &builder,
+ "{sv}",
+ PROPERTY_PRL,
+ g_variant_new_from_data (G_VARIANT_TYPE ("ay"),
+ self->priv->prl->data,
+ self->priv->prl->len * sizeof (guint8),
+ TRUE,
+ NULL,
+ NULL));
+
+ return g_variant_ref_sink (g_variant_builder_end (&builder));
+}
+
+/*****************************************************************************/
+
+static gboolean
+consume_variant (MMCdmaManualActivationProperties *self,
+ const gchar *key,
+ GVariant *value,
+ GError **error)
+{
+ if (g_str_equal (key, PROPERTY_SPC))
+ return (mm_cdma_manual_activation_properties_set_spc (
+ self,
+ g_variant_get_string (value, NULL),
+ error));
+
+ if (g_str_equal (key, PROPERTY_SID)) {
+ mm_cdma_manual_activation_properties_set_sid (
+ self,
+ g_variant_get_uint16 (value));
+ return TRUE;
+ }
+
+ if (g_str_equal (key, PROPERTY_MDN))
+ return (mm_cdma_manual_activation_properties_set_mdn (
+ self,
+ g_variant_get_string (value, NULL),
+ error));
+
+ if (g_str_equal (key, PROPERTY_MIN))
+ return (mm_cdma_manual_activation_properties_set_min (
+ self,
+ g_variant_get_string (value, NULL),
+ error));
+
+ if (g_str_equal (key, PROPERTY_MN_HA_KEY))
+ return (mm_cdma_manual_activation_properties_set_mn_ha_key (
+ self,
+ g_variant_get_string (value, NULL),
+ error));
+
+ if (g_str_equal (key, PROPERTY_MN_AAA_KEY))
+ return (mm_cdma_manual_activation_properties_set_mn_aaa_key (
+ self,
+ g_variant_get_string (value, NULL),
+ error));
+
+ if (g_str_equal (key, PROPERTY_PRL)) {
+ const guint8 *prl;
+ gsize prl_len = 0;
+
+ prl = g_variant_get_fixed_array (value, &prl_len, sizeof (guint8));
+ return (mm_cdma_manual_activation_properties_set_prl (
+ self,
+ prl,
+ prl_len,
+ error));
+ }
+
+ /* Set error */
+ g_set_error (error,
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "Invalid properties dictionary, unexpected key '%s'",
+ key);
+ return FALSE;
+}
+
+/**
+ * mm_cdma_manual_activation_properties_new_from_dictionary:
+ * @dictionary: A variant dictionary with the properties of the image.
+ * @error: Return location for error or %NULL.
+ *
+ * Creates a new #MMCdmaManualActivationProperties object with the properties exposed in
+ * the dictionary.
+ *
+ * Returns: (transfer full): A #MMCdmaManualActivationProperties or %NULL if @error is set. The returned value should be freed with g_object_unref().
+ */
+MMCdmaManualActivationProperties *
+mm_cdma_manual_activation_properties_new_from_dictionary (GVariant *dictionary,
+ GError **error)
+{
+ GError *inner_error = NULL;
+ GVariantIter iter;
+ gchar *key;
+ GVariant *value;
+ MMCdmaManualActivationProperties *self;
+
+ if (!dictionary) {
+ g_set_error (error,
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "Cannot create CDMA manual activation properties from empty dictionary");
+ return NULL;
+ }
+
+ if (!g_variant_is_of_type (dictionary, G_VARIANT_TYPE ("a{sv}"))) {
+ g_set_error (error,
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "Cannot create CDMA manual activation properties from dictionary: "
+ "invalid variant type received");
+ return NULL;
+ }
+
+ self = mm_cdma_manual_activation_properties_new ();
+
+ g_variant_iter_init (&iter, dictionary);
+ while (!inner_error &&
+ g_variant_iter_next (&iter, "{sv}", &key, &value)) {
+ consume_variant (self,
+ key,
+ value,
+ &inner_error);
+ g_free (key);
+ g_variant_unref (value);
+ }
+
+ /* If error, destroy the object */
+ if (inner_error) {
+ g_propagate_error (error, inner_error);
+ g_object_unref (self);
+ return NULL;
+ }
+
+ /* If mandatory properties missing, destroy the object */
+ if (!self->priv->spc ||
+ !self->priv->sid ||
+ !self->priv->mdn ||
+ !self->priv->min) {
+ g_set_error (error,
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "Cannot create CDMA manual activation properties from dictionary: "
+ "mandatory parameter missing");
+ g_object_unref (self);
+ return NULL;
+ }
+
+ return self;
+}
+
+/*****************************************************************************/
+
+static gboolean
+consume_string (MMCdmaManualActivationProperties *self,
+ const gchar *key,
+ const gchar *value,
+ GError **error)
+{
+ if (g_str_equal (key, PROPERTY_SPC))
+ return mm_cdma_manual_activation_properties_set_spc (self, value, error);
+
+ if (g_str_equal (key, PROPERTY_SID)) {
+ guint sid;
+
+ if (!mm_get_uint_from_str (value, &sid)) {
+ g_set_error (error,
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "Invalid SID integer value: '%s'",
+ value);
+ return FALSE;
+ }
+
+ mm_cdma_manual_activation_properties_set_sid (self, sid);
+ return TRUE;
+ }
+
+ if (g_str_equal (key, PROPERTY_MDN))
+ return mm_cdma_manual_activation_properties_set_mdn (self, value, error);
+
+ if (g_str_equal (key, PROPERTY_MIN))
+ return mm_cdma_manual_activation_properties_set_min (self, value, error);
+
+ if (g_str_equal (key, PROPERTY_MN_HA_KEY))
+ return mm_cdma_manual_activation_properties_set_mn_ha_key (self, value, error);
+
+ if (g_str_equal (key, PROPERTY_MN_AAA_KEY))
+ return mm_cdma_manual_activation_properties_set_mn_aaa_key (self, value, error);
+
+ if (g_str_equal (key, PROPERTY_PRL)) {
+ g_set_error (error,
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "Invalid properties string, key '%s' cannot be given in a string",
+ key);
+ return FALSE;
+ }
+
+ /* Set error */
+ g_set_error (error,
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "Invalid properties dictionary, unexpected key '%s'",
+ key);
+ return FALSE;
+}
+
+typedef struct {
+ MMCdmaManualActivationProperties *properties;
+ GError *error;
+} ParseKeyValueContext;
+
+static gboolean
+key_value_foreach (const gchar *key,
+ const gchar *value,
+ ParseKeyValueContext *ctx)
+{
+ return consume_string (ctx->properties,
+ key,
+ value,
+ &ctx->error);
+}
+
+MMCdmaManualActivationProperties *
+mm_cdma_manual_activation_properties_new_from_string (const gchar *str,
+ GError **error)
+{
+ ParseKeyValueContext ctx;
+
+ ctx.properties = mm_cdma_manual_activation_properties_new ();
+ ctx.error = NULL;
+
+ mm_common_parse_key_value_string (str,
+ &ctx.error,
+ (MMParseKeyValueForeachFn)key_value_foreach,
+ &ctx);
+
+ /* If error, destroy the object */
+ if (ctx.error) {
+ g_propagate_error (error, ctx.error);
+ g_object_unref (ctx.properties);
+ ctx.properties = NULL;
+ }
+
+ return ctx.properties;
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_cdma_manual_activation_properties_new:
+ *
+ * Creates a new #MMCdmaManualActivationProperties object.
+ *
+ * Returns: (transfer full): A #MMCdmaManualActivationProperties. The returned value should be freed with g_object_unref().
+ */
+MMCdmaManualActivationProperties *
+mm_cdma_manual_activation_properties_new (void)
+{
+ return (MMCdmaManualActivationProperties *) g_object_new (MM_TYPE_CDMA_MANUAL_ACTIVATION_PROPERTIES, NULL);
+}
+
+static void
+mm_cdma_manual_activation_properties_init (MMCdmaManualActivationProperties *self)
+{
+ self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self,
+ MM_TYPE_CDMA_MANUAL_ACTIVATION_PROPERTIES,
+ MMCdmaManualActivationPropertiesPrivate);
+}
+
+static void
+finalize (GObject *object)
+{
+ MMCdmaManualActivationProperties *self = MM_CDMA_MANUAL_ACTIVATION_PROPERTIES (object);
+
+ g_free (self->priv->spc);
+ g_free (self->priv->mdn);
+ g_free (self->priv->min);
+ g_free (self->priv->mn_ha_key);
+ g_free (self->priv->mn_aaa_key);
+ if (self->priv->prl)
+ g_byte_array_unref (self->priv->prl);
+
+ G_OBJECT_CLASS (mm_cdma_manual_activation_properties_parent_class)->finalize (object);
+}
+
+static void
+mm_cdma_manual_activation_properties_class_init (MMCdmaManualActivationPropertiesClass *klass)
+{
+ GObjectClass *object_class = G_OBJECT_CLASS (klass);
+
+ g_type_class_add_private (object_class, sizeof (MMCdmaManualActivationPropertiesPrivate));
+
+ object_class->finalize = finalize;
+}
diff --git a/libmm-glib/mm-cdma-manual-activation-properties.h b/libmm-glib/mm-cdma-manual-activation-properties.h
new file mode 100644
index 0000000..062f701
--- /dev/null
+++ b/libmm-glib/mm-cdma-manual-activation-properties.h
@@ -0,0 +1,113 @@
+/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details:
+ *
+ * Copyright (C) 2013 Google Inc.
+ */
+
+#ifndef MM_CDMA_MANUAL_ACTIVATION_PROPERTIES_H
+#define MM_CDMA_MANUAL_ACTIVATION_PROPERTIES_H
+
+#if !defined (__LIBMM_GLIB_H_INSIDE__) && !defined (LIBMM_GLIB_COMPILATION)
+#error "Only <libmm-glib.h> can be included directly."
+#endif
+
+#include <ModemManager.h>
+#include <glib-object.h>
+
+G_BEGIN_DECLS
+
+#define MM_TYPE_CDMA_MANUAL_ACTIVATION_PROPERTIES (mm_cdma_manual_activation_properties_get_type ())
+#define MM_CDMA_MANUAL_ACTIVATION_PROPERTIES(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MM_TYPE_CDMA_MANUAL_ACTIVATION_PROPERTIES, MMCdmaManualActivationProperties))
+#define MM_CDMA_MANUAL_ACTIVATION_PROPERTIES_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MM_TYPE_CDMA_MANUAL_ACTIVATION_PROPERTIES, MMCdmaManualActivationPropertiesClass))
+#define MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MM_TYPE_CDMA_MANUAL_ACTIVATION_PROPERTIES))
+#define MM_IS_CDMA_MANUAL_ACTIVATION_PROPERTIES_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), MM_TYPE_CDMA_MANUAL_ACTIVATION_PROPERTIES))
+#define MM_CDMA_MANUAL_ACTIVATION_PROPERTIES_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MM_TYPE_CDMA_MANUAL_ACTIVATION_PROPERTIES, MMCdmaManualActivationPropertiesClass))
+
+typedef struct _MMCdmaManualActivationProperties MMCdmaManualActivationProperties;
+typedef struct _MMCdmaManualActivationPropertiesClass MMCdmaManualActivationPropertiesClass;
+typedef struct _MMCdmaManualActivationPropertiesPrivate MMCdmaManualActivationPropertiesPrivate;
+
+/**
+ * MMCdmaManualActivationProperties:
+ *
+ * The #MMCdmaManualActivationProperties structure contains private data and should only be accessed
+ * using the provided API.
+ */
+struct _MMCdmaManualActivationProperties {
+ /*< private >*/
+ GObject parent;
+ MMCdmaManualActivationPropertiesPrivate *priv;
+};
+
+struct _MMCdmaManualActivationPropertiesClass {
+ /*< private >*/
+ GObjectClass parent;
+};
+
+GType mm_cdma_manual_activation_properties_get_type (void);
+
+MMCdmaManualActivationProperties *mm_cdma_manual_activation_properties_new (void);
+
+gboolean mm_cdma_manual_activation_properties_set_spc (MMCdmaManualActivationProperties *self,
+ const gchar *spc,
+ GError **error);
+void mm_cdma_manual_activation_properties_set_sid (MMCdmaManualActivationProperties *self,
+ guint16 sid);
+gboolean mm_cdma_manual_activation_properties_set_mdn (MMCdmaManualActivationProperties *self,
+ const gchar *mdn,
+ GError **error);
+gboolean mm_cdma_manual_activation_properties_set_min (MMCdmaManualActivationProperties *self,
+ const gchar *min,
+ GError **error);
+gboolean mm_cdma_manual_activation_properties_set_mn_ha_key (MMCdmaManualActivationProperties *self,
+ const gchar *mn_ha_key,
+ GError **error);
+gboolean mm_cdma_manual_activation_properties_set_mn_aaa_key (MMCdmaManualActivationProperties *self,
+ const gchar *mn_aaa_key,
+ GError **error);
+gboolean mm_cdma_manual_activation_properties_set_prl (MMCdmaManualActivationProperties *self,
+ const guint8 *prl,
+ gsize prl_length,
+ GError **error);
+gboolean mm_cdma_manual_activation_properties_set_prl_bytearray (MMCdmaManualActivationProperties *self,
+ GByteArray *prl,
+ GError **error);
+
+const gchar *mm_cdma_manual_activation_properties_get_spc (MMCdmaManualActivationProperties *self);
+guint16 mm_cdma_manual_activation_properties_get_sid (MMCdmaManualActivationProperties *self);
+const gchar *mm_cdma_manual_activation_properties_get_mdn (MMCdmaManualActivationProperties *self);
+const gchar *mm_cdma_manual_activation_properties_get_min (MMCdmaManualActivationProperties *self);
+const gchar *mm_cdma_manual_activation_properties_get_mn_ha_key (MMCdmaManualActivationProperties *self);
+const gchar *mm_cdma_manual_activation_properties_get_mn_aaa_key (MMCdmaManualActivationProperties *self);
+const guint8 *mm_cdma_manual_activation_properties_get_prl (MMCdmaManualActivationProperties *self,
+ gsize *prl_len);
+GByteArray *mm_cdma_manual_activation_properties_peek_prl_bytearray (MMCdmaManualActivationProperties *self);
+GByteArray *mm_cdma_manual_activation_properties_get_prl_bytearray (MMCdmaManualActivationProperties *self);
+
+/*****************************************************************************/
+/* ModemManager/libmm-glib/mmcli specific methods */
+
+#if defined (_LIBMM_INSIDE_MM) || \
+ defined (_LIBMM_INSIDE_MMCLI) || \
+ defined (LIBMM_GLIB_COMPILATION)
+
+MMCdmaManualActivationProperties *mm_cdma_manual_activation_properties_new_from_string (const gchar *str,
+ GError **error);
+MMCdmaManualActivationProperties *mm_cdma_manual_activation_properties_new_from_dictionary (GVariant *dictionary,
+ GError **error);
+GVariant *mm_cdma_manual_activation_properties_get_dictionary (MMCdmaManualActivationProperties *self);
+
+#endif
+
+G_END_DECLS
+
+#endif /* MM_CDMA_MANUAL_ACTIVATION_PROPERTIES_H */
diff --git a/libmm-glib/mm-common-helpers.c b/libmm-glib/mm-common-helpers.c
index 740b316..088891f 100644
--- a/libmm-glib/mm-common-helpers.c
+++ b/libmm-glib/mm-common-helpers.c
@@ -745,6 +745,86 @@ mm_common_build_mode_combinations_default (void)
return g_variant_builder_end (&builder);
}
+GArray *
+mm_common_oma_pending_network_initiated_sessions_variant_to_garray (GVariant *variant)
+{
+ GArray *array = NULL;
+
+ if (variant) {
+ GVariantIter iter;
+ guint n;
+
+ g_variant_iter_init (&iter, variant);
+ n = g_variant_iter_n_children (&iter);
+
+ if (n > 0) {
+ MMOmaPendingNetworkInitiatedSession session;
+
+ array = g_array_sized_new (FALSE, FALSE, sizeof (MMOmaPendingNetworkInitiatedSession), n);
+ while (g_variant_iter_loop (&iter, "(uu)", &session.session_type, &session.session_id))
+ g_array_append_val (array, session);
+ }
+ }
+
+ /* If nothing set, fallback to empty */
+ if (!array)
+ array = g_array_new (FALSE, FALSE, sizeof (MMOmaPendingNetworkInitiatedSession));
+
+ return array;
+}
+
+MMOmaPendingNetworkInitiatedSession *
+mm_common_oma_pending_network_initiated_sessions_variant_to_array (GVariant *variant,
+ guint *n_sessions)
+{
+ GArray *array;
+
+ array = mm_common_oma_pending_network_initiated_sessions_variant_to_garray (variant);
+ if (n_sessions)
+ *n_sessions = array->len;
+ return (MMOmaPendingNetworkInitiatedSession *) g_array_free (array, FALSE);
+}
+
+GVariant *
+mm_common_oma_pending_network_initiated_sessions_array_to_variant (const MMOmaPendingNetworkInitiatedSession *sessions,
+ guint n_sessions)
+{
+ if (n_sessions > 0) {
+ GVariantBuilder builder;
+ guint i;
+
+ g_variant_builder_init (&builder, G_VARIANT_TYPE ("a(uu)"));
+
+ for (i = 0; i < n_sessions; i++)
+ g_variant_builder_add_value (&builder,
+ g_variant_new ("(uu)",
+ ((guint32)sessions[i].session_type),
+ ((guint32)sessions[i].session_id)));
+ return g_variant_builder_end (&builder);
+ }
+
+ return mm_common_build_oma_pending_network_initiated_sessions_default ();
+}
+
+GVariant *
+mm_common_oma_pending_network_initiated_sessions_garray_to_variant (GArray *array)
+{
+ if (array)
+ return mm_common_oma_pending_network_initiated_sessions_array_to_variant ((const MMOmaPendingNetworkInitiatedSession *)array->data,
+ array->len);
+
+ return mm_common_oma_pending_network_initiated_sessions_array_to_variant (NULL, 0);
+}
+
+GVariant *
+mm_common_build_oma_pending_network_initiated_sessions_default (void)
+{
+ GVariantBuilder builder;
+
+ g_variant_builder_init (&builder, G_VARIANT_TYPE ("a(uu)"));
+ return g_variant_builder_end (&builder);
+}
+
gboolean
mm_common_get_boolean_from_string (const gchar *value,
GError **error)
@@ -877,6 +957,122 @@ mm_common_get_sms_storage_from_string (const gchar *str,
return MM_SMS_STORAGE_UNKNOWN;
}
+MMSmsCdmaTeleserviceId
+mm_common_get_sms_cdma_teleservice_id_from_string (const gchar *str,
+ GError **error)
+{
+ GEnumClass *enum_class;
+ guint i;
+
+ enum_class = G_ENUM_CLASS (g_type_class_ref (MM_TYPE_SMS_CDMA_TELESERVICE_ID));
+
+ for (i = 0; enum_class->values[i].value_nick; i++) {
+ if (!g_ascii_strcasecmp (str, enum_class->values[i].value_nick))
+ return enum_class->values[i].value;
+ }
+
+ g_set_error (error,
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "Couldn't match '%s' with a valid MMSmsCdmaTeleserviceId value",
+ str);
+ return MM_SMS_CDMA_TELESERVICE_ID_UNKNOWN;
+}
+
+MMSmsCdmaServiceCategory
+mm_common_get_sms_cdma_service_category_from_string (const gchar *str,
+ GError **error)
+{
+ GEnumClass *enum_class;
+ guint i;
+
+ enum_class = G_ENUM_CLASS (g_type_class_ref (MM_TYPE_SMS_CDMA_SERVICE_CATEGORY));
+
+ for (i = 0; enum_class->values[i].value_nick; i++) {
+ if (!g_ascii_strcasecmp (str, enum_class->values[i].value_nick))
+ return enum_class->values[i].value;
+ }
+
+ g_set_error (error,
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "Couldn't match '%s' with a valid MMSmsCdmaServiceCategory value",
+ str);
+ return MM_SMS_CDMA_SERVICE_CATEGORY_UNKNOWN;
+}
+
+MMOmaFeature
+mm_common_get_oma_features_from_string (const gchar *str,
+ GError **error)
+{
+ GError *inner_error = NULL;
+ MMOmaFeature features;
+ gchar **feature_strings;
+ GFlagsClass *flags_class;
+
+ features = MM_OMA_FEATURE_NONE;
+
+ flags_class = G_FLAGS_CLASS (g_type_class_ref (MM_TYPE_OMA_FEATURE));
+ feature_strings = g_strsplit (str, "|", -1);
+
+ if (feature_strings) {
+ guint i;
+
+ for (i = 0; feature_strings[i]; i++) {
+ guint j;
+ gboolean found = FALSE;
+
+ for (j = 0; flags_class->values[j].value_nick; j++) {
+ if (!g_ascii_strcasecmp (feature_strings[i], flags_class->values[j].value_nick)) {
+ features |= flags_class->values[j].value;
+ found = TRUE;
+ break;
+ }
+ }
+
+ if (!found) {
+ inner_error = g_error_new (
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "Couldn't match '%s' with a valid MMOmaFeature value",
+ feature_strings[i]);
+ break;
+ }
+ }
+ }
+
+ if (inner_error) {
+ g_propagate_error (error, inner_error);
+ features = MM_OMA_FEATURE_NONE;
+ }
+
+ g_type_class_unref (flags_class);
+ g_strfreev (feature_strings);
+ return features;
+}
+
+MMOmaSessionType
+mm_common_get_oma_session_type_from_string (const gchar *str,
+ GError **error)
+{
+ GEnumClass *enum_class;
+ guint i;
+
+ enum_class = G_ENUM_CLASS (g_type_class_ref (MM_TYPE_OMA_SESSION_TYPE));
+
+ for (i = 0; enum_class->values[i].value_nick; i++) {
+ if (!g_ascii_strcasecmp (str, enum_class->values[i].value_nick))
+ return enum_class->values[i].value;
+ }
+
+ g_set_error (error,
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "Couldn't match '%s' with a valid MMOmaSessionType value",
+ str);
+ return MM_OMA_SESSION_TYPE_UNKNOWN;
+}
+
GVariant *
mm_common_build_bands_unknown (void)
{
diff --git a/libmm-glib/mm-common-helpers.h b/libmm-glib/mm-common-helpers.h
index c9e7c2c..b05a4a9 100644
--- a/libmm-glib/mm-common-helpers.h
+++ b/libmm-glib/mm-common-helpers.h
@@ -59,6 +59,14 @@ MMBearerAllowedAuth mm_common_get_allowed_auth_from_string (const gchar *str,
GError **error);
MMSmsStorage mm_common_get_sms_storage_from_string (const gchar *str,
GError **error);
+MMSmsCdmaTeleserviceId mm_common_get_sms_cdma_teleservice_id_from_string (const gchar *str,
+ GError **error);
+MMSmsCdmaServiceCategory mm_common_get_sms_cdma_service_category_from_string (const gchar *str,
+ GError **error);
+MMOmaFeature mm_common_get_oma_features_from_string (const gchar *str,
+ GError **error);
+MMOmaSessionType mm_common_get_oma_session_type_from_string (const gchar *str,
+ GError **error);
GArray *mm_common_ports_variant_to_garray (GVariant *variant);
MMModemPortInfo *mm_common_ports_variant_to_array (GVariant *variant,
@@ -103,6 +111,14 @@ GVariant *mm_common_capability_combinations_garray_to_variant (GArray *
GVariant *mm_common_build_capability_combinations_any (void);
GVariant *mm_common_build_capability_combinations_none (void);
+GArray *mm_common_oma_pending_network_initiated_sessions_variant_to_garray (GVariant *variant);
+MMOmaPendingNetworkInitiatedSession *mm_common_oma_pending_network_initiated_sessions_variant_to_array (GVariant *variant,
+ guint *n_modes);
+GVariant *mm_common_oma_pending_network_initiated_sessions_array_to_variant (const MMOmaPendingNetworkInitiatedSession *modes,
+ guint n_modes);
+GVariant *mm_common_oma_pending_network_initiated_sessions_garray_to_variant (GArray *array);
+GVariant *mm_common_build_oma_pending_network_initiated_sessions_default (void);
+
typedef gboolean (*MMParseKeyValueForeachFn) (const gchar *key,
const gchar *value,
gpointer user_data);
diff --git a/libmm-glib/mm-helper-types.h b/libmm-glib/mm-helper-types.h
index c235ff6..d4e7fa9 100644
--- a/libmm-glib/mm-helper-types.h
+++ b/libmm-glib/mm-helper-types.h
@@ -37,10 +37,11 @@
*
* #MMModemModeCombination is a simple struct holding a pair of #MMModemMode values.
*/
-typedef struct _MMModemModeCombination {
+typedef struct _MMModemModeCombination MMModemModeCombination;
+struct _MMModemModeCombination {
MMModemMode allowed;
MMModemMode preferred;
-} MMModemModeCombination;
+};
/**
* MMModemPortInfo:
@@ -49,12 +50,27 @@ typedef struct _MMModemModeCombination {
*
* Information of a given port.
*/
-typedef struct _MMModemPortInfo {
+typedef struct _MMModemPortInfo MMModemPortInfo;
+struct _MMModemPortInfo {
gchar *name;
MMModemPortType type;
-} MMModemPortInfo;
+};
void mm_modem_port_info_array_free (MMModemPortInfo *array,
guint array_size);
+/**
+ * MMOmaPendingNetworkInitiatedSession:
+ * @session_type: A #MMOmaSessionType.
+ * @session_id: Unique ID of the network-initiated OMA session.
+ *
+ * #MMOmaPendingNetworkInitiatedSession is a simple struct specifying the
+ * information available for a pending network-initiated OMA session.
+ */
+typedef struct _MMOmaPendingNetworkInitiatedSession MMOmaPendingNetworkInitiatedSession;
+struct _MMOmaPendingNetworkInitiatedSession {
+ MMOmaSessionType session_type;
+ guint session_id;
+};
+
#endif /* _MM_HELPER_TYPES_H_ */
diff --git a/libmm-glib/mm-location-gps-nmea.c b/libmm-glib/mm-location-gps-nmea.c
index 2070eeb..08ec97f 100644
--- a/libmm-glib/mm-location-gps-nmea.c
+++ b/libmm-glib/mm-location-gps-nmea.c
@@ -158,7 +158,7 @@ build_full_foreach (const gchar *trace_type,
*
* Gets a compilation of all cached traces.
*
- * Returns: (transfer full) a string containing all traces, or #NULL if none available. The returned value should be freed with g_free().
+ * Returns: (transfer full): a string containing all traces, or #NULL if none available. The returned value should be freed with g_free().
*/
gchar *
mm_location_gps_nmea_build_full (MMLocationGpsNmea *self)
diff --git a/libmm-glib/mm-manager.c b/libmm-glib/mm-manager.c
index 81c6e4f..8275f79 100644
--- a/libmm-glib/mm-manager.c
+++ b/libmm-glib/mm-manager.c
@@ -70,7 +70,9 @@ get_proxy_type (GDBusObjectManagerClient *manager,
g_hash_table_insert (lookup_hash, "org.freedesktop.ModemManager1.Modem.Messaging", GSIZE_TO_POINTER (MM_TYPE_MODEM_MESSAGING));
g_hash_table_insert (lookup_hash, "org.freedesktop.ModemManager1.Modem.Location", GSIZE_TO_POINTER (MM_TYPE_MODEM_LOCATION));
g_hash_table_insert (lookup_hash, "org.freedesktop.ModemManager1.Modem.Time", GSIZE_TO_POINTER (MM_TYPE_MODEM_TIME));
+ g_hash_table_insert (lookup_hash, "org.freedesktop.ModemManager1.Modem.Signal", GSIZE_TO_POINTER (MM_TYPE_MODEM_SIGNAL));
g_hash_table_insert (lookup_hash, "org.freedesktop.ModemManager1.Modem.Firmware", GSIZE_TO_POINTER (MM_TYPE_MODEM_FIRMWARE));
+ g_hash_table_insert (lookup_hash, "org.freedesktop.ModemManager1.Modem.Oma", GSIZE_TO_POINTER (MM_TYPE_MODEM_OMA));
g_hash_table_insert (lookup_hash, "org.freedesktop.ModemManager1.Modem.ModemCdma", GSIZE_TO_POINTER (MM_TYPE_MODEM_CDMA));
g_hash_table_insert (lookup_hash, "org.freedesktop.ModemManager1.Modem.Modem3gpp", GSIZE_TO_POINTER (MM_TYPE_MODEM_3GPP));
g_hash_table_insert (lookup_hash, "org.freedesktop.ModemManager1.Modem.Modem3gpp.Ussd", GSIZE_TO_POINTER (MM_TYPE_MODEM_3GPP_USSD));
diff --git a/libmm-glib/mm-modem-3gpp.c b/libmm-glib/mm-modem-3gpp.c
index 40c7e86..a926acc 100644
--- a/libmm-glib/mm-modem-3gpp.c
+++ b/libmm-glib/mm-modem-3gpp.c
@@ -246,6 +246,25 @@ mm_modem_3gpp_get_registration_state (MMModem3gpp *self)
/*****************************************************************************/
/**
+ * mm_modem_3gpp_get_subscription_state:
+ * @self: A #MMModem.
+ *
+ * Get the current subscription status of the account. This value is only
+ * available after the modem attempts to register with the network.
+ *
+ * Returns: A #MMModem3gppSubscriptionState value, specifying the current subscription state.
+ */
+MMModem3gppSubscriptionState
+mm_modem_3gpp_get_subscription_state (MMModem3gpp *self)
+{
+ g_return_val_if_fail (MM_IS_MODEM_3GPP (self), MM_MODEM_3GPP_SUBSCRIPTION_STATE_UNKNOWN);
+
+ return mm_gdbus_modem3gpp_get_subscription_state (MM_GDBUS_MODEM3GPP (self));
+}
+
+/*****************************************************************************/
+
+/**
* mm_modem_3gpp_get_enabled_facility_locks:
* @self: A #MMModem3gpp.
*
@@ -499,7 +518,7 @@ create_networks_list (GVariant *variant)
*
* Finishes an operation started with mm_modem_3gpp_scan().
*
- * Returns: a list of #MMModem3gppNetwork structs, or #NULL if @error is set. The returned value should be freed with g_list_free_full() using mm_modem_3gpp_network_free() as #GDestroyNotify function.
+ * Returns: (transfer full) (element-type ModemManager.Modem3gppNetwork): a list of #MMModem3gppNetwork structs, or #NULL if @error is set. The returned value should be freed with g_list_free_full() using mm_modem_3gpp_network_free() as #GDestroyNotify function.
*/
GList *
mm_modem_3gpp_scan_finish (MMModem3gpp *self,
@@ -552,7 +571,7 @@ mm_modem_3gpp_scan (MMModem3gpp *self,
* The calling thread is blocked until a reply is received. See mm_modem_3gpp_scan()
* for the asynchronous version of this method.
*
- * Returns: a list of #MMModem3gppNetwork structs, or #NULL if @error is set. The returned value should be freed with g_list_free_full() using mm_modem_3gpp_network_free() as #GDestroyNotify function.
+ * Returns: (transfer full) (element-type ModemManager.Modem3gppNetwork): a list of #MMModem3gppNetwork structs, or #NULL if @error is set. The returned value should be freed with g_list_free_full() using mm_modem_3gpp_network_free() as #GDestroyNotify function.
*/
GList *
mm_modem_3gpp_scan_sync (MMModem3gpp *self,
diff --git a/libmm-glib/mm-modem-3gpp.h b/libmm-glib/mm-modem-3gpp.h
index bb055dc..7cfe011 100644
--- a/libmm-glib/mm-modem-3gpp.h
+++ b/libmm-glib/mm-modem-3gpp.h
@@ -76,6 +76,7 @@ const gchar *mm_modem_3gpp_get_operator_name (MMModem3gpp *self);
gchar *mm_modem_3gpp_dup_operator_name (MMModem3gpp *self);
MMModem3gppRegistrationState mm_modem_3gpp_get_registration_state (MMModem3gpp *self);
+MMModem3gppSubscriptionState mm_modem_3gpp_get_subscription_state (MMModem3gpp *self);
MMModem3gppFacility mm_modem_3gpp_get_enabled_facility_locks (MMModem3gpp *self);
diff --git a/libmm-glib/mm-modem-cdma.c b/libmm-glib/mm-modem-cdma.c
index 6f042c0..a759697 100644
--- a/libmm-glib/mm-modem-cdma.c
+++ b/libmm-glib/mm-modem-cdma.c
@@ -341,6 +341,98 @@ mm_modem_cdma_activate_sync (MMModemCdma *self,
/*****************************************************************************/
+/**
+ * mm_modem_cdma_activate_manual_finish:
+ * @self: A #MMModemCdma.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to mm_modem_cdma_activate_manual().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with mm_modem_cdma_activate_manual().
+ *
+ * Returns: %TRUE if the activation was successful, %FALSE if @error is set.
+ */
+gboolean
+mm_modem_cdma_activate_manual_finish (MMModemCdma *self,
+ GAsyncResult *res,
+ GError **error)
+{
+ g_return_val_if_fail (MM_IS_MODEM_CDMA (self), FALSE);
+
+ return mm_gdbus_modem_cdma_call_activate_manual_finish (MM_GDBUS_MODEM_CDMA (self), res, error);
+}
+
+/**
+ * mm_modem_cdma_activate_manual:
+ * @self: A #MMModemCdma.
+ * @properties: A #MMCdmaManualActivationProperties.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously requests to provision the modem with the given properties.
+ *
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call mm_modem_cdma_activate_manual_finish() to get the result of the operation.
+ *
+ * See mm_modem_cdma_activate_manual_sync() for the synchronous, blocking version of this method.
+ */
+void
+mm_modem_cdma_activate_manual (MMModemCdma *self,
+ MMCdmaManualActivationProperties *properties,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ GVariant *dictionary;
+
+ g_return_if_fail (MM_IS_MODEM_CDMA (self));
+
+ dictionary = mm_cdma_manual_activation_properties_get_dictionary (properties);
+ mm_gdbus_modem_cdma_call_activate_manual (MM_GDBUS_MODEM_CDMA (self),
+ dictionary,
+ cancellable,
+ callback,
+ user_data);
+ g_variant_unref (dictionary);
+}
+
+/**
+ * mm_modem_cdma_activate_manual_sync:
+ * @self: A #MMModemCdma.
+ * @properties: A #MMCdmaManualActivationProperties.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously requests to provision the modem with the given properties.
+ *
+ * The calling thread is blocked until a reply is received. See mm_modem_cdma_activate_manual()
+ * for the asynchronous version of this method.
+ *
+ * Returns: %TRUE if the activation was successful, %FALSE if @error is set.
+ */
+gboolean
+mm_modem_cdma_activate_manual_sync (MMModemCdma *self,
+ MMCdmaManualActivationProperties *properties,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *dictionary;
+ gboolean ret;
+
+ g_return_val_if_fail (MM_IS_MODEM_CDMA (self), FALSE);
+
+ dictionary = mm_cdma_manual_activation_properties_get_dictionary (properties);
+ ret = (mm_gdbus_modem_cdma_call_activate_manual_sync (
+ MM_GDBUS_MODEM_CDMA (self),
+ dictionary,
+ cancellable,
+ error));
+ g_variant_unref (dictionary);
+ return ret;
+}
+
+/*****************************************************************************/
+
static void
mm_modem_cdma_init (MMModemCdma *self)
{
diff --git a/libmm-glib/mm-modem-cdma.h b/libmm-glib/mm-modem-cdma.h
index 8c7cb9c..31e7824 100644
--- a/libmm-glib/mm-modem-cdma.h
+++ b/libmm-glib/mm-modem-cdma.h
@@ -31,6 +31,7 @@
#include <ModemManager.h>
#include "mm-gdbus-modem.h"
+#include "mm-cdma-manual-activation-properties.h"
G_BEGIN_DECLS
@@ -105,6 +106,19 @@ gboolean mm_modem_cdma_activate_sync (MMModemCdma *self,
GCancellable *cancellable,
GError **error);
+void mm_modem_cdma_activate_manual (MMModemCdma *self,
+ MMCdmaManualActivationProperties *properties,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+gboolean mm_modem_cdma_activate_manual_finish (MMModemCdma *self,
+ GAsyncResult *res,
+ GError **error);
+gboolean mm_modem_cdma_activate_manual_sync (MMModemCdma *self,
+ MMCdmaManualActivationProperties *properties,
+ GCancellable *cancellable,
+ GError **error);
+
G_END_DECLS
#endif /* _MM_MODEM_CDMA_H_ */
diff --git a/libmm-glib/mm-modem-firmware.c b/libmm-glib/mm-modem-firmware.c
index c52f316..0bc6c6b 100644
--- a/libmm-glib/mm-modem-firmware.c
+++ b/libmm-glib/mm-modem-firmware.c
@@ -245,7 +245,7 @@ build_results (const gchar *str_selected,
* mm_modem_firmware_list_finish:
* @self: A #MMModemFirmware.
* @selected: (out) (allow-none) (transfer full): The selected firmware slot, or NULL if no slot is selected (such as if all slots are empty, or no slots exist). The returned value should be freed with g_object_unref().
- * @installed: (out) (allow-none) (transfer full): A list of #MMFirmwareProperties objects specifying the installed images. The returned value should be freed with g_list_free_full() using g_object_unref() as #GDestroyNotify.
+ * @installed: (out) (allow-none) (transfer full) (element-type ModemManager.FirmwareProperties): A list of #MMFirmwareProperties objects specifying the installed images. The returned value should be freed with g_list_free_full() using g_object_unref() as #GDestroyNotify.
* @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to mm_modem_firmware_list().
* @error: Return location for error or %NULL.
*
@@ -321,7 +321,7 @@ mm_modem_firmware_list (MMModemFirmware *self,
* mm_modem_firmware_list_sync:
* @self: A #MMModemFirmware.
* @selected: (out) (allow-none) (transfer full): The selected firmware slot, or NULL if no slot is selected (such as if all slots are empty, or no slots exist). The returned value should be freed with g_object_unref().
- * @installed: (out) (allow-none) (transfer full): A list of #MMFirmwareProperties objects specifying the installed images. The returned value should be freed with g_list_free_full() using g_object_unref() as #GDestroyNotify.
+ * @installed: (out) (allow-none) (transfer full) (element-type ModemManager.FirmwareProperties): A list of #MMFirmwareProperties objects specifying the installed images. The returned value should be freed with g_list_free_full() using g_object_unref() as #GDestroyNotify.
* @cancellable: (allow-none): A #GCancellable or %NULL.
* @error: Return firmware for error or %NULL.
*
diff --git a/libmm-glib/mm-modem-location.c b/libmm-glib/mm-modem-location.c
index 1e5541a..7f38a65 100644
--- a/libmm-glib/mm-modem-location.c
+++ b/libmm-glib/mm-modem-location.c
@@ -101,7 +101,7 @@ mm_modem_location_get_capabilities (MMModemLocation *self)
/*****************************************************************************/
/**
- * mm_modem_location_get_capabilities:
+ * mm_modem_location_get_enabled:
* @self: A #MMModemLocation.
*
* Gets a bitmask of the location capabilities which are enabled in this #MMModemLocation.
@@ -389,7 +389,7 @@ mm_modem_location_get_full_sync (MMModemLocation *self,
*
* Finishes an operation started with mm_modem_location_get_3gpp().
*
- * Returns: (transfer full) A #MMLocation3gpp, or #NULL if not available. The returned value should be freed with g_object_unref().
+ * Returns: (transfer full): A #MMLocation3gpp, or #NULL if not available. The returned value should be freed with g_object_unref().
*/
MMLocation3gpp *
mm_modem_location_get_3gpp_finish (MMModemLocation *self,
@@ -437,7 +437,7 @@ mm_modem_location_get_3gpp (MMModemLocation *self,
* The calling thread is blocked until a reply is received. See mm_modem_location_get_3gpp()
* for the asynchronous version of this method.
*
- * Returns: (transfer full) A #MMLocation3gpp, or #NULL if not available. The returned value should be freed with g_object_unref().
+ * Returns: (transfer full): A #MMLocation3gpp, or #NULL if not available. The returned value should be freed with g_object_unref().
*/
MMLocation3gpp *
mm_modem_location_get_3gpp_sync (MMModemLocation *self,
@@ -461,7 +461,7 @@ mm_modem_location_get_3gpp_sync (MMModemLocation *self,
*
* Finishes an operation started with mm_modem_location_get_gps_nmea().
*
- * Returns: (transfer full) A #MMLocationGpsNmea, or #NULL if not available. The returned value should be freed with g_object_unref().
+ * Returns: (transfer full): A #MMLocationGpsNmea, or #NULL if not available. The returned value should be freed with g_object_unref().
*/
MMLocationGpsNmea *
mm_modem_location_get_gps_nmea_finish (MMModemLocation *self,
@@ -509,7 +509,7 @@ mm_modem_location_get_gps_nmea (MMModemLocation *self,
* The calling thread is blocked until a reply is received. See mm_modem_location_get_gps_nmea()
* for the asynchronous version of this method.
*
- * Returns: (transfer full) A #MMLocationGpsNmea, or #NULL if not available. The returned value should be freed with g_object_unref().
+ * Returns: (transfer full): A #MMLocationGpsNmea, or #NULL if not available. The returned value should be freed with g_object_unref().
*/
MMLocationGpsNmea *
mm_modem_location_get_gps_nmea_sync (MMModemLocation *self,
@@ -533,7 +533,7 @@ mm_modem_location_get_gps_nmea_sync (MMModemLocation *self,
*
* Finishes an operation started with mm_modem_location_get_gps_raw().
*
- * Returns: (transfer full) A #MMLocationGpsRaw, or #NULL if not available. The returned value should be freed with g_object_unref().
+ * Returns: (transfer full): A #MMLocationGpsRaw, or #NULL if not available. The returned value should be freed with g_object_unref().
*/
MMLocationGpsRaw *
mm_modem_location_get_gps_raw_finish (MMModemLocation *self,
@@ -581,7 +581,7 @@ mm_modem_location_get_gps_raw (MMModemLocation *self,
* The calling thread is blocked until a reply is received. See mm_modem_location_get_gps_raw()
* for the asynchronous version of this method.
*
- * Returns: (transfer full) A #MMLocationGpsRaw, or #NULL if not available. The returned value should be freed with g_object_unref().
+ * Returns: (transfer full): A #MMLocationGpsRaw, or #NULL if not available. The returned value should be freed with g_object_unref().
*/
MMLocationGpsRaw *
mm_modem_location_get_gps_raw_sync (MMModemLocation *self,
@@ -605,7 +605,7 @@ mm_modem_location_get_gps_raw_sync (MMModemLocation *self,
*
* Finishes an operation started with mm_modem_location_get_cdma_bs().
*
- * Returns: (transfer full) A #MMLocationCdmaBs, or #NULL if not available. The returned value should be freed with g_object_unref().
+ * Returns: (transfer full): A #MMLocationCdmaBs, or #NULL if not available. The returned value should be freed with g_object_unref().
*/
MMLocationCdmaBs *
mm_modem_location_get_cdma_bs_finish (MMModemLocation *self,
@@ -653,7 +653,7 @@ mm_modem_location_get_cdma_bs (MMModemLocation *self,
* The calling thread is blocked until a reply is received. See mm_modem_location_get_cdma_bs()
* for the asynchronous version of this method.
*
- * Returns: (transfer full) A #MMLocationCdmaBs, or #NULL if not available. The returned value should be freed with g_object_unref().
+ * Returns: (transfer full): A #MMLocationCdmaBs, or #NULL if not available. The returned value should be freed with g_object_unref().
*/
MMLocationCdmaBs *
mm_modem_location_get_cdma_bs_sync (MMModemLocation *self,
diff --git a/libmm-glib/mm-modem-messaging.c b/libmm-glib/mm-modem-messaging.c
index 50c525c..fdf1497 100644
--- a/libmm-glib/mm-modem-messaging.c
+++ b/libmm-glib/mm-modem-messaging.c
@@ -236,7 +236,7 @@ sms_object_list_free (GList *list)
static void
list_sms_context_complete_and_free (ListSmsContext *ctx)
{
- g_simple_async_result_complete (ctx->result);
+ g_simple_async_result_complete_in_idle (ctx->result);
g_strfreev (ctx->sms_paths);
sms_object_list_free (ctx->sms_objects);
@@ -255,7 +255,7 @@ list_sms_context_complete_and_free (ListSmsContext *ctx)
*
* Finishes an operation started with mm_modem_messaging_list().
*
- * Returns: (element-type MM.Sms) (transfer full): A list of #MMSms objects, or #NULL if either not found or @error is set. The returned value should be freed with g_list_free_full() using g_object_unref() as #GDestroyNotify function.
+ * Returns: (element-type ModemManager.Sms) (transfer full): A list of #MMSms objects, or #NULL if either not found or @error is set. The returned value should be freed with g_list_free_full() using g_object_unref() as #GDestroyNotify function.
*/
GList *
mm_modem_messaging_list_finish (MMModemMessaging *self,
@@ -331,32 +331,6 @@ create_next_sms (ListSmsContext *ctx)
NULL);
}
-static void
-list_ready (MMModemMessaging *self,
- GAsyncResult *res,
- ListSmsContext *ctx)
-{
- GError *error = NULL;
-
- mm_gdbus_modem_messaging_call_list_finish (MM_GDBUS_MODEM_MESSAGING (self), &ctx->sms_paths, res, &error);
- if (error) {
- g_simple_async_result_take_error (ctx->result, error);
- list_sms_context_complete_and_free (ctx);
- return;
- }
-
- /* If no SMS, just end here. */
- if (!ctx->sms_paths || !ctx->sms_paths[0]) {
- g_simple_async_result_set_op_res_gpointer (ctx->result, NULL, NULL);
- list_sms_context_complete_and_free (ctx);
- return;
- }
-
- /* Got list of paths. If at least one found, start creating objects for each */
- ctx->i = 0;
- create_next_sms (ctx);
-}
-
/**
* mm_modem_messaging_list:
* @self: A #MMModemMessaging.
@@ -390,10 +364,18 @@ mm_modem_messaging_list (MMModemMessaging *self,
if (cancellable)
ctx->cancellable = g_object_ref (cancellable);
- mm_gdbus_modem_messaging_call_list (MM_GDBUS_MODEM_MESSAGING (self),
- cancellable,
- (GAsyncReadyCallback)list_ready,
- ctx);
+ ctx->sms_paths = mm_gdbus_modem_messaging_dup_messages (MM_GDBUS_MODEM_MESSAGING (self));
+
+ /* If no SMS, just end here. */
+ if (!ctx->sms_paths || !ctx->sms_paths[0]) {
+ g_simple_async_result_set_op_res_gpointer (ctx->result, NULL, NULL);
+ list_sms_context_complete_and_free (ctx);
+ return;
+ }
+
+ /* Got list of paths. If at least one found, start creating objects for each */
+ ctx->i = 0;
+ create_next_sms (ctx);
}
/**
@@ -407,7 +389,7 @@ mm_modem_messaging_list (MMModemMessaging *self,
* The calling thread is blocked until a reply is received. See mm_modem_messaging_list()
* for the asynchronous version of this method.
*
- * Returns: (element-type MM.Sms) (transfer full): A list of #MMSms objects, or #NULL if either not found or @error is set. The returned value should be freed with g_list_free_full() using g_object_unref() as #GDestroyNotify function.
+ * Returns: (element-type MMSms) (transfer full): A list of #MMSms objects, or #NULL if either not found or @error is set. The returned value should be freed with g_list_free_full() using g_object_unref() as #GDestroyNotify function.
*/
GList *
mm_modem_messaging_list_sync (MMModemMessaging *self,
@@ -420,11 +402,7 @@ mm_modem_messaging_list_sync (MMModemMessaging *self,
g_return_val_if_fail (MM_IS_MODEM_MESSAGING (self), NULL);
- if (!mm_gdbus_modem_messaging_call_list_sync (MM_GDBUS_MODEM_MESSAGING (self),
- &sms_paths,
- cancellable,
- error))
- return NULL;
+ sms_paths = mm_gdbus_modem_messaging_dup_messages (MM_GDBUS_MODEM_MESSAGING (self));
/* Only non-empty lists are returned */
if (!sms_paths)
@@ -598,7 +576,7 @@ mm_modem_messaging_create (MMModemMessaging *self,
}
/**
- * mm_modem_create_sms_sync:
+ * mm_modem_messaging_create_sync:
* @self: A #MMModemMessaging.
* @properties: A ##MMSmsProperties object with the properties to use.
* @cancellable: (allow-none): A #GCancellable or %NULL.
diff --git a/libmm-glib/mm-modem-oma.c b/libmm-glib/mm-modem-oma.c
new file mode 100644
index 0000000..380bb08
--- /dev/null
+++ b/libmm-glib/mm-modem-oma.c
@@ -0,0 +1,593 @@
+/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * libmm -- Access modem status & information from glib applications
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301 USA.
+ *
+ * Copyright (C) 2013 Google, Inc.
+ */
+
+#include <gio/gio.h>
+#include <string.h>
+
+#include "mm-helpers.h"
+#include "mm-errors-types.h"
+#include "mm-modem-oma.h"
+#include "mm-common-helpers.h"
+
+/**
+ * SECTION: mm-modem-oma
+ * @title: MMModemOma
+ * @short_description: The OMA interface
+ *
+ * The #MMModemOma is an object providing access to the methods, signals and
+ * properties of the OMA interface.
+ *
+ * The OMA interface is exposed whenever a modem has OMA device management capabilities.
+ */
+
+G_DEFINE_TYPE (MMModemOma, mm_modem_oma, MM_GDBUS_TYPE_MODEM_OMA_PROXY)
+
+struct _MMModemOmaPrivate {
+ /* Supported Modes */
+ GMutex pending_network_initiated_sessions_mutex;
+ guint pending_network_initiated_sessions_id;
+ GArray *pending_network_initiated_sessions;
+};
+
+/*****************************************************************************/
+
+/**
+ * mm_modem_oma_get_path:
+ * @self: A #MMModemOma.
+ *
+ * Gets the DBus path of the #MMObject which implements this interface.
+ *
+ * Returns: (transfer none): The DBus path of the #MMObject object.
+ */
+const gchar *
+mm_modem_oma_get_path (MMModemOma *self)
+{
+ g_return_val_if_fail (MM_IS_MODEM_OMA (self), NULL);
+
+ RETURN_NON_EMPTY_CONSTANT_STRING (
+ g_dbus_proxy_get_object_path (G_DBUS_PROXY (self)));
+}
+
+/**
+ * mm_modem_oma_dup_path:
+ * @self: A #MMModemOma.
+ *
+ * Gets a copy of the DBus path of the #MMObject object which implements this interface.
+ *
+ * Returns: (transfer full): The DBus path of the #MMObject. The returned value should be freed with g_free().
+ */
+gchar *
+mm_modem_oma_dup_path (MMModemOma *self)
+{
+ gchar *value;
+
+ g_return_val_if_fail (MM_IS_MODEM_OMA (self), NULL);
+
+ g_object_get (G_OBJECT (self),
+ "g-object-path", &value,
+ NULL);
+ RETURN_NON_EMPTY_STRING (value);
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_modem_oma_setup_finish:
+ * @self: A #MMModemOma.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to mm_modem_oma_setup().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with mm_modem_oma_setup().
+ *
+ * Returns: %TRUE if the setup was successful, %FALSE if @error is set.
+ */
+gboolean
+mm_modem_oma_setup_finish (MMModemOma *self,
+ GAsyncResult *res,
+ GError **error)
+{
+ g_return_val_if_fail (MM_IS_MODEM_OMA (self), FALSE);
+
+ return mm_gdbus_modem_oma_call_setup_finish (MM_GDBUS_MODEM_OMA (self), res, error);
+}
+
+/**
+ * mm_modem_oma_setup:
+ * @self: A #MMModemOma.
+ * @features: Mask of #MMOmaFeatures to enable.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously sets up the OMA device management service.
+ *
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call mm_modem_oma_setup_finish() to get the result of the operation.
+ *
+ * See mm_modem_oma_setup_sync() for the synchronous, blocking version of this method.
+ */
+void
+mm_modem_oma_setup (MMModemOma *self,
+ MMOmaFeature features,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_return_if_fail (MM_IS_MODEM_OMA (self));
+
+ mm_gdbus_modem_oma_call_setup (MM_GDBUS_MODEM_OMA (self), features, cancellable, callback, user_data);
+}
+
+/**
+ * mm_modem_oma_setup_sync:
+ * @self: A #MMModemOma.
+ * @features: Mask of #MMOmaFeatures to enable.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously sets up the OMA device management service.
+ *
+ * The calling thread is blocked until a reply is received. See mm_modem_oma_setup()
+ * for the asynchronous version of this method.
+ *
+ * Returns: %TRUE if the setup was successful, %FALSE if @error is set.
+ */
+gboolean
+mm_modem_oma_setup_sync (MMModemOma *self,
+ MMOmaFeature features,
+ GCancellable *cancellable,
+ GError **error)
+{
+ g_return_val_if_fail (MM_IS_MODEM_OMA (self), FALSE);
+
+ return mm_gdbus_modem_oma_call_setup_sync (MM_GDBUS_MODEM_OMA (self), features, cancellable, error);
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_modem_oma_start_client_initiated_session_finish:
+ * @self: A #MMModemOma.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to mm_modem_oma_start_client_initiated_session().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with mm_modem_oma_start_client_initiated_session().
+ *
+ * Returns: %TRUE if the session was started, %FALSE if @error is set.
+ */
+gboolean
+mm_modem_oma_start_client_initiated_session_finish (MMModemOma *self,
+ GAsyncResult *res,
+ GError **error)
+{
+ g_return_val_if_fail (MM_IS_MODEM_OMA (self), FALSE);
+
+ return mm_gdbus_modem_oma_call_start_client_initiated_session_finish (MM_GDBUS_MODEM_OMA (self), res, error);
+}
+
+/**
+ * mm_modem_oma_start_client_initiated_session:
+ * @self: A #MMModemOma.
+ * @session_type: A #MMOmaSessionType.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously starts a client-initiated OMA device management session.
+ *
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call mm_modem_oma_start_client_initiated_session_finish() to get the result of the operation.
+ *
+ * See mm_modem_oma_start_client_initiated_session_sync() for the synchronous, blocking version of this method.
+ */
+void
+mm_modem_oma_start_client_initiated_session (MMModemOma *self,
+ MMOmaSessionType session_type,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_return_if_fail (MM_IS_MODEM_OMA (self));
+
+ mm_gdbus_modem_oma_call_start_client_initiated_session (MM_GDBUS_MODEM_OMA (self), session_type, cancellable, callback, user_data);
+}
+
+/**
+ * mm_modem_oma_start_client_initiated_session_sync:
+ * @self: A #MMModemOma.
+ * @session_type: A #MMOmaSessionType.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously starts a client-initiated OMA device management session.
+ *
+ * The calling thread is blocked until a reply is received. See mm_modem_oma_start_client_initiated_session()
+ * for the asynchronous version of this method.
+ *
+ * Returns: %TRUE if the session was started, %FALSE if @error is set.
+ */
+gboolean
+mm_modem_oma_start_client_initiated_session_sync (MMModemOma *self,
+ MMOmaSessionType session_type,
+ GCancellable *cancellable,
+ GError **error)
+{
+ g_return_val_if_fail (MM_IS_MODEM_OMA (self), FALSE);
+
+ return mm_gdbus_modem_oma_call_start_client_initiated_session_sync (MM_GDBUS_MODEM_OMA (self), session_type, cancellable, error);
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_modem_oma_accept_network_initiated_session_finish:
+ * @self: A #MMModemOma.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to mm_modem_oma_accept_network_initiated_session().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with mm_modem_oma_accept_network_initiated_session().
+ *
+ * Returns: %TRUE if the session was started, %FALSE if @error is set.
+ */
+gboolean
+mm_modem_oma_accept_network_initiated_session_finish (MMModemOma *self,
+ GAsyncResult *res,
+ GError **error)
+{
+ g_return_val_if_fail (MM_IS_MODEM_OMA (self), FALSE);
+
+ return mm_gdbus_modem_oma_call_accept_network_initiated_session_finish (MM_GDBUS_MODEM_OMA (self), res, error);
+}
+
+/**
+ * mm_modem_oma_accept_network_initiated_session:
+ * @self: A #MMModemOma.
+ * @session_id: The unique ID of the network-initiated session.
+ * @accept: %TRUE if the session is to be accepted, %FALSE otherwise.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously accepts a nework-initiated OMA device management session.
+ *
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call mm_modem_oma_accept_network_initiated_session_finish() to get the result of the operation.
+ *
+ * See mm_modem_oma_accept_network_initiated_session_sync() for the synchronous, blocking version of this method.
+ */
+void
+mm_modem_oma_accept_network_initiated_session (MMModemOma *self,
+ guint session_id,
+ gboolean accept,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_return_if_fail (MM_IS_MODEM_OMA (self));
+
+ mm_gdbus_modem_oma_call_accept_network_initiated_session (MM_GDBUS_MODEM_OMA (self), session_id, accept, cancellable, callback, user_data);
+}
+
+/**
+ * mm_modem_oma_accept_network_initiated_session_sync:
+ * @self: A #MMModemOma.
+ * @session_id: The unique ID of the network-initiated session.
+ * @accept: %TRUE if the session is to be accepted, %FALSE otherwise.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously accepts a nework-initiated OMA device management session.
+ *
+ * The calling thread is blocked until a reply is received. See mm_modem_oma_accept_network_initiated_session()
+ * for the asynchronous version of this method.
+ *
+ * Returns: %TRUE if the session was started, %FALSE if @error is set.
+ */
+gboolean
+mm_modem_oma_accept_network_initiated_session_sync (MMModemOma *self,
+ guint session_id,
+ gboolean accept,
+ GCancellable *cancellable,
+ GError **error)
+{
+ g_return_val_if_fail (MM_IS_MODEM_OMA (self), FALSE);
+
+ return mm_gdbus_modem_oma_call_accept_network_initiated_session_sync (MM_GDBUS_MODEM_OMA (self), session_id, accept, cancellable, error);
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_modem_oma_cancel_session_finish:
+ * @self: A #MMModemOma.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to mm_modem_oma_cancel_session().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with mm_modem_oma_cancel_session().
+ *
+ * Returns: %TRUE if the session was started, %FALSE if @error is set.
+ */
+gboolean
+mm_modem_oma_cancel_session_finish (MMModemOma *self,
+ GAsyncResult *res,
+ GError **error)
+{
+ g_return_val_if_fail (MM_IS_MODEM_OMA (self), FALSE);
+
+ return mm_gdbus_modem_oma_call_cancel_session_finish (MM_GDBUS_MODEM_OMA (self), res, error);
+}
+
+/**
+ * mm_modem_oma_cancel_session:
+ * @self: A #MMModemOma.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously cancels the current OMA device management session.
+ *
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call mm_modem_oma_cancel_session_finish() to get the result of the operation.
+ *
+ * See mm_modem_oma_cancel_session_sync() for the synchronous, blocking version of this method.
+ */
+void
+mm_modem_oma_cancel_session (MMModemOma *self,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_return_if_fail (MM_IS_MODEM_OMA (self));
+
+ mm_gdbus_modem_oma_call_cancel_session (MM_GDBUS_MODEM_OMA (self), cancellable, callback, user_data);
+}
+
+/**
+ * mm_modem_oma_cancel_session_sync:
+ * @self: A #MMModemOma.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously cancels the current OMA device management session.
+ *
+ * The calling thread is blocked until a reply is received. See mm_modem_oma_cancel_session()
+ * for the asynchronous version of this method.
+ *
+ * Returns: %TRUE if the session was started, %FALSE if @error is set.
+ */
+gboolean
+mm_modem_oma_cancel_session_sync (MMModemOma *self,
+ GCancellable *cancellable,
+ GError **error)
+{
+ g_return_val_if_fail (MM_IS_MODEM_OMA (self), FALSE);
+
+ return mm_gdbus_modem_oma_call_cancel_session_sync (MM_GDBUS_MODEM_OMA (self), cancellable, error);
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_modem_oma_get_features:
+ * @self: A #MMModemOma.
+ *
+ * Gets the currently enabled OMA features.
+ *
+ * Returns: a bitmask of #MMOmaFeature values.
+ */
+MMOmaFeature
+mm_modem_oma_get_features (MMModemOma *self)
+{
+ g_return_val_if_fail (MM_IS_MODEM_OMA (self), MM_OMA_SESSION_TYPE_UNKNOWN);
+
+ return (MMOmaFeature) mm_gdbus_modem_oma_get_features (MM_GDBUS_MODEM_OMA (self));
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_modem_oma_get_session_type:
+ * @self: A #MMModemOma.
+ *
+ * Gets the type of the current OMA device management session.
+ *
+ * Returns: a #MMOmaSessionType.
+ */
+MMOmaSessionType
+mm_modem_oma_get_session_type (MMModemOma *self)
+{
+ g_return_val_if_fail (MM_IS_MODEM_OMA (self), MM_OMA_SESSION_TYPE_UNKNOWN);
+
+ return (MMOmaSessionType) mm_gdbus_modem_oma_get_session_type (MM_GDBUS_MODEM_OMA (self));
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_modem_oma_get_session_state:
+ * @self: A #MMModemOma.
+ *
+ * Gets the state of the current OMA device management session.
+ *
+ * Returns: a #MMOmaSessionState.
+ */
+MMOmaSessionState
+mm_modem_oma_get_session_state (MMModemOma *self)
+{
+ g_return_val_if_fail (MM_IS_MODEM_OMA (self), MM_OMA_SESSION_STATE_UNKNOWN);
+
+ return (MMOmaSessionState) mm_gdbus_modem_oma_get_session_state (MM_GDBUS_MODEM_OMA (self));
+}
+
+/*****************************************************************************/
+
+static void
+pending_network_initiated_sessions_updated (MMModemOma *self,
+ GParamSpec *pspec)
+{
+ g_mutex_lock (&self->priv->pending_network_initiated_sessions_mutex);
+ {
+ GVariant *dictionary;
+
+ if (self->priv->pending_network_initiated_sessions)
+ g_array_unref (self->priv->pending_network_initiated_sessions);
+
+ dictionary = mm_gdbus_modem_oma_get_pending_network_initiated_sessions (MM_GDBUS_MODEM_OMA (self));
+ self->priv->pending_network_initiated_sessions = (dictionary ?
+ mm_common_oma_pending_network_initiated_sessions_variant_to_garray (dictionary) :
+ NULL);
+ }
+ g_mutex_unlock (&self->priv->pending_network_initiated_sessions_mutex);
+}
+
+static gboolean
+ensure_internal_pending_network_initiated_sessions (MMModemOma *self,
+ MMOmaPendingNetworkInitiatedSession **dup_sessions,
+ guint *dup_sessions_n)
+{
+ gboolean ret;
+
+ g_mutex_lock (&self->priv->pending_network_initiated_sessions_mutex);
+ {
+ /* If this is the first time ever asking for the array, setup the
+ * update listener and the initial array, if any. */
+ if (!self->priv->pending_network_initiated_sessions_id) {
+ GVariant *dictionary;
+
+ dictionary = mm_gdbus_modem_oma_dup_pending_network_initiated_sessions (MM_GDBUS_MODEM_OMA (self));
+ if (dictionary) {
+ self->priv->pending_network_initiated_sessions = mm_common_oma_pending_network_initiated_sessions_variant_to_garray (dictionary);
+ g_variant_unref (dictionary);
+ }
+
+ /* No need to clear this signal connection when freeing self */
+ self->priv->pending_network_initiated_sessions_id =
+ g_signal_connect (self,
+ "notify::pending-network-initiated-sessions",
+ G_CALLBACK (pending_network_initiated_sessions_updated),
+ NULL);
+ }
+
+ if (!self->priv->pending_network_initiated_sessions)
+ ret = FALSE;
+ else {
+ ret = TRUE;
+
+ if (dup_sessions && dup_sessions_n) {
+ *dup_sessions_n = self->priv->pending_network_initiated_sessions->len;
+ if (self->priv->pending_network_initiated_sessions->len > 0) {
+ *dup_sessions = g_malloc (sizeof (MMOmaPendingNetworkInitiatedSession) * self->priv->pending_network_initiated_sessions->len);
+ memcpy (*dup_sessions, self->priv->pending_network_initiated_sessions->data, sizeof (MMOmaPendingNetworkInitiatedSession) * self->priv->pending_network_initiated_sessions->len);
+ } else
+ *dup_sessions = NULL;
+ }
+ }
+ }
+ g_mutex_unlock (&self->priv->pending_network_initiated_sessions_mutex);
+
+ return ret;
+}
+
+/**
+ * mm_modem_get_pending_network_initiated_sessions:
+ * @self: A #MMModem.
+ * @sessions: (out) (array length=n_sessions): Return location for the array of #MMOmaPendingNetworkInitiatedSession structs. The returned array should be freed with g_free() when no longer needed.
+ * @n_sessions: (out): Return location for the number of values in @sessions.
+ *
+ * Gets the list of pending network-initiated OMA sessions.
+ *
+ * Returns: %TRUE if @sessions and @n_sessions are set, %FALSE otherwise.
+ */
+gboolean
+mm_modem_get_pending_network_initiated_sessions (MMModemOma *self,
+ MMOmaPendingNetworkInitiatedSession **sessions,
+ guint *n_sessions)
+{
+ g_return_val_if_fail (MM_IS_MODEM_OMA (self), FALSE);
+ g_return_val_if_fail (sessions != NULL, FALSE);
+ g_return_val_if_fail (n_sessions != NULL, FALSE);
+
+ return ensure_internal_pending_network_initiated_sessions (self, sessions, n_sessions);
+}
+
+/**
+ * mm_modem_peek_pending_network_initiated_sessions:
+ * @self: A #MMModem.
+ * @sessions: (out) (array length=n_sessions): Return location for the array of #MMOmaPendingNetworkInitiatedSession values. Do not free the returned array, it is owned by @self.
+ * @n_sessions: (out): Return location for the number of values in @sessions.
+ *
+ * Gets the list of pending network-initiated OMA sessions.
+ *
+ * Returns: %TRUE if @sessions and @n_sessions are set, %FALSE otherwise.
+ */
+gboolean
+mm_modem_peek_pending_network_initiated_sessions (MMModemOma *self,
+ const MMOmaPendingNetworkInitiatedSession **sessions,
+ guint *n_sessions)
+{
+ g_return_val_if_fail (MM_IS_MODEM_OMA (self), FALSE);
+ g_return_val_if_fail (sessions != NULL, FALSE);
+ g_return_val_if_fail (n_sessions != NULL, FALSE);
+
+ if (!ensure_internal_pending_network_initiated_sessions (self, NULL, NULL))
+ return FALSE;
+
+ *n_sessions = self->priv->pending_network_initiated_sessions->len;
+ *sessions = (MMOmaPendingNetworkInitiatedSession *)self->priv->pending_network_initiated_sessions->data;
+ return TRUE;
+}
+
+/*****************************************************************************/
+
+static void
+mm_modem_oma_init (MMModemOma *self)
+{
+ /* Setup private data */
+ self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self,
+ MM_TYPE_MODEM_OMA,
+ MMModemOmaPrivate);
+ g_mutex_init (&self->priv->pending_network_initiated_sessions_mutex);
+}
+
+static void
+finalize (GObject *object)
+{
+ MMModemOma *self = MM_MODEM_OMA (object);
+
+ g_mutex_clear (&self->priv->pending_network_initiated_sessions_mutex);
+
+ if (self->priv->pending_network_initiated_sessions)
+ g_array_unref (self->priv->pending_network_initiated_sessions);
+
+ G_OBJECT_CLASS (mm_modem_oma_parent_class)->finalize (object);
+}
+
+static void
+mm_modem_oma_class_init (MMModemOmaClass *modem_class)
+{
+ GObjectClass *object_class = G_OBJECT_CLASS (modem_class);
+
+ g_type_class_add_private (object_class, sizeof (MMModemOmaPrivate));
+
+ /* Virtual methods */
+ object_class->finalize = finalize;
+}
diff --git a/libmm-glib/mm-modem-oma.h b/libmm-glib/mm-modem-oma.h
new file mode 100644
index 0000000..e6dc619
--- /dev/null
+++ b/libmm-glib/mm-modem-oma.h
@@ -0,0 +1,135 @@
+/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * libmm -- Access modem status & information from glib applications
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301 USA.
+ *
+ * Copyright (C) 2013 Google, Inc.
+ */
+
+#ifndef _MM_MODEM_OMA_H_
+#define _MM_MODEM_OMA_H_
+
+#if !defined (__LIBMM_GLIB_H_INSIDE__) && !defined (LIBMM_GLIB_COMPILATION)
+#error "Only <libmm-glib.h> can be included directly."
+#endif
+
+#include <ModemManager.h>
+
+#include "mm-helper-types.h"
+#include "mm-gdbus-modem.h"
+
+G_BEGIN_DECLS
+
+#define MM_TYPE_MODEM_OMA (mm_modem_oma_get_type ())
+#define MM_MODEM_OMA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MM_TYPE_MODEM_OMA, MMModemOma))
+#define MM_MODEM_OMA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MM_TYPE_MODEM_OMA, MMModemOmaClass))
+#define MM_IS_MODEM_OMA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MM_TYPE_MODEM_OMA))
+#define MM_IS_MODEM_OMA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((obj), MM_TYPE_MODEM_OMA))
+#define MM_MODEM_OMA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MM_TYPE_MODEM_OMA, MMModemOmaClass))
+
+typedef struct _MMModemOma MMModemOma;
+typedef struct _MMModemOmaClass MMModemOmaClass;
+typedef struct _MMModemOmaPrivate MMModemOmaPrivate;
+
+/**
+ * MMModemOma:
+ *
+ * The #MMModemOma structure contains private data and should only be accessed
+ * using the provided API.
+ */
+struct _MMModemOma {
+ /*< private >*/
+ MmGdbusModemOmaProxy parent;
+ MMModemOmaPrivate *priv;
+};
+
+struct _MMModemOmaClass {
+ /*< private >*/
+ MmGdbusModemOmaProxyClass parent;
+};
+
+GType mm_modem_oma_get_type (void);
+
+const gchar *mm_modem_oma_get_path (MMModemOma *self);
+gchar *mm_modem_oma_dup_path (MMModemOma *self);
+
+void mm_modem_oma_setup (MMModemOma *self,
+ MMOmaFeature features,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+gboolean mm_modem_oma_setup_finish (MMModemOma *self,
+ GAsyncResult *res,
+ GError **error);
+gboolean mm_modem_oma_setup_sync (MMModemOma *self,
+ MMOmaFeature features,
+ GCancellable *cancellable,
+ GError **error);
+
+void mm_modem_oma_start_client_initiated_session (MMModemOma *self,
+ MMOmaSessionType session_type,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+gboolean mm_modem_oma_start_client_initiated_session_finish (MMModemOma *self,
+ GAsyncResult *res,
+ GError **error);
+gboolean mm_modem_oma_start_client_initiated_session_sync (MMModemOma *self,
+ MMOmaSessionType session_type,
+ GCancellable *cancellable,
+ GError **error);
+
+void mm_modem_oma_accept_network_initiated_session (MMModemOma *self,
+ guint session_id,
+ gboolean accept,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+gboolean mm_modem_oma_accept_network_initiated_session_finish (MMModemOma *self,
+ GAsyncResult *res,
+ GError **error);
+gboolean mm_modem_oma_accept_network_initiated_session_sync (MMModemOma *self,
+ guint session_id,
+ gboolean accept,
+ GCancellable *cancellable,
+ GError **error);
+
+void mm_modem_oma_cancel_session (MMModemOma *self,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+gboolean mm_modem_oma_cancel_session_finish (MMModemOma *self,
+ GAsyncResult *res,
+ GError **error);
+gboolean mm_modem_oma_cancel_session_sync (MMModemOma *self,
+ GCancellable *cancellable,
+ GError **error);
+
+MMOmaFeature mm_modem_oma_get_features (MMModemOma *self);
+MMOmaSessionType mm_modem_oma_get_session_type (MMModemOma *self);
+MMOmaSessionState mm_modem_oma_get_session_state (MMModemOma *self);
+
+gboolean mm_modem_peek_pending_network_initiated_sessions (MMModemOma *self,
+ const MMOmaPendingNetworkInitiatedSession **sessions,
+ guint *n_sessions);
+gboolean mm_modem_get_pending_network_initiated_sessions (MMModemOma *self,
+ MMOmaPendingNetworkInitiatedSession **sessions,
+ guint *n_sessions);
+
+G_END_DECLS
+
+#endif /* _MM_MODEM_OMA_H_ */
diff --git a/libmm-glib/mm-modem-signal.c b/libmm-glib/mm-modem-signal.c
new file mode 100644
index 0000000..620dd2a
--- /dev/null
+++ b/libmm-glib/mm-modem-signal.c
@@ -0,0 +1,602 @@
+/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * libmm -- Access modem status & information from glib applications
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301 USA.
+ *
+ * Copyright (C) 2012 Google, Inc.
+ * Copyright (C) 2012 Lanedo GmbH <aleksander@lanedo.com>
+ */
+
+#include <gio/gio.h>
+
+#include "mm-helpers.h"
+#include "mm-errors-types.h"
+#include "mm-modem-signal.h"
+
+/**
+ * SECTION: mm-modem-signal
+ * @title: MMModemSignal
+ * @short_description: The extended Signal interface
+ *
+ * The #MMModemSignal is an object providing access to the methods, signals and
+ * properties of the Signal interface.
+ *
+ * The Signal interface is exposed whenever a modem has extended signal retrieval
+ * capabilities.
+ */
+
+G_DEFINE_TYPE (MMModemSignal, mm_modem_signal, MM_GDBUS_TYPE_MODEM_SIGNAL_PROXY)
+
+typedef struct {
+ GMutex mutex;
+ guint id;
+ MMSignal *info;
+} UpdatedProperty;
+
+typedef enum {
+ UPDATED_PROPERTY_TYPE_CDMA = 0,
+ UPDATED_PROPERTY_TYPE_EVDO = 1,
+ UPDATED_PROPERTY_TYPE_GSM = 2,
+ UPDATED_PROPERTY_TYPE_UMTS = 3,
+ UPDATED_PROPERTY_TYPE_LTE = 4,
+ UPDATED_PROPERTY_TYPE_LAST
+} UpdatedPropertyType;
+
+struct _MMModemSignalPrivate {
+ UpdatedProperty values [UPDATED_PROPERTY_TYPE_LAST];
+};
+
+/*****************************************************************************/
+
+/**
+ * mm_modem_signal_get_path:
+ * @self: A #MMModemSignal.
+ *
+ * Gets the DBus path of the #MMObject which implements this interface.
+ *
+ * Returns: (transfer none): The DBus path of the #MMObject object.
+ */
+const gchar *
+mm_modem_signal_get_path (MMModemSignal *self)
+{
+ g_return_val_if_fail (MM_IS_MODEM_SIGNAL (self), NULL);
+
+ RETURN_NON_EMPTY_CONSTANT_STRING (
+ g_dbus_proxy_get_object_path (G_DBUS_PROXY (self)));
+}
+
+/**
+ * mm_modem_signal_dup_path:
+ * @self: A #MMModemSignal.
+ *
+ * Gets a copy of the DBus path of the #MMObject object which implements this interface.
+ *
+ * Returns: (transfer full): The DBus path of the #MMObject. The returned value should be freed with g_free().
+ */
+gchar *
+mm_modem_signal_dup_path (MMModemSignal *self)
+{
+ gchar *value;
+
+ g_return_val_if_fail (MM_IS_MODEM_SIGNAL (self), NULL);
+
+ g_object_get (G_OBJECT (self),
+ "g-object-path", &value,
+ NULL);
+ RETURN_NON_EMPTY_STRING (value);
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_modem_signal_setup_finish:
+ * @self: A #MMModemSignal.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to mm_modem_signal_setup().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with mm_modem_signal_setup().
+ *
+ * Returns: %TRUE if the setup was successful, %FALSE if @error is set.
+ */
+gboolean
+mm_modem_signal_setup_finish (MMModemSignal *self,
+ GAsyncResult *res,
+ GError **error)
+{
+ g_return_val_if_fail (MM_IS_MODEM_SIGNAL (self), FALSE);
+
+ return mm_gdbus_modem_signal_call_setup_finish (MM_GDBUS_MODEM_SIGNAL (self), res, error);
+}
+
+/**
+ * mm_modem_signal_setup:
+ * @self: A #MMModemSignal.
+ * @rate: Rate to use when refreshing signal values.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously setups the extended signal quality retrieval.
+ *
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call mm_modem_signal_setup_finish() to get the result of the operation.
+ *
+ * See mm_modem_signal_setup_sync() for the synchronous, blocking version of this method.
+ */
+void
+mm_modem_signal_setup (MMModemSignal *self,
+ guint rate,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_return_if_fail (MM_IS_MODEM_SIGNAL (self));
+
+ mm_gdbus_modem_signal_call_setup (MM_GDBUS_MODEM_SIGNAL (self), rate, cancellable, callback, user_data);
+}
+
+/**
+ * mm_modem_signal_setup_sync:
+ * @self: A #MMModemSignal.
+ * @rate: Rate to use when refreshing signal values.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously setups the extended signal quality retrieval.
+ *
+ * The calling thread is blocked until a reply is received. See mm_modem_signal_setup()
+ * for the asynchronous version of this method.
+ *
+ * Returns: %TRUE if the setup was successful, %FALSE if @error is set.
+ */
+gboolean
+mm_modem_signal_setup_sync (MMModemSignal *self,
+ guint rate,
+ GCancellable *cancellable,
+ GError **error)
+{
+ g_return_val_if_fail (MM_IS_MODEM_SIGNAL (self), FALSE);
+
+ return mm_gdbus_modem_signal_call_setup_sync (MM_GDBUS_MODEM_SIGNAL (self), rate, cancellable, error);
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_modem_signal_get_rate:
+ * @self: A #MMModemSignal.
+ *
+ * Gets the currently configured refresh rate.
+ *
+ * Returns: the refresh rate, in seconds.
+ */
+guint
+mm_modem_signal_get_rate (MMModemSignal *self)
+{
+ g_return_val_if_fail (MM_IS_MODEM_SIGNAL (self), 0);
+
+ return mm_gdbus_modem_signal_get_rate (MM_GDBUS_MODEM_SIGNAL (self));
+}
+
+/*****************************************************************************/
+
+static void values_updated (MMModemSignal *self, GParamSpec *pspec, UpdatedPropertyType type);
+
+static void
+cdma_updated (MMModemSignal *self,
+ GParamSpec *pspec)
+{
+ values_updated (self, pspec, UPDATED_PROPERTY_TYPE_CDMA);
+}
+
+static void
+evdo_updated (MMModemSignal *self,
+ GParamSpec *pspec)
+{
+ values_updated (self, pspec, UPDATED_PROPERTY_TYPE_EVDO);
+}
+
+static void
+gsm_updated (MMModemSignal *self,
+ GParamSpec *pspec)
+{
+ values_updated (self, pspec, UPDATED_PROPERTY_TYPE_GSM);
+}
+
+static void
+umts_updated (MMModemSignal *self,
+ GParamSpec *pspec)
+{
+ values_updated (self, pspec, UPDATED_PROPERTY_TYPE_UMTS);
+}
+
+static void
+lte_updated (MMModemSignal *self,
+ GParamSpec *pspec)
+{
+ values_updated (self, pspec, UPDATED_PROPERTY_TYPE_LTE);
+}
+
+typedef GVariant * (* Getter) (MmGdbusModemSignal *self);
+typedef GVariant * (* Dupper) (MmGdbusModemSignal *self);
+typedef void (* UpdatedCallback) (MMModemSignal *self, GParamSpec *pspec);
+typedef struct {
+ const gchar *signal_name;
+ Getter get;
+ Dupper dup;
+ UpdatedCallback updated_callback;
+} SignalData;
+
+static const SignalData signal_data [UPDATED_PROPERTY_TYPE_LAST] = {
+ { "notify::cdma", mm_gdbus_modem_signal_get_cdma, mm_gdbus_modem_signal_dup_cdma, cdma_updated },
+ { "notify::evdo", mm_gdbus_modem_signal_get_evdo, mm_gdbus_modem_signal_dup_evdo, evdo_updated },
+ { "notify::gsm", mm_gdbus_modem_signal_get_gsm, mm_gdbus_modem_signal_dup_gsm, gsm_updated },
+ { "notify::umts", mm_gdbus_modem_signal_get_umts, mm_gdbus_modem_signal_dup_umts, umts_updated },
+ { "notify::lte", mm_gdbus_modem_signal_get_lte, mm_gdbus_modem_signal_dup_lte, lte_updated }
+};
+
+static void
+values_updated (MMModemSignal *self,
+ GParamSpec *pspec,
+ UpdatedPropertyType type)
+{
+ g_mutex_lock (&self->priv->values[type].mutex);
+ {
+ GVariant *dictionary;
+
+ g_clear_object (&self->priv->values[type].info);
+ dictionary = signal_data[type].get (MM_GDBUS_MODEM_SIGNAL (self));
+ if (dictionary) {
+ GError *error = NULL;
+
+ self->priv->values[type].info = mm_signal_new_from_dictionary (dictionary, &error);
+ if (error) {
+ g_warning ("Invalid signal info update received: %s", error->message);
+ g_error_free (error);
+ }
+ }
+ }
+ g_mutex_unlock (&self->priv->values[type].mutex);
+}
+
+static void
+ensure_internal (MMModemSignal *self,
+ MMSignal **dup,
+ UpdatedPropertyType type)
+{
+ g_mutex_lock (&self->priv->values[type].mutex);
+ {
+ /* If this is the first time ever asking for the object, setup the
+ * update listener and the initial object, if any. */
+ if (!self->priv->values[type].id) {
+ GVariant *dictionary;
+
+ dictionary = signal_data[type].dup (MM_GDBUS_MODEM_SIGNAL (self));
+ if (dictionary) {
+ GError *error = NULL;
+
+ self->priv->values[type].info = mm_signal_new_from_dictionary (dictionary, &error);
+ if (error) {
+ g_warning ("Invalid signal info: %s", error->message);
+ g_error_free (error);
+ }
+ g_variant_unref (dictionary);
+ }
+
+ /* No need to clear this signal connection when freeing self */
+ self->priv->values[type].id =
+ g_signal_connect (self,
+ signal_data[type].signal_name,
+ G_CALLBACK (signal_data[type].updated_callback),
+ NULL);
+ }
+
+ if (dup && self->priv->values[type].info)
+ *dup = g_object_ref (self->priv->values[type].info);
+ }
+ g_mutex_unlock (&self->priv->values[type].mutex);
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_modem_signal_get_cdma:
+ * @self: A #MMModem.
+ *
+ * Gets a #MMSignal object specifying the CDMA signal information.
+ *
+ * <warning>The values reported by @self are not updated when the values in the
+ * interface change. Instead, the client is expected to call
+ * mm_modem_signal_get_cdma() again to get a new #MMSignal with the
+ * new values.</warning>
+ *
+ * Returns: (transfer full): A #MMSignal that must be freed with g_object_unref() or %NULL if unknown.
+ */
+MMSignal *
+mm_modem_signal_get_cdma (MMModemSignal *self)
+{
+ MMSignal *info = NULL;
+
+ g_return_val_if_fail (MM_IS_MODEM_SIGNAL (self), NULL);
+
+ ensure_internal (self, &info, UPDATED_PROPERTY_TYPE_CDMA);
+ return info;
+}
+
+/**
+ * mm_modem_signal_peek_cdma:
+ * @self: A #MMModem.
+ *
+ * Gets a #MMSignal object specifying the CDMA signal information.
+ *
+ * <warning>The returned value is only valid until the property changes so
+ * it is only safe to use this function on the thread where
+ * @self was constructed. Use mm_modem_signal_get_cdma() if on another
+ * thread.</warning>
+ *
+ * Returns: (transfer none): A #MMSignal. Do not free the returned value, it belongs to @self.
+ */
+MMSignal *
+mm_modem_signal_peek_cdma (MMModemSignal *self)
+{
+ g_return_val_if_fail (MM_IS_MODEM_SIGNAL (self), NULL);
+
+ ensure_internal (self, NULL, UPDATED_PROPERTY_TYPE_CDMA);
+ return self->priv->values[UPDATED_PROPERTY_TYPE_CDMA].info;
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_modem_signal_get_evdo:
+ * @self: A #MMModem.
+ *
+ * Gets a #MMSignal object specifying the EV-DO signal information.
+ *
+ * <warning>The values reported by @self are not updated when the values in the
+ * interface change. Instead, the client is expected to call
+ * mm_modem_signal_get_evdo() again to get a new #MMSignal with the
+ * new values.</warning>
+ *
+ * Returns: (transfer full): A #MMSignal that must be freed with g_object_unref() or %NULL if unknown.
+ */
+MMSignal *
+mm_modem_signal_get_evdo (MMModemSignal *self)
+{
+ MMSignal *info = NULL;
+
+ g_return_val_if_fail (MM_IS_MODEM_SIGNAL (self), NULL);
+
+ ensure_internal (self, &info, UPDATED_PROPERTY_TYPE_EVDO);
+ return info;
+}
+
+/**
+ * mm_modem_signal_peek_evdo:
+ * @self: A #MMModem.
+ *
+ * Gets a #MMSignal object specifying the EV-DO signal information.
+ *
+ * <warning>The returned value is only valid until the property changes so
+ * it is only safe to use this function on the thread where
+ * @self was constructed. Use mm_modem_signal_get_evdo() if on another
+ * thread.</warning>
+ *
+ * Returns: (transfer none): A #MMSignal. Do not free the returned value, it belongs to @self.
+ */
+MMSignal *
+mm_modem_signal_peek_evdo (MMModemSignal *self)
+{
+ g_return_val_if_fail (MM_IS_MODEM_SIGNAL (self), NULL);
+
+ ensure_internal (self, NULL, UPDATED_PROPERTY_TYPE_EVDO);
+ return self->priv->values[UPDATED_PROPERTY_TYPE_EVDO].info;
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_modem_signal_get_gsm:
+ * @self: A #MMModem.
+ *
+ * Gets a #MMSignal object specifying the GSM signal information.
+ *
+ * <warning>The values reported by @self are not updated when the values in the
+ * interface change. Instead, the client is expected to call
+ * mm_modem_signal_get_gsm() again to get a new #MMSignal with the
+ * new values.</warning>
+ *
+ * Returns: (transfer full): A #MMSignal that must be freed with g_object_unref() or %NULL if unknown.
+ */
+MMSignal *
+mm_modem_signal_get_gsm (MMModemSignal *self)
+{
+ MMSignal *info = NULL;
+
+ g_return_val_if_fail (MM_IS_MODEM_SIGNAL (self), NULL);
+
+ ensure_internal (self, &info, UPDATED_PROPERTY_TYPE_GSM);
+ return info;
+}
+
+/**
+ * mm_modem_signal_peek_gsm:
+ * @self: A #MMModem.
+ *
+ * Gets a #MMSignal object specifying the GSM signal information.
+ *
+ * <warning>The returned value is only valid until the property changes so
+ * it is only safe to use this function on the thread where
+ * @self was constructed. Use mm_modem_signal_get_gsm() if on another
+ * thread.</warning>
+ *
+ * Returns: (transfer none): A #MMSignal. Do not free the returned value, it belongs to @self.
+ */
+MMSignal *
+mm_modem_signal_peek_gsm (MMModemSignal *self)
+{
+ g_return_val_if_fail (MM_IS_MODEM_SIGNAL (self), NULL);
+
+ ensure_internal (self, NULL, UPDATED_PROPERTY_TYPE_GSM);
+ return self->priv->values[UPDATED_PROPERTY_TYPE_GSM].info;
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_modem_signal_get_umts:
+ * @self: A #MMModem.
+ *
+ * Gets a #MMSignal object specifying the UMTS signal information.
+ *
+ * <warning>The values reported by @self are not updated when the values in the
+ * interface change. Instead, the client is expected to call
+ * mm_modem_signal_get_umts() again to get a new #MMSignal with the
+ * new values.</warning>
+ *
+ * Returns: (transfer full): A #MMSignal that must be freed with g_object_unref() or %NULL if unknown.
+ */
+MMSignal *
+mm_modem_signal_get_umts (MMModemSignal *self)
+{
+ MMSignal *info = NULL;
+
+ g_return_val_if_fail (MM_IS_MODEM_SIGNAL (self), NULL);
+
+ ensure_internal (self, &info, UPDATED_PROPERTY_TYPE_UMTS);
+ return info;
+}
+
+/**
+ * mm_modem_signal_peek_umts:
+ * @self: A #MMModem.
+ *
+ * Gets a #MMSignal object specifying the UMTS signal information.
+ *
+ * <warning>The returned value is only valid until the property changes so
+ * it is only safe to use this function on the thread where
+ * @self was constructed. Use mm_modem_signal_get_umts() if on another
+ * thread.</warning>
+ *
+ * Returns: (transfer none): A #MMSignal. Do not free the returned value, it belongs to @self.
+ */
+MMSignal *
+mm_modem_signal_peek_umts (MMModemSignal *self)
+{
+ g_return_val_if_fail (MM_IS_MODEM_SIGNAL (self), NULL);
+
+ ensure_internal (self, NULL, UPDATED_PROPERTY_TYPE_UMTS);
+ return self->priv->values[UPDATED_PROPERTY_TYPE_UMTS].info;
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_modem_signal_get_lte:
+ * @self: A #MMModem.
+ *
+ * Gets a #MMSignal object specifying the LTE signal information.
+ *
+ * <warning>The values reported by @self are not updated when the values in the
+ * interface change. Instead, the client is expected to call
+ * mm_modem_signal_get_lte() again to get a new #MMSignal with the
+ * new values.</warning>
+ *
+ * Returns: (transfer full): A #MMSignal that must be freed with g_object_unref() or %NULL if unknown.
+ */
+MMSignal *
+mm_modem_signal_get_lte (MMModemSignal *self)
+{
+ MMSignal *info = NULL;
+
+ g_return_val_if_fail (MM_IS_MODEM_SIGNAL (self), NULL);
+
+ ensure_internal (self, &info, UPDATED_PROPERTY_TYPE_LTE);
+ return info;
+}
+
+/**
+ * mm_modem_signal_peek_lte:
+ * @self: A #MMModem.
+ *
+ * Gets a #MMSignal object specifying the LTE signal information.
+ *
+ * <warning>The returned value is only valid until the property changes so
+ * it is only safe to use this function on the thread where
+ * @self was constructed. Use mm_modem_signal_get_lte() if on another
+ * thread.</warning>
+ *
+ * Returns: (transfer none): A #MMSignal. Do not free the returned value, it belongs to @self.
+ */
+MMSignal *
+mm_modem_signal_peek_lte (MMModemSignal *self)
+{
+ g_return_val_if_fail (MM_IS_MODEM_SIGNAL (self), NULL);
+
+ ensure_internal (self, NULL, UPDATED_PROPERTY_TYPE_LTE);
+ return self->priv->values[UPDATED_PROPERTY_TYPE_LTE].info;
+}
+
+/*****************************************************************************/
+
+static void
+mm_modem_signal_init (MMModemSignal *self)
+{
+ guint i;
+
+ /* Setup private data */
+ self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, MM_TYPE_MODEM_SIGNAL, MMModemSignalPrivate);
+
+ for (i = 0; i < UPDATED_PROPERTY_TYPE_LAST; i++)
+ g_mutex_init (&self->priv->values[i].mutex);
+}
+
+static void
+finalize (GObject *object)
+{
+ MMModemSignal *self = MM_MODEM_SIGNAL (object);
+ guint i;
+
+ for (i = 0; i < UPDATED_PROPERTY_TYPE_LAST; i++)
+ g_mutex_clear (&self->priv->values[i].mutex);
+
+ G_OBJECT_CLASS (mm_modem_signal_parent_class)->finalize (object);
+}
+
+static void
+dispose (GObject *object)
+{
+ MMModemSignal *self = MM_MODEM_SIGNAL (object);
+ guint i;
+
+ for (i = 0; i < UPDATED_PROPERTY_TYPE_LAST; i++)
+ g_clear_object (&self->priv->values[i].info);
+
+ G_OBJECT_CLASS (mm_modem_signal_parent_class)->dispose (object);
+}
+
+static void
+mm_modem_signal_class_init (MMModemSignalClass *modem_class)
+{
+ GObjectClass *object_class = G_OBJECT_CLASS (modem_class);
+
+ g_type_class_add_private (object_class, sizeof (MMModemSignalPrivate));
+
+ /* Virtual methods */
+ object_class->dispose = dispose;
+ object_class->finalize = finalize;
+}
diff --git a/libmm-glib/mm-modem-signal.h b/libmm-glib/mm-modem-signal.h
new file mode 100644
index 0000000..ef2c8e1
--- /dev/null
+++ b/libmm-glib/mm-modem-signal.h
@@ -0,0 +1,101 @@
+/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * libmm -- Access modem status & information from glib applications
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301 USA.
+ *
+ * Copyright (C) 2013 Aleksander Morgado <aleksander@gnu.org>
+ */
+
+#ifndef _MM_MODEM_SIGNAL_H_
+#define _MM_MODEM_SIGNAL_H_
+
+#if !defined (__LIBMM_GLIB_H_INSIDE__) && !defined (LIBMM_GLIB_COMPILATION)
+#error "Only <libmm-glib.h> can be included directly."
+#endif
+
+#include <ModemManager.h>
+
+#include "mm-signal.h"
+#include "mm-gdbus-modem.h"
+
+G_BEGIN_DECLS
+
+#define MM_TYPE_MODEM_SIGNAL (mm_modem_signal_get_type ())
+#define MM_MODEM_SIGNAL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MM_TYPE_MODEM_SIGNAL, MMModemSignal))
+#define MM_MODEM_SIGNAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MM_TYPE_MODEM_SIGNAL, MMModemSignalClass))
+#define MM_IS_MODEM_SIGNAL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MM_TYPE_MODEM_SIGNAL))
+#define MM_IS_MODEM_SIGNAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((obj), MM_TYPE_MODEM_SIGNAL))
+#define MM_MODEM_SIGNAL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MM_TYPE_MODEM_SIGNAL, MMModemSignalClass))
+
+typedef struct _MMModemSignal MMModemSignal;
+typedef struct _MMModemSignalClass MMModemSignalClass;
+typedef struct _MMModemSignalPrivate MMModemSignalPrivate;
+
+/**
+ * MMModemSignal:
+ *
+ * The #MMModemSignal structure contains private data and should only be accessed
+ * using the provided API.
+ */
+struct _MMModemSignal {
+ /*< private >*/
+ MmGdbusModemSignalProxy parent;
+ MMModemSignalPrivate *priv;
+};
+
+struct _MMModemSignalClass {
+ /*< private >*/
+ MmGdbusModemSignalProxyClass parent;
+};
+
+GType mm_modem_signal_get_type (void);
+
+const gchar *mm_modem_signal_get_path (MMModemSignal *self);
+gchar *mm_modem_signal_dup_path (MMModemSignal *self);
+guint mm_modem_signal_get_rate (MMModemSignal *self);
+
+void mm_modem_signal_setup (MMModemSignal *self,
+ guint rate,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+gboolean mm_modem_signal_setup_finish (MMModemSignal *self,
+ GAsyncResult *res,
+ GError **error);
+gboolean mm_modem_signal_setup_sync (MMModemSignal *self,
+ guint rate,
+ GCancellable *cancellable,
+ GError **error);
+
+MMSignal *mm_modem_signal_get_cdma (MMModemSignal *self);
+MMSignal *mm_modem_signal_peek_cdma (MMModemSignal *self);
+
+MMSignal *mm_modem_signal_get_evdo (MMModemSignal *self);
+MMSignal *mm_modem_signal_peek_evdo (MMModemSignal *self);
+
+MMSignal *mm_modem_signal_get_gsm (MMModemSignal *self);
+MMSignal *mm_modem_signal_peek_gsm (MMModemSignal *self);
+
+MMSignal *mm_modem_signal_get_umts (MMModemSignal *self);
+MMSignal *mm_modem_signal_peek_umts (MMModemSignal *self);
+
+MMSignal *mm_modem_signal_get_lte (MMModemSignal *self);
+MMSignal *mm_modem_signal_peek_lte (MMModemSignal *self);
+
+G_END_DECLS
+
+#endif /* _MM_MODEM_SIGNAL_H_ */
diff --git a/libmm-glib/mm-modem-time.c b/libmm-glib/mm-modem-time.c
index c2d16d4..0cab521 100644
--- a/libmm-glib/mm-modem-time.c
+++ b/libmm-glib/mm-modem-time.c
@@ -97,7 +97,7 @@ mm_modem_time_dup_path (MMModemTime *self)
*
* Finishes an operation started with mm_modem_time_get_network_time().
*
- * Returns: A string containing the network time, or %NULL if @error is set. The returned value should be freed with g_free().
+ * Returns: (transfer full): A string containing the network time, or %NULL if @error is set. The returned value should be freed with g_free().
*/
gchar *
mm_modem_time_get_network_time_finish (MMModemTime *self,
@@ -153,7 +153,7 @@ mm_modem_time_get_network_time (MMModemTime *self,
* The calling thread is blocked until a reply is received. See mm_modem_time_get_network_time()
* for the asynchronous version of this method.
*
- * Returns: A string containing the network time, or %NULL if @error is set. The returned value should be freed with g_free().
+ * Returns: (transfer full): A string containing the network time, or %NULL if @error is set. The returned value should be freed with g_free().
*/
gchar *
mm_modem_time_get_network_time_sync (MMModemTime *self,
@@ -221,17 +221,17 @@ ensure_internal_timezone (MMModemTime *self,
}
/**
- * mm_modem_get_network_timezone:
- * @self: A #MMModem.
+ * mm_modem_time_get_network_timezone:
+ * @self: A #MMModemTime.
*
* Gets the network timezone information.
*
* <warning>The values reported by @self are not updated when the values in the
* interface change. Instead, the client is expected to call
- * mm_modem_get_network_timezone() again to get a new #MMNetworkTimezone with the
+ * mm_modem_time_get_network_timezone() again to get a new #MMNetworkTimezone with the
* new values.</warning>
*
- * Returns: (transfer full) A #MMNetworkTimezone that must be freed with g_object_unref() or %NULL if unknown.
+ * Returns: (transfer full): A #MMNetworkTimezone that must be freed with g_object_unref() or %NULL if unknown.
*/
MMNetworkTimezone *
mm_modem_time_get_network_timezone (MMModemTime *self)
@@ -245,17 +245,17 @@ mm_modem_time_get_network_timezone (MMModemTime *self)
}
/**
- * mm_modem_peek_network_timezone:
- * @self: A #MMModem.
+ * mm_modem_time_peek_network_timezone:
+ * @self: A #MMModemTime.
*
* Gets the network timezone information.
*
* <warning>The returned value is only valid until the property changes so
* it is only safe to use this function on the thread where
- * @self was constructed. Use mm_modem_get_network_timezone() if on another
+ * @self was constructed. Use mm_modem_time_get_network_timezone() if on another
* thread.</warning>
*
- * Returns: (transfer none) A #MMNetworkTimezone. Do not free the returned value, it belongs to @self.
+ * Returns: (transfer none): A #MMNetworkTimezone. Do not free the returned value, it belongs to @self.
*/
MMNetworkTimezone *
mm_modem_time_peek_network_timezone (MMModemTime *self)
diff --git a/libmm-glib/mm-modem.c b/libmm-glib/mm-modem.c
index 410b559..213f679 100644
--- a/libmm-glib/mm-modem.c
+++ b/libmm-glib/mm-modem.c
@@ -341,6 +341,45 @@ mm_modem_get_max_active_bearers (MMModem *self)
/*****************************************************************************/
/**
+ * mm_modem_get_bearer_paths:
+ * @self: A #MMModem.
+ *
+ * Gets the DBus paths of the #MMBearer handled in this #MMModem.
+ *
+ * <warning>The returned value is only valid until the property changes so
+ * it is only safe to use this function on the thread where
+ * @self was constructed. Use mm_modem_dup_bearer_paths() if on another
+ * thread.</warning>
+ *
+ * Returns: (transfer none): The DBus paths of the #MMBearer handled in this #MMModem, or %NULL if none available. Do not free the returned value, it belongs to @self.
+ */
+const gchar * const *
+mm_modem_get_bearer_paths (MMModem *self)
+{
+ g_return_val_if_fail (MM_IS_MODEM (self), NULL);
+
+ return mm_gdbus_modem_get_bearers (MM_GDBUS_MODEM (self));
+}
+
+/**
+ * mm_modem_dup_bearer_paths:
+ * @self: A #MMModem.
+ *
+ * Gets a copy of the DBus paths of the #MMBearer handled in this #MMModem.
+ *
+ * Returns: (transfer full): The DBus paths of the #MMBearer handled in this #MMModem, or %NULL if none available. The returned value should be freed with g_strfreev().
+ */
+gchar **
+mm_modem_dup_bearer_paths (MMModem *self)
+{
+ g_return_val_if_fail (MM_IS_MODEM (self), NULL);
+
+ return mm_gdbus_modem_dup_bearers (MM_GDBUS_MODEM (self));
+}
+
+/*****************************************************************************/
+
+/**
* mm_modem_get_manufacturer:
* @self: A #MMModem.
*
@@ -758,7 +797,7 @@ ensure_internal_ports (MMModem *self,
/**
* mm_modem_peek_current_ports:
* @self: A #MMModem.
- * @ports: (out) (array length=n_ports): Return location for the array of #MMModemPortInfo values. Do not free the returned value, it is owned by @self.
+ * @ports: (out) (array length=n_ports) (transfer none): Return location for the array of #MMModemPortInfo values. Do not free the returned value, it is owned by @self.
* @n_ports: (out): Return location for the number of values in @ports.
*
* Gets the list of ports in the modem.
@@ -986,7 +1025,7 @@ ensure_internal_unlock_retries (MMModem *self,
* mm_modem_get_unlock_retries() again to get a new #MMUnlockRetries with the
* new values.</warning>
*
- * Returns: (transfer full) A #MMUnlockRetries that must be freed with g_object_unref() or %NULL if unknown.
+ * Returns: (transfer full): A #MMUnlockRetries that must be freed with g_object_unref() or %NULL if unknown.
*/
MMUnlockRetries *
mm_modem_get_unlock_retries (MMModem *self)
@@ -1013,7 +1052,7 @@ mm_modem_get_unlock_retries (MMModem *self)
* @self was constructed. Use mm_modem_get_unlock_retries() if on another
* thread.</warning>
*
- * Returns: (transfer none) A #MMUnlockRetries. Do not free the returned value, it belongs to @self.
+ * Returns: (transfer none): A #MMUnlockRetries. Do not free the returned value, it belongs to @self.
*/
MMUnlockRetries *
mm_modem_peek_unlock_retries (MMModem *self)
@@ -1510,7 +1549,7 @@ mm_modem_get_current_bands (MMModem *self,
/**
* mm_modem_peek_current_bands:
* @self: A #MMModem.
- * @bands: (out) (array length=n_storages): Return location for the array of #MMModemBand values. Do not free the returned value, it is owned by @self.
+ * @bands: (out) (array length=n_bands): Return location for the array of #MMModemBand values. Do not free the returned value, it is owned by @self.
* @n_bands: (out): Return location for the number of values in @bands.
*
* Gets the list of radio frequency and technology bands the #MMModem is currently
@@ -1721,7 +1760,7 @@ bearer_object_list_free (GList *list)
static void
list_bearers_context_complete_and_free (ListBearersContext *ctx)
{
- g_simple_async_result_complete (ctx->result);
+ g_simple_async_result_complete_in_idle (ctx->result);
g_strfreev (ctx->bearer_paths);
bearer_object_list_free (ctx->bearer_objects);
@@ -1740,7 +1779,7 @@ list_bearers_context_complete_and_free (ListBearersContext *ctx)
*
* Finishes an operation started with mm_modem_list_bearers().
*
- * Returns: (transfer full): The list of #MMBearer objects, or %NULL if either none found or if @error is set.
+ * Returns: (transfer full) (element-type ModemManager.Modem): The list of #MMBearer objects, or %NULL if either none found or if @error is set.
*/
GList *
mm_modem_list_bearers_finish (MMModem *self,
@@ -1816,32 +1855,6 @@ create_next_bearer (ListBearersContext *ctx)
NULL);
}
-static void
-modem_list_bearers_ready (MMModem *self,
- GAsyncResult *res,
- ListBearersContext *ctx)
-{
- GError *error = NULL;
-
- mm_gdbus_modem_call_list_bearers_finish (MM_GDBUS_MODEM (self), &ctx->bearer_paths, res, &error);
- if (error) {
- g_simple_async_result_take_error (ctx->result, error);
- list_bearers_context_complete_and_free (ctx);
- return;
- }
-
- /* If no bearers, just end here. */
- if (!ctx->bearer_paths || !ctx->bearer_paths[0]) {
- g_simple_async_result_set_op_res_gpointer (ctx->result, NULL, NULL);
- list_bearers_context_complete_and_free (ctx);
- return;
- }
-
- /* Got list of paths. If at least one found, start creating objects for each */
- ctx->i = 0;
- create_next_bearer (ctx);
-}
-
/**
* mm_modem_list_bearers:
* @self: A #MMModem.
@@ -1875,10 +1888,19 @@ mm_modem_list_bearers (MMModem *self,
if (cancellable)
ctx->cancellable = g_object_ref (cancellable);
- mm_gdbus_modem_call_list_bearers (MM_GDBUS_MODEM (self),
- cancellable,
- (GAsyncReadyCallback)modem_list_bearers_ready,
- ctx);
+ /* Read from the property, skip List() */
+ ctx->bearer_paths = mm_gdbus_modem_dup_bearers (MM_GDBUS_MODEM (self));
+
+ /* If no bearers, just end here. */
+ if (!ctx->bearer_paths || !ctx->bearer_paths[0]) {
+ g_simple_async_result_set_op_res_gpointer (ctx->result, NULL, NULL);
+ list_bearers_context_complete_and_free (ctx);
+ return;
+ }
+
+ /* Got list of paths. If at least one found, start creating objects for each */
+ ctx->i = 0;
+ create_next_bearer (ctx);
}
/**
@@ -1892,7 +1914,7 @@ mm_modem_list_bearers (MMModem *self,
* The calling thread is blocked until a reply is received. See mm_modem_list_bearers()
* for the asynchronous version of this method.
*
- * Returns: (transfer full): The list of #MMBearer objects, or %NULL if either none found or if @error is set.
+ * Returns: (transfer full) (element-type ModemManager.Modem): The list of #MMBearer objects, or %NULL if either none found or if @error is set.
*/
GList *
mm_modem_list_bearers_sync (MMModem *self,
@@ -1905,11 +1927,8 @@ mm_modem_list_bearers_sync (MMModem *self,
g_return_val_if_fail (MM_IS_MODEM (self), NULL);
- if (!mm_gdbus_modem_call_list_bearers_sync (MM_GDBUS_MODEM (self),
- &bearer_paths,
- cancellable,
- error))
- return NULL;
+ /* Read from the property, skip List() */
+ bearer_paths = mm_gdbus_modem_dup_bearers (MM_GDBUS_MODEM (self));
/* Only non-empty lists are returned */
if (!bearer_paths)
@@ -2375,7 +2394,7 @@ mm_modem_factory_reset_sync (MMModem *self,
*
* Finishes an operation started with mm_modem_command().
*
- * Returns: (transfer full) A newly allocated string with the reply to the command, or #NULL if @error is set. The returned value should be freed with g_free().
+ * Returns: (transfer full): A newly allocated string with the reply to the command, or #NULL if @error is set. The returned value should be freed with g_free().
*/
gchar *
mm_modem_command_finish (MMModem *self,
@@ -2437,7 +2456,7 @@ mm_modem_command (MMModem *self,
* The calling thread is blocked until a reply is received. See mm_modem_command()
* for the asynchronous version of this method.
*
- * Returns: (transfer full) A newly allocated string with the reply to the command, or #NULL if @error is set. The returned value should be freed with g_free().
+ * Returns: (transfer full): A newly allocated string with the reply to the command, or #NULL if @error is set. The returned value should be freed with g_free().
*/
gchar *
mm_modem_command_sync (MMModem *self,
@@ -2802,7 +2821,7 @@ mm_modem_set_current_bands_sync (MMModem *self,
*
* Finishes an operation started with mm_modem_get_sim().
*
- * Returns: a #MMSim or #NULL if none available. The returned value should be freed with g_object_unref().
+ * Returns: (transfer full): a #MMSim or #NULL if none available. The returned value should be freed with g_object_unref().
*/
MMSim *
mm_modem_get_sim_finish (MMModem *self,
@@ -2906,7 +2925,7 @@ mm_modem_get_sim (MMModem *self,
* The calling thread is blocked until a reply is received. See mm_modem_get_sim()
* for the asynchronous version of this method.
*
- * Returns: a #MMSim or #NULL if none available. The returned value should be freed with g_object_unref().
+ * Returns: (transfer full): a #MMSim or #NULL if none available. The returned value should be freed with g_object_unref().
*/
MMSim *
mm_modem_get_sim_sync (MMModem *self,
diff --git a/libmm-glib/mm-modem.h b/libmm-glib/mm-modem.h
index 8fb1faf..0490628 100644
--- a/libmm-glib/mm-modem.h
+++ b/libmm-glib/mm-modem.h
@@ -87,6 +87,9 @@ guint mm_modem_get_max_bearers (MMModem *self);
guint mm_modem_get_max_active_bearers (MMModem *self);
+const gchar * const *mm_modem_get_bearer_paths (MMModem *self);
+gchar **mm_modem_dup_bearer_paths (MMModem *self);
+
const gchar *mm_modem_get_manufacturer (MMModem *self);
gchar *mm_modem_dup_manufacturer (MMModem *self);
diff --git a/libmm-glib/mm-object.c b/libmm-glib/mm-object.c
index 8d549bc..fa8fae2 100644
--- a/libmm-glib/mm-object.c
+++ b/libmm-glib/mm-object.c
@@ -412,6 +412,78 @@ mm_object_peek_modem_firmware (MMObject *self)
/*****************************************************************************/
+/**
+ * mm_object_get_modem_signal:
+ * @self: A #MMObject.
+ *
+ * Gets the #MMModemSignal instance for the D-Bus interface org.freedesktop.ModemManager1.Modem.Signal on @self, if any.
+ *
+ * Returns: (transfer full): A #MMModemSignal that must be freed with g_object_unref() or %NULL if @self does not implement the interface.
+ */
+MMModemSignal *
+mm_object_get_modem_signal (MMObject *self)
+{
+ g_return_val_if_fail (MM_IS_OBJECT (MM_GDBUS_OBJECT (self)), NULL);
+
+ return (MMModemSignal *)mm_gdbus_object_get_modem_signal (MM_GDBUS_OBJECT (self));
+}
+
+/**
+ * mm_object_peek_modem_signal: (skip)
+ * @self: A #MMObject.
+ *
+ * Like mm_object_get_modem_signal() but doesn't increase the reference count on the returned object.
+ *
+ * <warning>It is not safe to use the returned object if you are on another thread than the one where the #MMManager is running.</warning>
+ *
+ * Returns: (transfer none): A #MMModemSignal or %NULL if @self does not implement the interface. Do not free the returned object, it is owned by @self.
+ */
+MMModemSignal *
+mm_object_peek_modem_signal (MMObject *self)
+{
+ g_return_val_if_fail (MM_IS_OBJECT (MM_GDBUS_OBJECT (self)), NULL);
+
+ return (MMModemSignal *)mm_gdbus_object_peek_modem_signal (MM_GDBUS_OBJECT (self));
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_object_get_modem_oma:
+ * @self: A #MMObject.
+ *
+ * Gets the #MMModemOma instance for the D-Bus interface org.freedesktop.ModemManager1.Modem.Oma on @self, if any.
+ *
+ * Returns: (transfer full): A #MMModemOma that must be freed with g_object_unref() or %NULL if @self does not implement the interface.
+ */
+MMModemOma *
+mm_object_get_modem_oma (MMObject *self)
+{
+ g_return_val_if_fail (MM_IS_OBJECT (MM_GDBUS_OBJECT (self)), NULL);
+
+ return (MMModemOma *)mm_gdbus_object_get_modem_oma (MM_GDBUS_OBJECT (self));
+}
+
+/**
+ * mm_object_peek_modem_oma: (skip)
+ * @self: A #MMObject.
+ *
+ * Like mm_object_get_modem_oma() but doesn't increase the reference count on the returned object.
+ *
+ * <warning>It is not safe to use the returned object if you are on another thread than the one where the #MMManager is running.</warning>
+ *
+ * Returns: (transfer none): A #MMModemOma or %NULL if @self does not implement the interface. Do not free the returned object, it is owned by @self.
+ */
+MMModemOma *
+mm_object_peek_modem_oma (MMObject *self)
+{
+ g_return_val_if_fail (MM_IS_OBJECT (MM_GDBUS_OBJECT (self)), NULL);
+
+ return (MMModemOma *)mm_gdbus_object_peek_modem_oma (MM_GDBUS_OBJECT (self));
+}
+
+/*****************************************************************************/
+
static void
mm_object_init (MMObject *self)
{
diff --git a/libmm-glib/mm-object.h b/libmm-glib/mm-object.h
index e2a758f..bef90b9 100644
--- a/libmm-glib/mm-object.h
+++ b/libmm-glib/mm-object.h
@@ -40,6 +40,8 @@
#include "mm-modem-messaging.h"
#include "mm-modem-time.h"
#include "mm-modem-firmware.h"
+#include "mm-modem-signal.h"
+#include "mm-modem-oma.h"
G_BEGIN_DECLS
@@ -84,6 +86,8 @@ MMModemLocation *mm_object_get_modem_location (MMObject *self);
MMModemMessaging *mm_object_get_modem_messaging (MMObject *self);
MMModemTime *mm_object_get_modem_time (MMObject *self);
MMModemFirmware *mm_object_get_modem_firmware (MMObject *self);
+MMModemSignal *mm_object_get_modem_signal (MMObject *self);
+MMModemOma *mm_object_get_modem_oma (MMObject *self);
MMModem *mm_object_peek_modem (MMObject *self);
MMModem3gpp *mm_object_peek_modem_3gpp (MMObject *self);
@@ -94,6 +98,8 @@ MMModemLocation *mm_object_peek_modem_location (MMObject *self);
MMModemMessaging *mm_object_peek_modem_messaging (MMObject *self);
MMModemTime *mm_object_peek_modem_time (MMObject *self);
MMModemFirmware *mm_object_peek_modem_firmware (MMObject *self);
+MMModemSignal *mm_object_peek_modem_signal (MMObject *self);
+MMModemOma *mm_object_peek_modem_oma (MMObject *self);
G_END_DECLS
diff --git a/libmm-glib/mm-signal.c b/libmm-glib/mm-signal.c
new file mode 100644
index 0000000..57baf5d
--- /dev/null
+++ b/libmm-glib/mm-signal.c
@@ -0,0 +1,441 @@
+/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details:
+ *
+ * Copyright (C) 2013 Aleksander Morgado <aleksander@gnu.org>
+ */
+
+#include <string.h>
+#include <ctype.h>
+#include <stdlib.h>
+
+#include "mm-signal.h"
+#include "mm-errors-types.h"
+
+/**
+ * SECTION: mm-signal
+ * @title: MMSignal
+ * @short_description: Helper object to handle extended Signal information.
+ *
+ * The #MMSignal is an object handling the signal information of the
+ * modem.
+ */
+
+G_DEFINE_TYPE (MMSignal, mm_signal, G_TYPE_OBJECT)
+
+#define PROPERTY_RSSI "rssi"
+#define PROPERTY_ECIO "ecio"
+#define PROPERTY_SINR "sinr"
+#define PROPERTY_IO "io"
+#define PROPERTY_RSRQ "rsrq"
+#define PROPERTY_RSRP "rsrp"
+#define PROPERTY_SNR "snr"
+
+struct _MMSignalPrivate {
+ gdouble rssi;
+ gdouble ecio;
+ gdouble sinr;
+ gdouble io;
+ gdouble rsrq;
+ gdouble rsrp;
+ gdouble snr;
+};
+
+/*****************************************************************************/
+
+/**
+ * mm_signal_get_rssi:
+ * @self: a #MMSignal.
+ *
+ * Gets the RSSI (Received Signal Strength Indication), in dBm.
+ *
+ * Returns: the RSSI, or %MM_SIGNAL_UNKNOWN if unknown.
+ */
+gdouble
+mm_signal_get_rssi (MMSignal *self)
+{
+ g_return_val_if_fail (MM_IS_SIGNAL (self), MM_SIGNAL_UNKNOWN);
+
+ return self->priv->rssi;
+}
+
+void
+mm_signal_set_rssi (MMSignal *self,
+ gdouble value)
+{
+ g_return_if_fail (MM_IS_SIGNAL (self));
+
+ self->priv->rssi = value;
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_signal_get_ecio:
+ * @self: a #MMSignal.
+ *
+ * Gets the Ec/Io, in dBm.
+ *
+ * Only applicable to CDMA1x, CDMA EV-DO and UMTS (WCDMA).
+ *
+ * Returns: the ECIO, or %MM_SIGNAL_UNKNOWN if unknown.
+ */
+gdouble
+mm_signal_get_ecio (MMSignal *self)
+{
+ g_return_val_if_fail (MM_IS_SIGNAL (self), MM_SIGNAL_UNKNOWN);
+
+ return self->priv->ecio;
+}
+
+void
+mm_signal_set_ecio (MMSignal *self,
+ gdouble value)
+{
+ g_return_if_fail (MM_IS_SIGNAL (self));
+
+ self->priv->ecio = value;
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_signal_get_sinr:
+ * @self: a #MMSignal.
+ *
+ * Gets the SINR level, in dB.
+ *
+ * Only applicable to CDMA EV-DO.
+ *
+ * Returns: the SINR, or %MM_SIGNAL_UNKNOWN if unknown.
+ */
+gdouble
+mm_signal_get_sinr (MMSignal *self)
+{
+ g_return_val_if_fail (MM_IS_SIGNAL (self), MM_SIGNAL_UNKNOWN);
+
+ return self->priv->sinr;
+}
+
+void
+mm_signal_set_sinr (MMSignal *self,
+ gdouble value)
+{
+ g_return_if_fail (MM_IS_SIGNAL (self));
+
+ self->priv->sinr = value;
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_signal_get_io:
+ * @self: a #MMSignal.
+ *
+ * Gets the Io, in dBm.
+ *
+ * Only applicable to CDMA EV-DO.
+ *
+ * Returns: the Io, or %MM_SIGNAL_UNKNOWN if unknown.
+ */
+gdouble
+mm_signal_get_io (MMSignal *self)
+{
+ g_return_val_if_fail (MM_IS_SIGNAL (self), MM_SIGNAL_UNKNOWN);
+
+ return self->priv->io;
+}
+
+void
+mm_signal_set_io (MMSignal *self,
+ gdouble value)
+{
+ g_return_if_fail (MM_IS_SIGNAL (self));
+
+ self->priv->io = value;
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_signal_get_rsrp:
+ * @self: a #MMSignal.
+ *
+ * Gets the RSRP (Reference Signal Received Power), in dBm.
+ *
+ * Only applicable to LTE.
+ *
+ * Returns: the RSRP, or %MM_SIGNAL_UNKNOWN if unknown.
+ */
+gdouble
+mm_signal_get_rsrp (MMSignal *self)
+{
+ g_return_val_if_fail (MM_IS_SIGNAL (self), MM_SIGNAL_UNKNOWN);
+
+ return self->priv->rsrp;
+}
+
+void
+mm_signal_set_rsrp (MMSignal *self,
+ gdouble value)
+{
+ g_return_if_fail (MM_IS_SIGNAL (self));
+
+ self->priv->rsrp = value;
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_signal_get_rsrq:
+ * @self: a #MMSignal.
+ *
+ * Gets the RSRQ (Reference Signal Received Quality), in dB.
+ *
+ * Only applicable to LTE.
+ *
+ * Returns: the RSRQ, or %MM_SIGNAL_UNKNOWN if unknown.
+ */
+gdouble
+mm_signal_get_rsrq (MMSignal *self)
+{
+ g_return_val_if_fail (MM_IS_SIGNAL (self), MM_SIGNAL_UNKNOWN);
+
+ return self->priv->rsrq;
+}
+
+void
+mm_signal_set_rsrq (MMSignal *self,
+ gdouble value)
+{
+ g_return_if_fail (MM_IS_SIGNAL (self));
+
+ self->priv->rsrq = value;
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_signal_get_snr:
+ * @self: a #MMSignal.
+ *
+ * Gets the S/R ration, in dB.
+ *
+ * Only applicable to LTE.
+ *
+ * Returns: the S/R ratio, or %MM_SIGNAL_UNKNOWN if unknown.
+ */
+gdouble
+mm_signal_get_snr (MMSignal *self)
+{
+ g_return_val_if_fail (MM_IS_SIGNAL (self), MM_SIGNAL_UNKNOWN);
+
+ return self->priv->snr;
+}
+
+void
+mm_signal_set_snr (MMSignal *self,
+ gdouble value)
+{
+ g_return_if_fail (MM_IS_SIGNAL (self));
+
+ self->priv->snr = value;
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_signal_get_dictionary:
+ * @self: A #MMSignal.
+ *
+ * Gets a variant dictionary with the contents of @self.
+ *
+ * Returns: (transfer full): A dictionary with the signal values. The returned value should be freed with g_variant_unref().
+ */
+GVariant *
+mm_signal_get_dictionary (MMSignal *self)
+{
+ GVariantBuilder builder;
+
+ /* We do allow NULL */
+ if (!self)
+ return NULL;
+
+ g_return_val_if_fail (MM_IS_SIGNAL (self), NULL);
+
+ g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}"));
+
+ if (self->priv->rssi != MM_SIGNAL_UNKNOWN)
+ g_variant_builder_add (&builder,
+ "{sv}",
+ PROPERTY_RSSI,
+ g_variant_new_double (self->priv->rssi));
+
+ if (self->priv->ecio != MM_SIGNAL_UNKNOWN)
+ g_variant_builder_add (&builder,
+ "{sv}",
+ PROPERTY_ECIO,
+ g_variant_new_double (self->priv->ecio));
+
+ if (self->priv->sinr != MM_SIGNAL_UNKNOWN)
+ g_variant_builder_add (&builder,
+ "{sv}",
+ PROPERTY_SINR,
+ g_variant_new_double (self->priv->sinr));
+
+ if (self->priv->io != MM_SIGNAL_UNKNOWN)
+ g_variant_builder_add (&builder,
+ "{sv}",
+ PROPERTY_IO,
+ g_variant_new_double (self->priv->io));
+
+ if (self->priv->rsrp != MM_SIGNAL_UNKNOWN)
+ g_variant_builder_add (&builder,
+ "{sv}",
+ PROPERTY_RSRP,
+ g_variant_new_double (self->priv->rsrp));
+
+ if (self->priv->rsrq != MM_SIGNAL_UNKNOWN)
+ g_variant_builder_add (&builder,
+ "{sv}",
+ PROPERTY_RSRQ,
+ g_variant_new_double (self->priv->rsrq));
+
+ if (self->priv->snr != MM_SIGNAL_UNKNOWN)
+ g_variant_builder_add (&builder,
+ "{sv}",
+ PROPERTY_SNR,
+ g_variant_new_double (self->priv->snr));
+
+ return g_variant_ref_sink (g_variant_builder_end (&builder));
+}
+
+/*****************************************************************************/
+
+static gboolean
+consume_variant (MMSignal *self,
+ const gchar *key,
+ GVariant *value,
+ GError **error)
+{
+ if (g_str_equal (key, PROPERTY_RSSI))
+ self->priv->rssi = g_variant_get_double (value);
+ else if (g_str_equal (key, PROPERTY_ECIO))
+ self->priv->ecio = g_variant_get_double (value);
+ else if (g_str_equal (key, PROPERTY_SINR))
+ self->priv->sinr = g_variant_get_double (value);
+ else if (g_str_equal (key, PROPERTY_IO))
+ self->priv->io = g_variant_get_double (value);
+ else if (g_str_equal (key, PROPERTY_RSRP))
+ self->priv->rsrp = g_variant_get_double (value);
+ else if (g_str_equal (key, PROPERTY_RSRQ))
+ self->priv->rsrq = g_variant_get_double (value);
+ else if (g_str_equal (key, PROPERTY_SNR))
+ self->priv->snr = g_variant_get_double (value);
+ else {
+ /* Set error */
+ g_set_error (error,
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "Invalid signal dictionary, unexpected key '%s'",
+ key);
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+/**
+ * mm_signal_new_from_dictionary:
+ * @dictionary: A variant dictionary with the signal information.
+ * @error: Return location for error or %NULL.
+ *
+ * Creates a new #MMSignal object with the values exposed in
+ * the dictionary.
+ *
+ * Returns: (transfer full): A #MMSignal or %NULL if @error is set. The returned value should be freed with g_object_unref().
+ */
+MMSignal *
+mm_signal_new_from_dictionary (GVariant *dictionary,
+ GError **error)
+{
+ GError *inner_error = NULL;
+ GVariantIter iter;
+ gchar *key;
+ GVariant *value;
+ MMSignal *self = NULL;
+
+ if (!dictionary) {
+ g_set_error (error,
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "Cannot create Signal info from empty dictionary");
+ return NULL;
+ }
+
+ if (!g_variant_is_of_type (dictionary, G_VARIANT_TYPE ("a{sv}"))) {
+ g_set_error (error,
+ MM_CORE_ERROR,
+ MM_CORE_ERROR_INVALID_ARGS,
+ "Cannot create Signal info from dictionary: "
+ "invalid variant type received");
+ return NULL;
+ }
+
+ g_variant_iter_init (&iter, dictionary);
+ while (!inner_error && g_variant_iter_next (&iter, "{sv}", &key, &value)) {
+ if (!self)
+ self = mm_signal_new ();
+ consume_variant (self,
+ key,
+ value,
+ &inner_error);
+ g_free (key);
+ g_variant_unref (value);
+ }
+
+ /* If error, destroy the object */
+ if (inner_error) {
+ g_propagate_error (error, inner_error);
+ g_clear_object (&self);
+ }
+
+ return self;
+}
+
+/*****************************************************************************/
+
+MMSignal *
+mm_signal_new (void)
+{
+ return MM_SIGNAL (g_object_new (MM_TYPE_SIGNAL, NULL));
+}
+
+static void
+mm_signal_init (MMSignal *self)
+{
+ self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, MM_TYPE_SIGNAL, MMSignalPrivate);
+ self->priv->rssi = MM_SIGNAL_UNKNOWN;
+ self->priv->ecio = MM_SIGNAL_UNKNOWN;
+ self->priv->sinr = MM_SIGNAL_UNKNOWN;
+ self->priv->io = MM_SIGNAL_UNKNOWN;
+ self->priv->rsrq = MM_SIGNAL_UNKNOWN;
+ self->priv->rsrp = MM_SIGNAL_UNKNOWN;
+ self->priv->snr = MM_SIGNAL_UNKNOWN;
+}
+
+static void
+mm_signal_class_init (MMSignalClass *klass)
+{
+ GObjectClass *object_class = G_OBJECT_CLASS (klass);
+
+ g_type_class_add_private (object_class, sizeof (MMSignalPrivate));
+}
diff --git a/libmm-glib/mm-signal.h b/libmm-glib/mm-signal.h
new file mode 100644
index 0000000..47391f0
--- /dev/null
+++ b/libmm-glib/mm-signal.h
@@ -0,0 +1,98 @@
+/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details:
+ *
+ * Copyright (C) 2013 Aleksander Morgado <aleksander@gnu.org>
+ */
+
+#ifndef MM_SIGNAL_H
+#define MM_SIGNAL_H
+
+#if !defined (__LIBMM_GLIB_H_INSIDE__) && !defined (LIBMM_GLIB_COMPILATION)
+#error "Only <libmm-glib.h> can be included directly."
+#endif
+
+#include <ModemManager.h>
+#include <glib-object.h>
+
+G_BEGIN_DECLS
+
+/**
+ * MM_SIGNAL_UNKNOWN:
+ *
+ * Identifier for an unknown signal value.
+ */
+#define MM_SIGNAL_UNKNOWN G_MINDOUBLE
+
+#define MM_TYPE_SIGNAL (mm_signal_get_type ())
+#define MM_SIGNAL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MM_TYPE_SIGNAL, MMSignal))
+#define MM_SIGNAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MM_TYPE_SIGNAL, MMSignalClass))
+#define MM_IS_SIGNAL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MM_TYPE_SIGNAL))
+#define MM_IS_SIGNAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), MM_TYPE_SIGNAL))
+#define MM_SIGNAL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MM_TYPE_SIGNAL, MMSignalClass))
+
+typedef struct _MMSignal MMSignal;
+typedef struct _MMSignalClass MMSignalClass;
+typedef struct _MMSignalPrivate MMSignalPrivate;
+
+/**
+ * MMSignal:
+ *
+ * The #MMSignal structure contains private data and should
+ * only be accessed using the provided API.
+ */
+struct _MMSignal {
+ /*< private >*/
+ GObject parent;
+ MMSignalPrivate *priv;
+};
+
+struct _MMSignalClass {
+ /*< private >*/
+ GObjectClass parent;
+};
+
+GType mm_signal_get_type (void);
+
+gdouble mm_signal_get_rssi (MMSignal *self);
+gdouble mm_signal_get_ecio (MMSignal *self);
+gdouble mm_signal_get_sinr (MMSignal *self);
+gdouble mm_signal_get_io (MMSignal *self);
+gdouble mm_signal_get_rsrq (MMSignal *self);
+gdouble mm_signal_get_rsrp (MMSignal *self);
+gdouble mm_signal_get_snr (MMSignal *self);
+
+/*****************************************************************************/
+/* ModemManager/libmm-glib/mmcli specific methods */
+
+#if defined (_LIBMM_INSIDE_MM) || \
+ defined (_LIBMM_INSIDE_MMCLI) || \
+ defined (LIBMM_GLIB_COMPILATION)
+
+GVariant *mm_signal_get_dictionary (MMSignal *self);
+
+MMSignal *mm_signal_new (void);
+MMSignal *mm_signal_new_from_dictionary (GVariant *dictionary,
+ GError **error);
+
+void mm_signal_set_rssi (MMSignal *self, gdouble value);
+void mm_signal_set_ecio (MMSignal *self, gdouble value);
+void mm_signal_set_sinr (MMSignal *self, gdouble value);
+void mm_signal_set_io (MMSignal *self, gdouble value);
+void mm_signal_set_rsrq (MMSignal *self, gdouble value);
+void mm_signal_set_rsrp (MMSignal *self, gdouble value);
+void mm_signal_set_snr (MMSignal *self, gdouble value);
+
+#endif
+
+G_END_DECLS
+
+#endif /* MM_SIGNAL_H */
diff --git a/libmm-glib/mm-simple-connect-properties.c b/libmm-glib/mm-simple-connect-properties.c
index f57cc4f..200b7c3 100644
--- a/libmm-glib/mm-simple-connect-properties.c
+++ b/libmm-glib/mm-simple-connect-properties.c
@@ -363,6 +363,14 @@ mm_simple_connect_properties_get_number (MMSimpleConnectProperties *self)
/*****************************************************************************/
+/**
+ * mm_simple_connect_properties_get_bearer_properties:
+ * @self: a #MMSimpleConnectProperties:
+ *
+ * Returns the bearer properties of @self.
+ *
+ * Returns: (transfer full): a #MMBearerProperties
+ */
MMBearerProperties *
mm_simple_connect_properties_get_bearer_properties (MMSimpleConnectProperties *self)
{
diff --git a/libmm-glib/mm-simple-connect-properties.h b/libmm-glib/mm-simple-connect-properties.h
index e9c09ae..3167db0 100644
--- a/libmm-glib/mm-simple-connect-properties.h
+++ b/libmm-glib/mm-simple-connect-properties.h
@@ -100,7 +100,7 @@ MMSimpleConnectProperties *mm_simple_connect_properties_new_from_string (const g
MMSimpleConnectProperties *mm_simple_connect_properties_new_from_dictionary (GVariant *dictionary,
GError **error);
-MMBearerProperties *mm_simple_connect_properties_get_bearer_properties (MMSimpleConnectProperties *properties);
+MMBearerProperties *mm_simple_connect_properties_get_bearer_properties (MMSimpleConnectProperties *self);
GVariant *mm_simple_connect_properties_get_dictionary (MMSimpleConnectProperties *self);
#endif
diff --git a/libmm-glib/mm-simple-status.c b/libmm-glib/mm-simple-status.c
index 10dfee3..9be9573 100644
--- a/libmm-glib/mm-simple-status.c
+++ b/libmm-glib/mm-simple-status.c
@@ -44,6 +44,7 @@ enum {
PROP_3GPP_REGISTRATION_STATE,
PROP_3GPP_OPERATOR_CODE,
PROP_3GPP_OPERATOR_NAME,
+ PROP_3GPP_SUBSCRIPTION_STATE,
PROP_CDMA_CDMA1X_REGISTRATION_STATE,
PROP_CDMA_EVDO_REGISTRATION_STATE,
PROP_CDMA_SID,
@@ -72,6 +73,8 @@ struct _MMSimpleStatusPrivate {
gchar *modem_3gpp_operator_code;
/* 3GPP operator name, given only when registered, signature 's' */
gchar *modem_3gpp_operator_name;
+ /* 3GPP subsctiption state, signature 'u' */
+ MMModem3gppSubscriptionState modem_3gpp_subscription_state;
/* <--- From the Modem CDMA interface ---> */
/* CDMA/CDMA1x registration state, signature 'u' */
@@ -233,6 +236,25 @@ mm_simple_status_get_3gpp_operator_name (MMSimpleStatus *self)
/*****************************************************************************/
/**
+ * mm_simple_status_get_3gpp_subscription_state:
+ * @self: a #MMSimpleStatus.
+ *
+ * Gets the current subscription status of the account.
+ *
+ * Returns: a #MMModem3gppSubscriptionState.
+ */
+MMModem3gppSubscriptionState
+mm_simple_status_get_3gpp_subscription_state (MMSimpleStatus *self)
+{
+ g_return_val_if_fail (MM_IS_SIMPLE_STATUS (self), MM_MODEM_3GPP_SUBSCRIPTION_STATE_UNKNOWN);
+
+ return self->priv->modem_3gpp_subscription_state;
+}
+
+
+/*****************************************************************************/
+
+/**
* mm_simple_status_get_cdma_cdma1x_registration_state:
* @self: a #MMSimpleStatus.
*
@@ -375,6 +397,12 @@ mm_simple_status_get_dictionary (MMSimpleStatus *self)
}
+ if (self->priv->modem_3gpp_subscription_state)
+ g_variant_builder_add (&builder,
+ "{sv}",
+ MM_SIMPLE_PROPERTY_3GPP_SUBSCRIPTION_STATE,
+ g_variant_new_uint32 (self->priv->modem_3gpp_subscription_state));
+
return g_variant_ref_sink (g_variant_builder_end (&builder));
}
@@ -414,6 +442,7 @@ mm_simple_status_new_from_dictionary (GVariant *dictionary,
if (g_str_equal (key, MM_SIMPLE_PROPERTY_STATE) ||
g_str_equal (key, MM_SIMPLE_PROPERTY_ACCESS_TECHNOLOGIES) ||
g_str_equal (key, MM_SIMPLE_PROPERTY_3GPP_REGISTRATION_STATE) ||
+ g_str_equal (key, MM_SIMPLE_PROPERTY_3GPP_SUBSCRIPTION_STATE) ||
g_str_equal (key, MM_SIMPLE_PROPERTY_CDMA_CDMA1X_REGISTRATION_STATE) ||
g_str_equal (key, MM_SIMPLE_PROPERTY_CDMA_EVDO_REGISTRATION_STATE) ||
g_str_equal (key, MM_SIMPLE_PROPERTY_CDMA_SID) ||
@@ -505,6 +534,9 @@ set_property (GObject *object,
g_free (self->priv->modem_3gpp_operator_name);
self->priv->modem_3gpp_operator_name = g_value_dup_string (value);
break;
+ case PROP_3GPP_SUBSCRIPTION_STATE:
+ self->priv->modem_3gpp_subscription_state = g_value_get_enum (value);
+ break;
case PROP_CDMA_CDMA1X_REGISTRATION_STATE:
self->priv->modem_cdma_cdma1x_registration_state = g_value_get_enum (value);
break;
@@ -553,6 +585,9 @@ get_property (GObject *object,
case PROP_3GPP_OPERATOR_NAME:
g_value_set_string (value, self->priv->modem_3gpp_operator_name);
break;
+ case PROP_3GPP_SUBSCRIPTION_STATE:
+ g_value_set_enum (value, self->priv->modem_3gpp_subscription_state);
+ break;
case PROP_CDMA_CDMA1X_REGISTRATION_STATE:
g_value_set_enum (value, self->priv->modem_cdma_cdma1x_registration_state);
break;
@@ -582,6 +617,7 @@ mm_simple_status_init (MMSimpleStatus *self)
self->priv->state = MM_MODEM_STATE_UNKNOWN;
self->priv->access_technologies = MM_MODEM_ACCESS_TECHNOLOGY_UNKNOWN;
self->priv->modem_3gpp_registration_state = MM_MODEM_3GPP_REGISTRATION_STATE_UNKNOWN;
+ self->priv->modem_3gpp_subscription_state = MM_MODEM_3GPP_SUBSCRIPTION_STATE_UNKNOWN;
self->priv->current_bands = g_variant_ref_sink (mm_common_build_bands_unknown ());
self->priv->signal_quality = g_variant_ref_sink (g_variant_new ("(ub)", 0, 0));
self->priv->modem_cdma_cdma1x_registration_state = MM_MODEM_CDMA_REGISTRATION_STATE_UNKNOWN;
@@ -678,6 +714,15 @@ mm_simple_status_class_init (MMSimpleStatusClass *klass)
G_PARAM_READWRITE);
g_object_class_install_property (object_class, PROP_3GPP_OPERATOR_NAME, properties[PROP_3GPP_OPERATOR_NAME]);
+ properties[PROP_3GPP_SUBSCRIPTION_STATE] =
+ g_param_spec_enum (MM_SIMPLE_PROPERTY_3GPP_SUBSCRIPTION_STATE,
+ "3GPP subscription state",
+ "Subscription state of the account",
+ MM_TYPE_MODEM_3GPP_SUBSCRIPTION_STATE,
+ MM_MODEM_3GPP_SUBSCRIPTION_STATE_UNKNOWN,
+ G_PARAM_READWRITE);
+ g_object_class_install_property (object_class, PROP_3GPP_SUBSCRIPTION_STATE, properties[PROP_3GPP_SUBSCRIPTION_STATE]);
+
properties[PROP_CDMA_CDMA1X_REGISTRATION_STATE] =
g_param_spec_enum (MM_SIMPLE_PROPERTY_CDMA_CDMA1X_REGISTRATION_STATE,
"CDMA1x registration state",
diff --git a/libmm-glib/mm-simple-status.h b/libmm-glib/mm-simple-status.h
index 8292fdb..cbf93bc 100644
--- a/libmm-glib/mm-simple-status.h
+++ b/libmm-glib/mm-simple-status.h
@@ -67,6 +67,7 @@ MMModemAccessTechnology mm_simple_status_get_access_technologies (MMSimple
MMModem3gppRegistrationState mm_simple_status_get_3gpp_registration_state (MMSimpleStatus *self);
const gchar *mm_simple_status_get_3gpp_operator_code (MMSimpleStatus *self);
const gchar *mm_simple_status_get_3gpp_operator_name (MMSimpleStatus *self);
+MMModem3gppSubscriptionState mm_simple_status_get_3gpp_subscription_state (MMSimpleStatus *self);
MMModemCdmaRegistrationState mm_simple_status_get_cdma_cdma1x_registration_state (MMSimpleStatus *self);
MMModemCdmaRegistrationState mm_simple_status_get_cdma_evdo_registration_state (MMSimpleStatus *self);
@@ -88,6 +89,7 @@ guint mm_simple_status_get_cdma_nid
#define MM_SIMPLE_PROPERTY_3GPP_REGISTRATION_STATE "m3gpp-registration-state"
#define MM_SIMPLE_PROPERTY_3GPP_OPERATOR_CODE "m3gpp-operator-code"
#define MM_SIMPLE_PROPERTY_3GPP_OPERATOR_NAME "m3gpp-operator-name"
+#define MM_SIMPLE_PROPERTY_3GPP_SUBSCRIPTION_STATE "m3gpp-subscription-state"
#define MM_SIMPLE_PROPERTY_CDMA_CDMA1X_REGISTRATION_STATE "cdma-cdma1x-registration-state"
#define MM_SIMPLE_PROPERTY_CDMA_EVDO_REGISTRATION_STATE "cdma-evdo-registration-state"
diff --git a/libmm-glib/mm-sms-properties.c b/libmm-glib/mm-sms-properties.c
index bac363a..93e8b9b 100644
--- a/libmm-glib/mm-sms-properties.c
+++ b/libmm-glib/mm-sms-properties.c
@@ -34,7 +34,7 @@
* mm_modem_messaging_create() or mm_modem_messaging_create_sync().
*/
-G_DEFINE_TYPE (MMSmsProperties, mm_sms_properties, G_TYPE_OBJECT);
+G_DEFINE_TYPE (MMSmsProperties, mm_sms_properties, G_TYPE_OBJECT)
#define PROPERTY_TEXT "text"
#define PROPERTY_DATA "data"
@@ -43,6 +43,8 @@ G_DEFINE_TYPE (MMSmsProperties, mm_sms_properties, G_TYPE_OBJECT);
#define PROPERTY_VALIDITY "validity"
#define PROPERTY_CLASS "class"
#define PROPERTY_DELIVERY_REPORT_REQUEST "delivery-report-request"
+#define PROPERTY_TELESERVICE_ID "teleservice-id"
+#define PROPERTY_SERVICE_CATEGORY "service-category"
struct _MMSmsPropertiesPrivate {
gchar *text;
@@ -54,6 +56,8 @@ struct _MMSmsPropertiesPrivate {
gint class;
gboolean delivery_report_request_set;
gboolean delivery_report_request;
+ MMSmsCdmaTeleserviceId teleservice_id;
+ MMSmsCdmaServiceCategory service_category;
};
/*****************************************************************************/
@@ -385,6 +389,74 @@ mm_sms_properties_get_delivery_report_request (MMSmsProperties *self)
/*****************************************************************************/
+/**
+ * mm_sms_properties_set_teleservice_id:
+ * @self: A #MMSmsProperties.
+ * @teleservice_id: The CDMA teleservice ID.
+ *
+ * Sets the CDMA teleservice ID of the SMS.
+ */
+void
+mm_sms_properties_set_teleservice_id (MMSmsProperties *self,
+ MMSmsCdmaTeleserviceId teleservice_id)
+{
+ g_return_if_fail (MM_IS_SMS_PROPERTIES (self));
+
+ self->priv->teleservice_id = teleservice_id;
+}
+
+/**
+ * mm_sms_properties_get_teleservice_id:
+ * @self: A #MMSmsProperties.
+ *
+ * Gets the CDMA teleservice ID of the SMS.
+ *
+ * Returns: the CDMA teleservice ID.
+ */
+MMSmsCdmaTeleserviceId
+mm_sms_properties_get_teleservice_id (MMSmsProperties *self)
+{
+ g_return_val_if_fail (MM_IS_SMS_PROPERTIES (self), MM_SMS_CDMA_TELESERVICE_ID_UNKNOWN);
+
+ return self->priv->teleservice_id;
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_sms_properties_set_service_category:
+ * @self: A #MMSmsProperties.
+ * @service_category: The CDMA service category.
+ *
+ * Sets the CDMA service category of the SMS.
+ */
+void
+mm_sms_properties_set_service_category (MMSmsProperties *self,
+ MMSmsCdmaServiceCategory service_category)
+{
+ g_return_if_fail (MM_IS_SMS_PROPERTIES (self));
+
+ self->priv->service_category = service_category;
+}
+
+/**
+ * mm_sms_properties_get_service_category:
+ * @self: A #MMSmsProperties.
+ *
+ * Gets the CDMA message service category of the SMS.
+ *
+ * Returns: the CDMA service category.
+ */
+MMSmsCdmaServiceCategory
+mm_sms_properties_get_service_category (MMSmsProperties *self)
+{
+ g_return_val_if_fail (MM_IS_SMS_PROPERTIES (self), MM_SMS_CDMA_SERVICE_CATEGORY_UNKNOWN);
+
+ return self->priv->service_category;
+}
+
+/*****************************************************************************/
+
GVariant *
mm_sms_properties_get_dictionary (MMSmsProperties *self)
{
@@ -446,6 +518,18 @@ mm_sms_properties_get_dictionary (MMSmsProperties *self)
PROPERTY_DELIVERY_REPORT_REQUEST,
g_variant_new_boolean (self->priv->delivery_report_request));
+ if (self->priv->teleservice_id != MM_SMS_CDMA_TELESERVICE_ID_UNKNOWN)
+ g_variant_builder_add (&builder,
+ "{sv}",
+ PROPERTY_TELESERVICE_ID,
+ g_variant_new_uint32 (self->priv->teleservice_id));
+
+ if (self->priv->service_category != MM_SMS_CDMA_SERVICE_CATEGORY_UNKNOWN)
+ g_variant_builder_add (&builder,
+ "{sv}",
+ PROPERTY_SERVICE_CATEGORY,
+ g_variant_new_uint32 (self->priv->service_category));
+
return g_variant_ref_sink (g_variant_builder_end (&builder));
}
@@ -539,7 +623,29 @@ consume_string (MMSmsProperties *self,
}
mm_sms_properties_set_delivery_report_request (self, request);
- } else if (g_str_equal (key, PROPERTY_DATA)) {
+ } else if (g_str_equal (key, PROPERTY_TELESERVICE_ID)) {
+ MMSmsCdmaTeleserviceId teleservice_id;
+ GError *inner_error = NULL;
+
+ teleservice_id = mm_common_get_sms_cdma_teleservice_id_from_string (value, &inner_error);
+ if (inner_error) {
+ g_propagate_error (error, inner_error);
+ return FALSE;
+ }
+
+ mm_sms_properties_set_teleservice_id (self, teleservice_id);
+ } else if (g_str_equal (key, PROPERTY_SERVICE_CATEGORY)) {
+ MMSmsCdmaServiceCategory service_category;
+ GError *inner_error = NULL;
+
+ service_category = mm_common_get_sms_cdma_service_category_from_string (value, &inner_error);
+ if (inner_error) {
+ g_propagate_error (error, inner_error);
+ return FALSE;
+ }
+
+ mm_sms_properties_set_service_category (self, service_category);
+ } else if (g_str_equal (key, PROPERTY_DATA)) {
g_set_error (error,
MM_CORE_ERROR,
MM_CORE_ERROR_INVALID_ARGS,
@@ -648,6 +754,14 @@ consume_variant (MMSmsProperties *properties,
mm_sms_properties_set_delivery_report_request (
properties,
g_variant_get_boolean (value));
+ else if (g_str_equal (key, PROPERTY_TELESERVICE_ID))
+ mm_sms_properties_set_teleservice_id (
+ properties,
+ g_variant_get_uint32 (value));
+ else if (g_str_equal (key, PROPERTY_SERVICE_CATEGORY))
+ mm_sms_properties_set_service_category (
+ properties,
+ g_variant_get_uint32 (value));
else {
/* Set error */
g_set_error (error,
@@ -708,6 +822,14 @@ mm_sms_properties_new_from_dictionary (GVariant *dictionary,
/*****************************************************************************/
+/**
+ * mm_sms_properties_dup:
+ * @orig: a #MMSmsProperties
+ *
+ * Returns a copy of @orig.
+ *
+ * Returns: (transfer full): a #MMSmsProperties
+ */
MMSmsProperties *
mm_sms_properties_dup (MMSmsProperties *orig)
{
@@ -748,6 +870,8 @@ mm_sms_properties_init (MMSmsProperties *self)
MMSmsPropertiesPrivate);
self->priv->validity_type = MM_SMS_VALIDITY_TYPE_UNKNOWN;
self->priv->class = -1;
+ self->priv->teleservice_id = MM_SMS_CDMA_TELESERVICE_ID_UNKNOWN;
+ self->priv->service_category = MM_SMS_CDMA_SERVICE_CATEGORY_UNKNOWN;
}
static void
diff --git a/libmm-glib/mm-sms-properties.h b/libmm-glib/mm-sms-properties.h
index b0c290a..fb9dbf9 100644
--- a/libmm-glib/mm-sms-properties.h
+++ b/libmm-glib/mm-sms-properties.h
@@ -74,6 +74,10 @@ void mm_sms_properties_set_class (MMSmsProperties *self,
gint class);
void mm_sms_properties_set_delivery_report_request (MMSmsProperties *self,
gboolean request);
+void mm_sms_properties_set_teleservice_id (MMSmsProperties *self,
+ MMSmsCdmaTeleserviceId teleservice_id);
+void mm_sms_properties_set_service_category (MMSmsProperties *self,
+ MMSmsCdmaServiceCategory service_category);
const gchar *mm_sms_properties_get_text (MMSmsProperties *self);
const guint8 *mm_sms_properties_get_data (MMSmsProperties *self,
@@ -86,6 +90,8 @@ MMSmsValidityType mm_sms_properties_get_validity_type (MMSmsProperties *se
guint mm_sms_properties_get_validity_relative (MMSmsProperties *self);
gint mm_sms_properties_get_class (MMSmsProperties *self);
gboolean mm_sms_properties_get_delivery_report_request (MMSmsProperties *self);
+MMSmsCdmaTeleserviceId mm_sms_properties_get_teleservice_id (MMSmsProperties *self);
+MMSmsCdmaServiceCategory mm_sms_properties_get_service_category (MMSmsProperties *self);
/*****************************************************************************/
/* ModemManager/libmm-glib/mmcli specific methods */
diff --git a/libmm-glib/mm-sms.c b/libmm-glib/mm-sms.c
index 8229021..a49deb8 100644
--- a/libmm-glib/mm-sms.c
+++ b/libmm-glib/mm-sms.c
@@ -154,7 +154,7 @@ mm_sms_get_data (MMSms *self,
/**
* mm_sms_dup_data:
* @self: A #MMSms.
- * @data_len: (out) Size of the output data, if any given.
+ * @data_len: (out): Size of the output data, if any given.
*
* Gets the message data.
*
@@ -571,6 +571,42 @@ mm_sms_get_pdu_type (MMSms *self)
/*****************************************************************************/
/**
+ * mm_sms_get_teleservice_id:
+ * @self: A #MMSms.
+ *
+ * Gets the 3GPP2 Teleservice ID.
+ *
+ * Returns: a #MMSmsCdmaTeleserviceId.
+ */
+MMSmsCdmaTeleserviceId
+mm_sms_get_teleservice_id (MMSms *self)
+{
+ g_return_val_if_fail (MM_IS_SMS (self), MM_SMS_CDMA_TELESERVICE_ID_UNKNOWN);
+
+ return (MMSmsCdmaTeleserviceId) mm_gdbus_sms_get_teleservice_id (MM_GDBUS_SMS (self));
+}
+
+/*****************************************************************************/
+
+/**
+ * mm_sms_get_service_category:
+ * @self: A #MMSms.
+ *
+ * Gets the 3GPP2 Service Category.
+ *
+ * Returns: a #MMSmsCdmaServiceCategory.
+ */
+MMSmsCdmaServiceCategory
+mm_sms_get_service_category (MMSms *self)
+{
+ g_return_val_if_fail (MM_IS_SMS (self), MM_SMS_CDMA_SERVICE_CATEGORY_UNKNOWN);
+
+ return (MMSmsCdmaServiceCategory) mm_gdbus_sms_get_service_category (MM_GDBUS_SMS (self));
+}
+
+/*****************************************************************************/
+
+/**
* mm_sms_send_finish:
* @self: A #MMSms.
* @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to mm_sms_send().
diff --git a/libmm-glib/mm-sms.h b/libmm-glib/mm-sms.h
index def70c1..4e4e935 100644
--- a/libmm-glib/mm-sms.h
+++ b/libmm-glib/mm-sms.h
@@ -103,6 +103,10 @@ MMSmsStorage mm_sms_get_storage (MMSms *self);
MMSmsPduType mm_sms_get_pdu_type (MMSms *self);
+MMSmsCdmaTeleserviceId mm_sms_get_teleservice_id (MMSms *self);
+
+MMSmsCdmaServiceCategory mm_sms_get_service_category (MMSms *self);
+
void mm_sms_send (MMSms *self,
GCancellable *cancellable,
GAsyncReadyCallback callback,
diff --git a/libmm-glib/mm-unlock-retries.c b/libmm-glib/mm-unlock-retries.c
index 4ce6c32..935c7ce 100644
--- a/libmm-glib/mm-unlock-retries.c
+++ b/libmm-glib/mm-unlock-retries.c
@@ -112,8 +112,8 @@ mm_unlock_retries_cmp (MMUnlockRetries *a,
/**
* mm_unlock_retries_foreach:
* @self: a @MMUnlockRetries.
- * @callback: callback to call for each available lock.
- * @user_data: data to pass to @callback.
+ * @callback: (scope call): callback to call for each available lock.
+ * @user_data: (closure): data to pass to @callback.
*
* Executes @callback for each lock information found in @self.
*/
diff --git a/libmm-glib/tests/Makefile.in b/libmm-glib/tests/Makefile.in
index 2d63a84..c6ade4c 100644
--- a/libmm-glib/tests/Makefile.in
+++ b/libmm-glib/tests/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -86,12 +86,13 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/compiler_warnings.m4 \
$(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gtk-doc.m4 \
$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
- $(top_srcdir)/m4/intltool.m4 $(top_srcdir)/m4/lib-ld.m4 \
- $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
- $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
- $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
- $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \
- $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \
+ $(top_srcdir)/m4/intltool.m4 $(top_srcdir)/m4/introspection.m4 \
+ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
+ $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+ $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/vapigen.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
@@ -229,6 +230,14 @@ INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@
INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@
INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@
INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
+INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@
+INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@
+INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@
+INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@
+INTROSPECTION_LIBS = @INTROSPECTION_LIBS@
+INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@
+INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@
+INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBICONV = @LIBICONV@
@@ -295,6 +304,9 @@ STRIP = @STRIP@
SYSTEMD_UNIT_DIR = @SYSTEMD_UNIT_DIR@
UDEV_BASE_DIR = @UDEV_BASE_DIR@
USE_NLS = @USE_NLS@
+VAPIGEN = @VAPIGEN@
+VAPIGEN_MAKEFILE = @VAPIGEN_MAKEFILE@
+VAPIGEN_VAPIDIR = @VAPIGEN_VAPIDIR@
VERSION = @VERSION@
XGETTEXT = @XGETTEXT@
XGETTEXT_015 = @XGETTEXT_015@