New devices return a "Missing Argument" error in WDA Get Data Format,
requiring the use of the "Endpoint info" TLV. Given that all these new
devices are raw-ip only anyway, let's use this error to right away
fallback to require raw-ip in the interface.
Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/issues/177
It's not uncommon that we may want to parse a simple AT response that
contains a single number by doing mm_strip_tag() followed by
mm_get_uint_from_str(). In order to do this, we need to have the
helper methods that convert strings to numbers support \r\n characters
at the end of the string, as we would have in AT responses.
mm-location-gps-nmea.c: In function ‘mm_location_gps_nmea_get_string_variant’:
mm-location-gps-nmea.c:245:5: warning: ‘mm_location_gps_nmea_build_full’ is deprecated: Use 'mm_location_gps_nmea_get_traces' instead [-Wdeprecated-declarations]
245 | built = mm_location_gps_nmea_build_full (self);
| ^~~~~
test-pco.c: In function ‘test_pco_list_add’:
test-pco.c:82:5: warning: ‘mm_pco_list_free’ is deprecated [-Wdeprecated-declarations]
82 | mm_pco_list_free (list);
| ^~~~~~~~~~~~~~~~
In file included from ../../libmm-glib/libmm-glib.h:82,
from test-pco.c:17:
../../libmm-glib/mm-pco.h:67:6: note: declared here
67 | void mm_pco_list_free (GList *pco_list);
| ^~~~~~~~~~~~~~~~
It has the same exact format as MMBaseModemAtCommand, but its contents
are assumed heap allocated.
The only real purpose of this type is to allow defining static
constant MMBaseModemAtCommand variables without warnings when using
-Wdiscarded-qualifiers.
mmsmspdu.c: In function ‘show_part_info’:
mmsmspdu.c:86:5: error: enumeration value ‘MM_SMS_ENCODING_UNKNOWN’ not handled in switch [-Werror=switch-enum]
86 | switch (encoding) {
| ^~~~~~
lsudev.c: In function ‘println’:
lsudev.c:64:19: error: comparison of integer expressions of different signedness: ‘int’ and ‘guint’ {aka ‘unsigned int’} [-Werror=sign-compare]
64 | for (i = 0; i < indent; i++)
| ^
mmcli-manager.c: In function ‘context_free’:
mmcli-manager.c:167:24: error: declaration of ‘ctx’ shadows a global declaration [-Werror=shadow]
167 | context_free (Context *ctx)
| ~~~~~~~~~^~~
mmcli-manager.c:51:17: note: shadowed declaration is here
51 | static Context *ctx;
| ^~~
...
mmcli.c: In function ‘log_handler’:
mmcli.c:118:5: error: enumeration value ‘G_LOG_FLAG_RECURSION’ not handled in switch [-Werror=switch-enum]
118 | switch (log_level) {
| ^~~~~~
mmcli.c:118:5: error: enumeration value ‘G_LOG_LEVEL_MESSAGE’ not handled in switch [-Werror=switch-enum]
mmcli.c:118:5: error: enumeration value ‘G_LOG_LEVEL_INFO’ not handled in switch [-Werror=switch-enum]
mmcli.c:118:5: error: enumeration value ‘G_LOG_LEVEL_MASK’ not handled in switch [-Werror=switch-enum]
The incorrect ready() method was being used while disabling, which
ended up making the parent disable not being run at all.
ublox/mm-broadband-modem-ublox.c:1178:1: error: ‘voice_disable_unsolicited_events_ready’ defined but not used [-Werror=unused-function]
1178 | voice_disable_unsolicited_events_ready (MMBroadbandModemUblox *self,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ublox/mm-broadband-modem-ublox.c:458:18: error: this statement may fall through [-Werror=implicit-fallthrough=]
458 | ctx->step++;
| ~~~~~~~~~^~
ublox/mm-broadband-modem-ublox.c:461:5: note: here
461 | case SET_CURRENT_MODES_BANDS_STEP_ACQUIRE:
| ^~~~
ublox/mm-broadband-modem-ublox.c:468:18: error: this statement may fall through [-Werror=implicit-fallthrough=]
468 | ctx->step++;
| ~~~~~~~~~^~
ublox/mm-broadband-modem-ublox.c:471:5: note: here
471 | case SET_CURRENT_MODES_BANDS_STEP_CURRENT_POWER:
| ^~~~
...
ublox/mm-broadband-modem-ublox.c:1246:5: error: enumeration value ‘MM_CALL_STATE_UNKNOWN’ not handled in switch [-Werror=switch-enum]
1246 | switch (call_info.state) {
| ^~~~~~
ublox/mm-broadband-modem-ublox.c:1246:5: error: enumeration value ‘MM_CALL_STATE_ACTIVE’ not handled in switch [-Werror=switch-enum]
ublox/mm-broadband-modem-ublox.c:1246:5: error: enumeration value ‘MM_CALL_STATE_HELD’ not handled in switch [-Werror=switch-enum]
ublox/mm-broadband-modem-ublox.c:1246:5: error: enumeration value ‘MM_CALL_STATE_TERMINATED’ not handled in switch [-Werror=switch-enum]
simtech/mm-broadband-modem-simtech.c: In function ‘enable_unsolicited_events_context_step’:
simtech/mm-broadband-modem-simtech.c:442:18: error: this statement may fall through [-Werror=implicit-fallthrough=]
442 | ctx->step++;
| ~~~~~~~~~^~
simtech/mm-broadband-modem-simtech.c:444:5: note: here
444 | case ENABLE_UNSOLICITED_EVENTS_STEP_LAST:
| ^~~~
option/mm-broadband-bearer-hso.c: In function ‘ip_config_ready’:
option/mm-broadband-bearer-hso.c:128:21: error: comparison of integer expressions of different signedness: ‘gint’ {aka ‘int’} and ‘guint’ {aka ‘unsigned int’} [-Werror=sign-compare]
128 | num != ctx->cid) {
| ^~
huawei/mm-broadband-bearer-huawei.c: In function ‘connect_3gpp_context_step’:
huawei/mm-broadband-bearer-huawei.c:378:18: error: this statement may fall through [-Werror=implicit-fallthrough=]
378 | ctx->step++;
| ~~~~~~~~~^~
huawei/mm-broadband-bearer-huawei.c:382:5: note: here
382 | case CONNECT_3GPP_CONTEXT_STEP_NDISDUP: {
| ^~~~
huawei/mm-broadband-bearer-huawei.c: In function ‘disconnect_3gpp_context_step’:
huawei/mm-broadband-bearer-huawei.c:708:18: error: this statement may fall through [-Werror=implicit-fallthrough=]
708 | ctx->step++;
| ~~~~~~~~~^~
huawei/mm-broadband-bearer-huawei.c:711:5: note: here
711 | case DISCONNECT_3GPP_CONTEXT_STEP_NDISDUP:
| ^~~~
huawei/mm-broadband-modem-huawei.c: In function ‘huawei_hcsq_changed’:
huawei/mm-broadband-modem-huawei.c:1816:5: error: enumeration value ‘MM_MODEM_ACCESS_TECHNOLOGY_UNKNOWN’ not handled in switch [-Werror=switch-enum]
1816 | switch (act) {
| ^~~~~~
huawei/mm-broadband-modem-huawei.c:1816:5: error: enumeration value ‘MM_MODEM_ACCESS_TECHNOLOGY_POTS’ not handled in switch [-Werror=switch-enum]
huawei/mm-broadband-modem-huawei.c:1816:5: error: enumeration value ‘MM_MODEM_ACCESS_TECHNOLOGY_GSM_COMPACT’ not handled in switch [-Werror=switch-enum]
huawei/mm-broadband-modem-huawei.c:1816:5: error: enumeration value ‘MM_MODEM_ACCESS_TECHNOLOGY_GPRS’ not handled in switch [-Werror=switch-enum]
huawei/mm-broadband-modem-huawei.c:1816:5: error: enumeration value ‘MM_MODEM_ACCESS_TECHNOLOGY_EDGE’ not handled in switch [-Werror=switch-enum]
huawei/mm-broadband-modem-huawei.c:1816:5: error: enumeration value ‘MM_MODEM_ACCESS_TECHNOLOGY_HSDPA’ not handled in switch [-Werror=switch-enum]
huawei/mm-broadband-modem-huawei.c:1816:5: error: enumeration value ‘MM_MODEM_ACCESS_TECHNOLOGY_HSUPA’ not handled in switch [-Werror=switch-enum]
huawei/mm-broadband-modem-huawei.c:1816:5: error: enumeration value ‘MM_MODEM_ACCESS_TECHNOLOGY_HSPA’ not handled in switch [-Werror=switch-enum]
huawei/mm-broadband-modem-huawei.c:1816:5: error: enumeration value ‘MM_MODEM_ACCESS_TECHNOLOGY_HSPA_PLUS’ not handled in switch [-Werror=switch-enum]
huawei/mm-broadband-modem-huawei.c:1816:5: error: enumeration value ‘MM_MODEM_ACCESS_TECHNOLOGY_1XRTT’ not handled in switch [-Werror=switch-enum]
huawei/mm-broadband-modem-huawei.c:1816:5: error: enumeration value ‘MM_MODEM_ACCESS_TECHNOLOGY_EVDO0’ not handled in switch [-Werror=switch-enum]
huawei/mm-broadband-modem-huawei.c:1816:5: error: enumeration value ‘MM_MODEM_ACCESS_TECHNOLOGY_EVDOA’ not handled in switch [-Werror=switch-enum]
huawei/mm-broadband-modem-huawei.c:1816:5: error: enumeration value ‘MM_MODEM_ACCESS_TECHNOLOGY_EVDOB’ not handled in switch [-Werror=switch-enum]
huawei/mm-broadband-modem-huawei.c:1816:5: error: enumeration value ‘MM_MODEM_ACCESS_TECHNOLOGY_ANY’ not handled in switch [-Werror=switch-enum]
cinterion/mm-broadband-bearer-cinterion.c: In function ‘dial_3gpp_context_step’:
cinterion/mm-broadband-bearer-cinterion.c:393:18: error: this statement may fall through [-Werror=implicit-fallthrough=]
393 | ctx->step++;
| ~~~~~~~~~^~
cinterion/mm-broadband-bearer-cinterion.c:396:5: note: here
396 | case DIAL_3GPP_CONTEXT_STEP_AUTH: {
| ^~~~
cinterion/mm-broadband-bearer-cinterion.c:419:18: error: this statement may fall through [-Werror=implicit-fallthrough=]
419 | ctx->step++;
| ~~~~~~~~~^~
cinterion/mm-broadband-bearer-cinterion.c:422:5: note: here
422 | case DIAL_3GPP_CONTEXT_STEP_START_SWWAN: {
| ^~~~
cinterion/mm-broadband-bearer-cinterion.c: In function ‘disconnect_3gpp_context_step’:
cinterion/mm-broadband-bearer-cinterion.c:613:18: error: this statement may fall through [-Werror=implicit-fallthrough=]
613 | ctx->step++;
| ~~~~~~~~~^~
cinterion/mm-broadband-bearer-cinterion.c:615:5: note: here
615 | case DISCONNECT_3GPP_CONTEXT_STEP_STOP_SWWAN: {
| ^~~~
cinterion/mm-broadband-modem-cinterion.c: In function ‘common_create_bearer’:
cinterion/mm-broadband-modem-cinterion.c:1699:5: error: enumeration value ‘FEATURE_SUPPORT_UNKNOWN’ not handled in switch [-Werror=switch-enum]
1699 | switch (self->priv->swwan_support) {
| ^~~~~~
...
cinterion/mm-shared-cinterion.c: In function ‘disable_location_gathering_context_gps_step’:
cinterion/mm-shared-cinterion.c:414:22: error: this statement may fall through [-Werror=implicit-fallthrough=]
414 | ctx->gps_step++;
| ~~~~~~~~~~~~~^~
cinterion/mm-shared-cinterion.c:417:5: note: here
417 | case DISABLE_LOCATION_GATHERING_GPS_STEP_SGPSS:
| ^~~~
Useful when clamping a unsigned integer with low threshold set to 0,
which would give us compiler warnings with -Wtype-limits when using
CLAMP(), e.g.:
via/mm-broadband-modem-via.c: In function ‘handle_evdo_quality_change’:
/usr/include/glib-2.0/glib/gmacros.h:811:63: error: comparison of unsigned expression < 0 is always false [-Werror=type-limits]
811 | #define CLAMP(x, low, high) (((x) > (high)) ? (high) : (((x) < (low)) ? (low) : (x)))
| ^
via/mm-broadband-modem-via.c:284:19: note: in expansion of macro ‘CLAMP’
284 | quality = CLAMP (quality, 0, 100);
| ^~~~~
telit/mm-broadband-modem-telit.c: In function ‘qss_setup_step’:
telit/mm-broadband-modem-telit.c:619:22: error: this statement may fall through [-Werror=implicit-fallthrough=]
619 | ctx->step++;
| ~~~~~~~~~^~
telit/mm-broadband-modem-telit.c:620:9: note: here
620 | case QSS_SETUP_STEP_QUERY:
| ^~~~
telit/mm-broadband-modem-telit.c:653:22: error: this statement may fall through [-Werror=implicit-fallthrough=]
653 | ctx->step++;
| ~~~~~~~~~^~
telit/mm-broadband-modem-telit.c:654:9: note: here
654 | case QSS_SETUP_STEP_LAST:
| ^~~~
telit/mm-broadband-modem-telit.c: In function ‘load_unlock_retries_step’:
telit/mm-broadband-modem-telit.c:906:22: error: this statement may fall through [-Werror=implicit-fallthrough=]
906 | ctx->step++;
| ~~~~~~~~~^~
telit/mm-broadband-modem-telit.c:907:9: note: here
907 | case LOAD_UNLOCK_RETRIES_STEP_LOCK:
| ^~~~
telit/mm-broadband-modem-telit.c: In function ‘gps_enabled_ready’:
telit/mm-broadband-modem-telit.c:191:30: error: comparison of integer expressions of different signedness: ‘gint’ {aka ‘int’} and ‘long unsigned int’ [-Werror=sign-compare]
191 | if (ctx->gps_enable_step < G_N_ELEMENTS (gps_enable)) {
| ^
telit/mm-broadband-modem-telit.c: In function ‘parent_enable_location_gathering_ready’:
telit/mm-broadband-modem-telit.c:254:43: error: comparison of integer expressions of different signedness: ‘gint’ {aka ‘int’} and ‘long unsigned int’ [-Werror=sign-compare]
254 | if (start_gps && ctx->gps_enable_step < G_N_ELEMENTS (gps_enable)) {
| ^
xmm/mm-shared-xmm.c: In function ‘gps_engine_start’:
xmm/mm-shared-xmm.c:1068:5: error: enumeration value ‘GPS_ENGINE_STATE_OFF’ not handled in switch [-Werror=switch-enum]
1068 | switch (state) {
| ^~~~~~
option/mm-broadband-modem-option.c: In function ‘load_access_technologies_step’:
option/mm-broadband-modem-option.c:565:18: error: this statement may fall through [-Werror=implicit-fallthrough=]
565 | ctx->step++;
| ~~~~~~~~~^~
option/mm-broadband-modem-option.c:567:5: note: here
567 | case ACCESS_TECHNOLOGIES_STEP_OSSYS:
| ^~~~
option/mm-broadband-modem-option.c:587:18: error: this statement may fall through [-Werror=implicit-fallthrough=]
587 | ctx->step++;
| ~~~~~~~~~^~
option/mm-broadband-modem-option.c:589:5: note: here
589 | case ACCESS_TECHNOLOGIES_STEP_OWCTI:
| ^~~~
option/mm-broadband-modem-option.c:600:18: error: this statement may fall through [-Werror=implicit-fallthrough=]
600 | ctx->step++;
| ~~~~~~~~~^~
option/mm-broadband-modem-option.c:602:5: note: here
602 | case ACCESS_TECHNOLOGIES_STEP_LAST:
| ^~~~