(List (= scope= flags=0 words=[] bindings=[('MM', {[LIT_CHARS org.chromium.ModemManager]})]) (= scope= flags=0 words=[] bindings=[('MM_OBJECT', {[LIT_CHARS /org/chromium/ModemManager]})]) (= scope= flags=0 words=[] bindings=[('MM_IMANAGER', {[LIT_CHARS org.freedesktop.ModemManager]})]) (= scope= flags=0 words=[] bindings=[('MM_IMODEM', {[VarSub MM_IMANAGER] [LIT_CHARS .Modem]})]) (= scope= flags=0 words=[] bindings=[('MM_IMODEM_SIMPLE', {[VarSub MM_IMODEM] [LIT_CHARS .Simple]})]) (= scope= flags=0 words=[] bindings=[('MM_IMODEM_GSM', {[VarSub MM_IMODEM] [LIT_CHARS .Gsm]})]) (= scope= flags=0 words=[] bindings=[('MM_IMODEM_GSM_CARD', {[VarSub MM_IMODEM_GSM] [LIT_CHARS .Card]})]) (= scope= flags=0 words=[] bindings=[('MM_IMODEM_GSM_NETWORK', {[VarSub MM_IMODEM_GSM] [LIT_CHARS .Network]})]) (= scope= flags=0 words=[] bindings=[('MM_IMODEM_CDMA', {[VarSub MM_IMODEM] [LIT_CHARS .Cdma]})]) (FunctionDef mm_modem_gsm_properties [] (List (= scope= flags=0 words=[] bindings=[('modem', {[DQ [VarSub 1]]})]) (= scope= flags=0 words=[] bindings=[('imei', {[ComSub (Com {[LIT_CHARS dbus_call]} {[DQ [VarSub MM]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM_IMODEM_GSM_CARD][LIT_CHARS .GetImei]]})]})]) (= scope= flags=0 words=[] bindings=[('imsi', {[ComSub (Com {[LIT_CHARS dbus_call]} {[DQ [VarSub MM]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM_IMODEM_GSM_CARD][LIT_CHARS .GetImsi]]})]})]) (= scope= flags=0 words=[] bindings=[('band', {[ComSub (Com {[LIT_CHARS dbus_call]} {[DQ [VarSub MM]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM_IMODEM_GSM_NETWORK][LIT_CHARS .GetBand]]})]})]) (= scope= flags=0 words=[] bindings=[('signal_quality', {[ComSub (Com {[LIT_CHARS dbus_call]} {[DQ [VarSub MM]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM_IMODEM_GSM_NETWORK][LIT_CHARS .GetSignalQuality]]})]})]) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "GSM:"]]} ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " Card:"]]} ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " IMEI: "][VarSub imei]]} ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " IMSI: "][VarSub imsi]]} ) (Pipeline (Com {[LIT_CHARS dbus_properties]} {[DQ [VarSub MM]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM_IMODEM_GSM_CARD]]} ) (Com {[LIT_CHARS format_dbus_dict]} ) (Com {[LIT_CHARS indent]} {[LIT_CHARS 2]} ) ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " Network:"]]} ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " Band: "][VarSub band]]} ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " Registration:"]]} ) (Pipeline (Com {[LIT_CHARS dbus_call]} {[DQ [VarSub MM]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM_IMODEM_GSM_NETWORK][LIT_CHARS .GetRegistrationInfo]]} ) (Com {[LIT_CHARS unpack_tuple]} {[LIT_CHARS Status]} {[LIT_CHARS OperatorCode]} {[LIT_CHARS OperatorName]} ) (Com {[LIT_CHARS indent]} {[LIT_CHARS 3]} ) ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " SignalQuality: "][VarSub signal_quality]]} ) (Pipeline (Com {[LIT_CHARS dbus_properties]} {[DQ [VarSub MM]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM_IMODEM_GSM_NETWORK]]} ) (Com {[LIT_CHARS format_dbus_dict]} ) (Com {[LIT_CHARS indent]} {[LIT_CHARS 2]} ) ) ) ) (FunctionDef mm_modem_cdma_properties [] (List (= scope= flags=0 words=[] bindings=[('modem', {[DQ [VarSub 1]]})]) (= scope= flags=0 words=[] bindings=[('esn', {[ComSub (Com {[LIT_CHARS dbus_call]} {[DQ [VarSub MM]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM_IMODEM_CDMA][LIT_CHARS .GetEsn]]})]})]) (= scope= flags=0 words=[] bindings=[('signal_quality', {[ComSub (Com {[LIT_CHARS dbus_call]} {[DQ [VarSub MM]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM_IMODEM_CDMA][LIT_CHARS .GetSignalQuality]]})]})]) (= scope= flags=0 words=[] bindings=[('cdma1x_reg_state', {[ComSub (Pipeline (Com {[LIT_CHARS dbus_call]} {[DQ [VarSub MM]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM_IMODEM_CDMA][LIT_CHARS .GetRegistrationState]]}) (Com {[LIT_CHARS head]} {[LIT_CHARS -1]}) )]})]) (= scope= flags=0 words=[] bindings=[('evdo_reg_state', {[ComSub (Pipeline (Com {[LIT_CHARS dbus_call]} {[DQ [VarSub MM]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM_IMODEM_CDMA][LIT_CHARS .GetRegistrationState]]}) (Com {[LIT_CHARS tail]} {[LIT_CHARS -1]}) )]})]) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "CDMA:"]]} ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " ESN: "][VarSub esn]]} ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " Registration:"]]} ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " CDMA-1x: "][VarSub cdma1x_reg_state]]} ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " EVDO: "][VarSub evdo_reg_state]]} ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " ServingSystem:"]]} ) (Pipeline (Com {[LIT_CHARS dbus_call]} {[DQ [VarSub MM]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM_IMODEM_CDMA][LIT_CHARS .GetServingSystem]]} ) (Com {[LIT_CHARS unpack_tuple]} {[LIT_CHARS BandClass]} {[LIT_CHARS Band]} {[LIT_CHARS ID]} ) (Com {[LIT_CHARS indent]} {[LIT_CHARS 2]} ) ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " SignalQuality: "][VarSub signal_quality]]} ) ) ) (FunctionDef mm_modem_properties [] (List (= scope= flags=0 words=[] bindings=[('modem', {[DQ [VarSub 1]]})]) (= scope= flags=0 words=[] bindings=[('modem_type', {[ComSub (Com {[LIT_CHARS dbus_property]} {[DQ [VarSub MM]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM_IMODEM]]} {[LIT_CHARS Type]})]})]) (Com {[LIT_CHARS echo]} ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Modem "][VarSub modem][LIT_CHARS ":"]]} ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " GetStatus:"]]} ) (Pipeline (Com {[LIT_CHARS dbus_call]} {[DQ [VarSub MM]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM_IMODEM_SIMPLE][LIT_CHARS .GetStatus]]} ) (Com {[LIT_CHARS format_dbus_dict]} ) (Com {[LIT_CHARS indent]} {[LIT_CHARS 2]} ) ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " GetInfo:"]]} ) (Pipeline (Com {[LIT_CHARS dbus_call]} {[DQ [VarSub MM]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM_IMODEM][LIT_CHARS .GetInfo]]} ) (Com {[LIT_CHARS unpack_tuple]} {[LIT_CHARS Manufacturer]} {[LIT_CHARS Modem]} {[LIT_CHARS Version]} ) (Com {[LIT_CHARS indent]} {[LIT_CHARS 2]} ) ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " Properties:"]]} ) (Pipeline (Com {[LIT_CHARS dbus_properties]} {[DQ [VarSub MM]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM_IMODEM]]} ) (Com {[LIT_CHARS format_dbus_dict]} ) (Com {[LIT_CHARS indent]} {[LIT_CHARS 2]} ) ) (Case to_match={[DQ [VarSub modem_type]]}, pat_word_list=[[{[LIT_CHARS 1]}], [{[LIT_CHARS 2]}], [{[LIT_OTHER "*"]}]] (Pipeline (Com {[LIT_CHARS mm_modem_gsm_properties]} {[DQ [VarSub modem]]} ) (Com {[LIT_CHARS indent]} ) ) (Pipeline (Com {[LIT_CHARS mm_modem_cdma_properties]} {[DQ [VarSub modem]]} ) (Com {[LIT_CHARS indent]} ) ) (Com {[LIT_CHARS error]} {[SQ ]} ) ) ) ) (FunctionDef mm_modem_status [] (List (= scope= flags=0 words=[] bindings=[('modem', {[DQ [VarSub 1]]})]) (= scope= flags=0 words=[] bindings=[('property', {[DQ [VarSub 2]]})]) (Pipeline (Com {[LIT_CHARS dbus_call]} {[DQ [VarSub MM]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM_IMODEM_SIMPLE][LIT_CHARS .GetStatus]]} < (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2), > ) (Com {[LIT_CHARS awk]} {[DQ [LIT_CHARS /][\ LIT_ESCAPED_CHAR "\\/"][VarSub property][LIT_CHARS "/ { print "][\ LIT_ESCAPED_CHAR "\\$"][LIT_CHARS "2 }"]]} ) ) ) ) (FunctionDef mm_modem_activation_state [] (List (= scope= flags=0 words=[] bindings=[('modem', {[DQ [VarSub 1]]})]) (Com {[LIT_CHARS mm_modem_status]} {[DQ [VarSub modem]]} {[LIT_CHARS activation_state]} ) ) ) (FunctionDef mm_modems [] (Pipeline (Com {[LIT_CHARS dbus_call]} {[DQ [VarSub MM]]} {[DQ [VarSub MM_OBJECT]]} {[DQ [VarSub MM_IMANAGER][LIT_CHARS .EnumerateDevices]]} < (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2), > ) (Com {[LIT_CHARS awk]} {[SQ ]} ) ) ) (FunctionDef is_mm_modem [] (List (= scope= flags=0 words=[] bindings=[('modem', {[DQ [VarSub 1]]})]) (Com {[LIT_CHARS test]} {[ComSub (Com {[LIT_CHARS expr]} {[LIT_CHARS match]} {[DQ [VarSub modem]]} {[DQ [VarSub MM_OBJECT][LIT_CHARS /]]})]} {[LIT_CHARS -gt]} {[LIT_CHARS 0]} ) ) ) (= scope= flags=0 words=[] bindings=[('MM1', {[LIT_CHARS org.freedesktop.ModemManager1]})]) (= scope= flags=0 words=[] bindings=[('MM1_OBJECT', {[LIT_CHARS /org/freedesktop/ModemManager1]})]) (= scope= flags=0 words=[] bindings=[('MM1_IMANAGER', {[LIT_CHARS org.freedesktop.ModemManager1]})]) (= scope= flags=0 words=[] bindings=[('MM1_IMODEM', {[VarSub MM1_IMANAGER] [LIT_CHARS .Modem]})]) (= scope= flags=0 words=[] bindings=[('MM1_IMODEM_SIMPLE', {[VarSub MM1_IMODEM] [LIT_CHARS .Simple]})]) (= scope= flags=0 words=[] bindings=[('MM1_IMODEM_3GPP', {[VarSub MM1_IMODEM] [LIT_CHARS .Modem3gpp]})]) (= scope= flags=0 words=[] bindings=[('MM1_IMODEM_CDMA', {[VarSub MM1_IMODEM] [LIT_CHARS .ModemCdma]})]) (= scope= flags=0 words=[] bindings=[('MM1_ISIM', {[VarSub MM1_IMANAGER] [LIT_CHARS .Sim]})]) (FunctionDef mm1_modem_sim [] (Com {[LIT_CHARS dbus_property]} {[DQ [VarSub MM1]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM1_IMODEM]]} {[LIT_CHARS Sim]} ) ) (FunctionDef mm1_modem_properties [] (List (= scope= flags=0 words=[] bindings=[('modem', {[DQ [VarSub 1]]})]) (= scope= flags=0 words=[] bindings=[('sim', {[ComSub (Com {[LIT_CHARS mm1_modem_sim]} {[DQ [VarSub modem]]})]})]) (Com {[LIT_CHARS echo]} ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Modem "][VarSub modem][LIT_CHARS ":"]]} ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " GetStatus:"]]} ) (Pipeline (Com {[LIT_CHARS dbus_call]} {[DQ [VarSub MM1]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM1_IMODEM_SIMPLE][LIT_CHARS .GetStatus]]} ) (Com {[LIT_CHARS format_dbus_dict]} ) (Com {[LIT_CHARS indent]} {[LIT_CHARS 2]} ) ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " Properties:"]]} ) (Pipeline (Com {[LIT_CHARS dbus_properties]} {[DQ [VarSub MM1]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM1_IMODEM]]} ) (Com {[LIT_CHARS format_dbus_dict]} ) (Com {[LIT_CHARS indent]} {[LIT_CHARS 2]} ) ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " 3GPP:"]]} ) (Pipeline (Com {[LIT_CHARS dbus_properties]} {[DQ [VarSub MM1]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM1_IMODEM_3GPP]]} ) (Com {[LIT_CHARS format_dbus_dict]} ) (Com {[LIT_CHARS indent]} {[LIT_CHARS 2]} ) ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " CDMA:"]]} ) (Pipeline (Com {[LIT_CHARS dbus_properties]} {[DQ [VarSub MM1]]} {[DQ [VarSub modem]]} {[DQ [VarSub MM1_IMODEM_CDMA]]} ) (Com {[LIT_CHARS format_dbus_dict]} ) (Com {[LIT_CHARS indent]} {[LIT_CHARS 2]} ) ) (If (Com {[LIT_DBRACKET_LIKE "["]} {[DQ [VarSub sim transform_ops=[(#len)]]]} {[LIT_CHARS -gt]} {[LIT_CHARS 1]} {[LIT_DBRACKET_LIKE "]"]} ) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS " SIM "][VarSub sim][LIT_CHARS ":"]]} ) (Pipeline (Com {[LIT_CHARS dbus_properties]} {[DQ [VarSub MM1]]} {[DQ [VarSub sim]]} {[DQ [VarSub MM1_ISIM]]} ) (Com {[LIT_CHARS format_dbus_dict]} ) (Com {[LIT_CHARS indent]} {[LIT_CHARS 2]} ) ) ) ) ) ) (FunctionDef mm1_modems [] (Pipeline (Com {[LIT_CHARS mmcli]} {[LIT_CHARS -L]} < (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2), > ) (Com {[LIT_CHARS awk]} {[SQ ]} ) ) ) (FunctionDef is_mm1_modem [] (List (= scope= flags=0 words=[] bindings=[('modem', {[DQ [VarSub 1]]})]) (Com {[LIT_CHARS test]} {[ComSub (Com {[LIT_CHARS expr]} {[LIT_CHARS match]} {[DQ [VarSub modem]]} {[DQ [VarSub MM1_OBJECT][LIT_CHARS /]]})]} {[LIT_CHARS -gt]} {[LIT_CHARS 0]} ) ) ) (= scope= flags=0 words=[] bindings=[('MASKED_PROPERTIES', {[DQ [LIT_CHARS "DeviceIdentifier|EquipmentIdentifier|OwnNumbers|ESN|MEID|IMEI|IMSI|SimIdentifier|MDN|MIN|payment_url_postdata"]]})]) (FunctionDef mask_modem_properties [] (Com {[LIT_CHARS sed]} {[LIT_CHARS -E]} {[DQ [LIT_CHARS s/][\ LIT_ESCAPED_CHAR "\\<"][LIT_CHARS "("][VarSub MASKED_PROPERTIES][LIT_CHARS "): (.+)/"][\ LIT_ESCAPED_CHAR "\\1"][LIT_CHARS ": *** MASKED ***/i"]]} ) ) (FunctionDef all_modem_status [] (List (For modem [{[ComSub (Com {[LIT_CHARS mm_modems]})]}]) (Com {[LIT_CHARS mm_modem_properties]} {[DQ [VarSub modem]]} ) ) (For modem [{[ComSub (Com {[LIT_CHARS mm1_modems]})]}]) (Com {[LIT_CHARS mm1_modem_properties]} {[DQ [VarSub modem]]} ) ) ) ) (FunctionDef default_modem [] (List (= scope= flags=0 words=[] bindings=[('modem', {[ComSub (Pipeline (Com {[LIT_CHARS mm_modems]}) (Com {[LIT_CHARS head]} {[LIT_CHARS -1]}) )]})]) (AndOr OP_AND_IF (Com {[LIT_DBRACKET_LIKE "["]} {[LIT_CHARS -z]} {[DQ [VarSub modem]]} {[LIT_DBRACKET_LIKE "]"]} ) (= scope= flags=0 words=[] bindings=[('modem', {[ComSub (Pipeline (Com {[LIT_CHARS mm1_modems]}) (Com {[LIT_CHARS head]} {[LIT_CHARS -1]}) )]})]) ) (Com {[LIT_CHARS echo]} {[DQ [VarSub modem]]} ) ) ) (FunctionDef modem_managers [] (Pipeline (Com {[LIT_CHARS dbus_call]} {[LIT_CHARS org.freedesktop.DBus]} {[LIT_CHARS /org/freedesktop/DBus]} {[LIT_CHARS org.freedesktop.DBus.ListNames]} ) (Com {[LIT_CHARS awk]} {[SQ ]} ) ) ) (FunctionDef set_modem_manager_logging [] (List (= scope= flags=0 words=[] bindings=[('manager', {[DQ [VarSub 1]]})]) (= scope= flags=0 words=[] bindings=[('level', {[DQ [VarSub 2]]})]) (Case to_match={[DQ [VarSub manager]]}, pat_word_list=[[{[LIT_CHARS org.chromium.ModemManager]}], [{[LIT_CHARS org.freedesktop.ModemManager1]}], [{[LIT_OTHER "*"]}]] (Com {[LIT_CHARS dbus_call]} {[DQ [VarSub manager]]} {[DQ [VarSub MM_OBJECT]]} {[DQ [VarSub MM_IMANAGER][LIT_CHARS .SetLogging]]} {[DQ [LIT_CHARS "string:"][VarSub level]]} ) (List (If (Com {[LIT_DBRACKET_LIKE "["]} {[DQ [VarSub level]]} {[LIT_DBRACKET_LIKE "="]} {[DQ [LIT_CHARS error]]} {[LIT_DBRACKET_LIKE "]"]} ) (= scope= flags=0 words=[] bindings=[('level', {[LIT_CHARS err]})]) ) (Com {[LIT_CHARS dbus_call]} {[DQ [VarSub manager]]} {[DQ [VarSub MM1_OBJECT]]} {[DQ [VarSub MM1_IMANAGER][LIT_CHARS .SetLogging]]} {[DQ [LIT_CHARS "string:"][VarSub level]]} ) ) (Com {[LIT_CHARS return]} {[LIT_CHARS 1]} ) ) ) ) )