ELF>~@@USHH˃t[H"HL E1wSH1XZH[]fDH 1ҾnHL E1nu.H[]HtktKL E1tH1[H]HHthu}H[]fDH 1ҾtHH=[]HA1Ҿw[H H=]DHI1Ҿq[H H=]DHL E1qUAWLH=H[@1E1>L HH[fSHH[ff.ATIUHSHHt>ƅLE1HAĸEu[]A\f.fH=tft:HATHHHDL 1E1SXZHH1[]A\fHELLEH 11H=븐H=tNtH1SL E1HY1^wfD1IH 1ҾH=1KfATAUHSHHt.ƅDHAĸEu[]A\ffH=tft:HATHHHDL 1E1SXZHH1[]A\fHELLEH 11H=븐H=tNtH1SL E1HY1^wfD1IH 1ҾH=1KfATIUHSHHt.ƅLHAĸEu[]A\ffH=tft:HATHHHDL 1E1SXZHH1[]A\fHELLEH 11H=븐H=tNtH1SL E1HY1^wfD1IH 1ҾH=1KfATUHSHHt1ƅHAĸEu[]A\fH=tft:HATHHHDL 1E1SXZHH1[]A\fHELLEH 11H=븐H=tNtH1SL E1HY1^wfD1IH 1ҾH=1KfATIUH(SH_fDH;HH9uI|$ÅtH=t&uA[LH5]A\I|$A1ҾIH H=1I|$HE1L P1SXZfAWAVAUATUSH(H(T$HL$ H=I^H=H=lHL11AL$$L=I$L56uULLADtqIHtbH=uIH 1Lm1HL1E1ATmL XZ{|$L$$@HH=I<$It$ÅI|$t%H=tI|$11LD$H5t/H=RH|$Hl$I|$E1L-HLM H|$ÃdH=xH\$HHH|$H=@LHE1ZP1L HY^\HHE1PL 1YHH=_AXH 1ҾZIH=1HL E11SXHH=AYAZrL1ҾY1H H=af.H 1Ҿ}1H=lH|$1Ll$LLH|$Y@E1@"l$ H=C@GHcHL5L, IELAUe(H=uM$AH 1ҾL1I~HHHL E1SH1XZ`SE1L A4$L1_AX11H5EH= E1{1L Hof11H5U"H=E1u1L HfH=bH5LE1H(L[]A\A]A^A_IH 11XH=.@H=I|$HE1L PH1USH eDHI|$E1H-HÅtQH=tKH1UL E1HY^H|$1HH=H=PH5LYÃet4H=Hj1AHL E11t$HA[[5E11L HHL E11SH]A]jDM$AH 1ҾH=1AMH 1ҾFH=1E1}1L HSL E1A4$1HA[A^SE1L AUFH1_AXVH 1Ҿ1H=LD$H 11H=AH 11H=I|$HADCPH 1ҾH=1AYAZEt I|$HIl$LHHI9L+I|$E1HLtH=sHL E1AUM$H 11H=4HL A4$E1M$H 11,H=IH 1Ҿ{1H=H 1Ҿu1H=8H|$Ll$LLH|$dl$ E1MH 11H=LM$H 11H=IH 11H=4HA4$1E1L HA_XGH[I|$L E1PS HA4$1E1,HL XZH 1Ҿ 1H=H=HL E11AU?HAYAZAH 1ҾH=E1 1L HGMH 11?H=?I|$A1ҾIH H=17HtHt]ui|$ H=HL E1jFAH 1ҾH=H1SL E1HY^dA1Ҿ1H H=LOpened database db.c%s Closed database Unknown %d (%d) %s BEGIN TRANSACTIONDROP TABLE old_auc_3gPRAGMA user_version = 7COMMITPRAGMA user_version = 6PRAGMA user_version = 5PRAGMA user_version = 4DROP TABLE subscriberDROP TABLE subscriber_backupPRAGMA user_version = 3PRAGMA user_version = 2PRAGMA user_version = 1#1db.c:235struct db_contextusing database: %s 3.40.1SQLite3 compiled with '%s' ENABLE_SQLLOGUnable to open DB; rc = %d db.c:643PRAGMA user_versionsubscriberCannot bootstrap database Unable to prepare SQL statement '%s' SQL error: (%d) %s, during stmt '%s'ALTER TABLE auc_3g RENAME TO old_auc_3gCREATE TABLE auc_3g ( subscriber_id INTEGER PRIMARY KEY, -- subscriber.id algo_id_3g INTEGER NOT NULL, -- enum osmo_auth_algo value k VARCHAR(64) NOT NULL, -- hex string: subscriber's secret key (128/256bit) op VARCHAR(64), -- hex string: operator's secret key (128/256bit) opc VARCHAR(64), -- hex string: derived from OP and K (128/256bit) sqn INTEGER NOT NULL DEFAULT 0, -- sequence number of key usage -- nr of index bits at lower SQN end ind_bitlen INTEGER NOT NULL DEFAULT 5 );INSERT INTO auc_3g SELECT subscriber_id, algo_id_3g, k, op, opc,sqn, ind_bitlen FROM old_auc_3gUnable to update HLR database schema to version 7 CREATE TABLE ind ( -- 3G auth IND pool to be used for this VLR ind INTEGER PRIMARY KEY, -- VLR identification, usually the GSUP source_name vlr TEXT NOT NULL, UNIQUE (vlr) )Unable to update HLR database schema to version 6 ALTER TABLE subscriber ADD COLUMN vlr_via_proxy VARCHARALTER TABLE subscriber ADD COLUMN sgsn_via_proxy VARCHARUnable to update HLR database schema to version 5 ALTER TABLE subscriber ADD COLUMN last_lu_seen_ps TIMESTAMP default NULLUnable to update HLR database schema to version 4 CREATE TEMPORARY TABLE subscriber_backup( -- OsmoHLR's DB scheme is modelled roughly after TS 23.008 version 13.3.0 id INTEGER PRIMARY KEY, -- Chapter 2.1.1.1 imsi VARCHAR(15) UNIQUE NOT NULL, -- Chapter 2.1.2 msisdn VARCHAR(15) UNIQUE, -- Chapter 2.2.3: Most recent / current IMEISV imeisv VARCHAR, -- Chapter 2.1.9: Most recent / current IMEI imei VARCHAR(14), -- Chapter 2.4.5 vlr_number VARCHAR(15), -- Chapter 2.4.6 msc_number VARCHAR(15), -- Chapter 2.4.8.1 sgsn_number VARCHAR(15), -- Chapter 2.13.10 sgsn_address VARCHAR, -- Chapter 2.4.8.2 ggsn_number VARCHAR(15), -- Chapter 2.4.9.2 gmlc_number VARCHAR(15), -- Chapter 2.4.23 smsc_number VARCHAR(15), -- Chapter 2.4.24 periodic_lu_tmr INTEGER, -- Chapter 2.13.115 periodic_rau_tau_tmr INTEGER, -- Chapter 2.1.1.2: network access mode nam_cs BOOLEAN NOT NULL DEFAULT 1, nam_ps BOOLEAN NOT NULL DEFAULT 1, -- Chapter 2.1.8 lmsi INTEGER, -- The below purged flags might not even be stored non-volatile, -- refer to TS 23.012 Chapter 3.6.1.4 -- Chapter 2.7.5 ms_purged_cs BOOLEAN NOT NULL DEFAULT 0, -- Chapter 2.7.6 ms_purged_ps BOOLEAN NOT NULL DEFAULT 0, -- Timestamp of last location update seen from subscriber -- The value is a string which encodes a UTC timestamp in granularity of seconds. last_lu_seen TIMESTAMP default NULL ) INSERT INTO subscriber_backup SELECT id,imsi,msisdn,imeisv,imei,vlr_number,hlr_number,sgsn_number,sgsn_address,ggsn_number,gmlc_number,smsc_number,periodic_lu_tmr,periodic_rau_tau_tmr,nam_cs,nam_ps,lmsi,ms_purged_cs,ms_purged_ps,last_lu_seen FROM subscriberCREATE TABLE subscriber( -- OsmoHLR's DB scheme is modelled roughly after TS 23.008 version 13.3.0 id INTEGER PRIMARY KEY, -- Chapter 2.1.1.1 imsi VARCHAR(15) UNIQUE NOT NULL, -- Chapter 2.1.2 msisdn VARCHAR(15) UNIQUE, -- Chapter 2.2.3: Most recent / current IMEISV imeisv VARCHAR, -- Chapter 2.1.9: Most recent / current IMEI imei VARCHAR(14), -- Chapter 2.4.5 vlr_number VARCHAR(15), -- Chapter 2.4.6 msc_number VARCHAR(15), -- Chapter 2.4.8.1 sgsn_number VARCHAR(15), -- Chapter 2.13.10 sgsn_address VARCHAR, -- Chapter 2.4.8.2 ggsn_number VARCHAR(15), -- Chapter 2.4.9.2 gmlc_number VARCHAR(15), -- Chapter 2.4.23 smsc_number VARCHAR(15), -- Chapter 2.4.24 periodic_lu_tmr INTEGER, -- Chapter 2.13.115 periodic_rau_tau_tmr INTEGER, -- Chapter 2.1.1.2: network access mode nam_cs BOOLEAN NOT NULL DEFAULT 1, nam_ps BOOLEAN NOT NULL DEFAULT 1, -- Chapter 2.1.8 lmsi INTEGER, -- The below purged flags might not even be stored non-volatile, -- refer to TS 23.012 Chapter 3.6.1.4 -- Chapter 2.7.5 ms_purged_cs BOOLEAN NOT NULL DEFAULT 0, -- Chapter 2.7.6 ms_purged_ps BOOLEAN NOT NULL DEFAULT 0, -- Timestamp of last location update seen from subscriber -- The value is a string which encodes a UTC timestamp in granularity of seconds. last_lu_seen TIMESTAMP default NULL ) INSERT INTO subscriber SELECT id,imsi,msisdn,imeisv,imei,vlr_number,msc_number,sgsn_number,sgsn_address,ggsn_number,gmlc_number,smsc_number,periodic_lu_tmr,periodic_rau_tau_tmr,nam_cs,nam_ps,lmsi,ms_purged_cs,ms_purged_ps,last_lu_seen FROM subscriber_backupUnable to update HLR database schema to version 3 ALTER TABLE subscriber ADD COLUMN imei VARCHAR(14)Unable to update HLR database schema to version 2 ALTER TABLE subscriber ADD COLUMN last_lu_seen TIMESTAMP default NULLUnable to update HLR database schema to version 1 Error composing SQL, cannot bind parameter '%s' Error binding text to SQL parameter %s: %d Error binding int64 to SQL parameter %s: %d Error binding NULL to SQL parameter %s: %d Couldn't close database: (rc=%d) %s Compiled against SQLite3 lib version %s Running with SQLite3 lib version %s Unable to set SQLite3 error log callback Unable to set SQLite3 SQL log callback Not setting SQL log callback: SQLite3 compiled without support for it Unable to enable SQLite3 extended result codes PRAGMA journal_mode=WAL; PRAGMA synchonous = NORMAL;Unable to set Write-Ahead Logging: %s SQL statement '%s' failed: %d Unable to read user version number from database '%s' SELECT name FROM sqlite_master WHERE type='table' AND name=?Table 'subscriber' not found in database '%s' Missing database tables detected; Bootstrapping database '%s' Failed to bootstrap DB: (rc=%d) %s Database '%s' has HLR DB schema version %d Failed to upgrade HLR DB schema to version %d: (rc=%d) %s Database '%s' has been upgraded to HLR DB schema version %d HLR DB schema version %d is outdated Not upgrading HLR database to schema version %d; use the --db-upgrade option to allow HLR database upgrades HLR DB schema version %d is unknown SELECT id,imsi,msisdn,imei,vlr_number,sgsn_number,sgsn_address,periodic_lu_tmr,periodic_rau_tau_tmr,nam_cs,nam_ps,lmsi,ms_purged_cs,ms_purged_ps,last_lu_seen,last_lu_seen_ps,vlr_via_proxy,sgsn_via_proxy FROM subscriber;SELECT id,imsi,msisdn,imei,vlr_number,sgsn_number,sgsn_address,periodic_lu_tmr,periodic_rau_tau_tmr,nam_cs,nam_ps,lmsi,ms_purged_cs,ms_purged_ps,last_lu_seen,last_lu_seen_ps,vlr_via_proxy,sgsn_via_proxy FROM subscriber WHERE last_lu_seen IS NOT NULL ORDER BY last_lu_seen;SELECT id,imsi,msisdn,imei,vlr_number,sgsn_number,sgsn_address,periodic_lu_tmr,periodic_rau_tau_tmr,nam_cs,nam_ps,lmsi,ms_purged_cs,ms_purged_ps,last_lu_seen,last_lu_seen_ps,vlr_via_proxy,sgsn_via_proxy FROM subscriber WHERE msisdn LIKE $search ORDER BY msisdnSELECT id,imsi,msisdn,imei,vlr_number,sgsn_number,sgsn_address,periodic_lu_tmr,periodic_rau_tau_tmr,nam_cs,nam_ps,lmsi,ms_purged_cs,ms_purged_ps,last_lu_seen,last_lu_seen_ps,vlr_via_proxy,sgsn_via_proxy FROM subscriber WHERE imsi LIKE $search ORDER BY imsiSELECT id,imsi,msisdn,imei,vlr_number,sgsn_number,sgsn_address,periodic_lu_tmr,periodic_rau_tau_tmr,nam_cs,nam_ps,lmsi,ms_purged_cs,ms_purged_ps,last_lu_seen,last_lu_seen_ps,vlr_via_proxy,sgsn_via_proxy FROM subscriber WHERE imei LIKE $search ORDER BY imeiSELECT id,imsi,msisdn,imei,vlr_number,sgsn_number,sgsn_address,periodic_lu_tmr,periodic_rau_tau_tmr,nam_cs,nam_ps,lmsi,ms_purged_cs,ms_purged_ps,last_lu_seen,last_lu_seen_ps,vlr_via_proxy,sgsn_via_proxy FROM subscriber WHERE nam_cs = $search ORDER BY last_lu_seenSELECT id,imsi,msisdn,imei,vlr_number,sgsn_number,sgsn_address,periodic_lu_tmr,periodic_rau_tau_tmr,nam_cs,nam_ps,lmsi,ms_purged_cs,ms_purged_ps,last_lu_seen,last_lu_seen_ps,vlr_via_proxy,sgsn_via_proxy FROM subscriber WHERE nam_ps = $search ORDER BY last_lu_seenSELECT id,imsi,msisdn,imei,vlr_number,sgsn_number,sgsn_address,periodic_lu_tmr,periodic_rau_tau_tmr,nam_cs,nam_ps,lmsi,ms_purged_cs,ms_purged_ps,last_lu_seen,last_lu_seen_ps,vlr_via_proxy,sgsn_via_proxy FROM subscriber WHERE imsi = ?SELECT id,imsi,msisdn,imei,vlr_number,sgsn_number,sgsn_address,periodic_lu_tmr,periodic_rau_tau_tmr,nam_cs,nam_ps,lmsi,ms_purged_cs,ms_purged_ps,last_lu_seen,last_lu_seen_ps,vlr_via_proxy,sgsn_via_proxy FROM subscriber WHERE msisdn = ?SELECT id,imsi,msisdn,imei,vlr_number,sgsn_number,sgsn_address,periodic_lu_tmr,periodic_rau_tau_tmr,nam_cs,nam_ps,lmsi,ms_purged_cs,ms_purged_ps,last_lu_seen,last_lu_seen_ps,vlr_via_proxy,sgsn_via_proxy FROM subscriber WHERE id = ?SELECT id,imsi,msisdn,imei,vlr_number,sgsn_number,sgsn_address,periodic_lu_tmr,periodic_rau_tau_tmr,nam_cs,nam_ps,lmsi,ms_purged_cs,ms_purged_ps,last_lu_seen,last_lu_seen_ps,vlr_via_proxy,sgsn_via_proxy FROM subscriber WHERE imei = ?UPDATE subscriber SET vlr_number = $number, vlr_via_proxy = $proxy WHERE id = $subscriber_idUPDATE subscriber SET sgsn_number = $number, sgsn_via_proxy = $proxy WHERE id = $subscriber_idUPDATE subscriber SET imei = $imei WHERE imsi = $imsiSELECT id, algo_id_2g, ki, algo_id_3g, k, op, opc, sqn, ind_bitlen FROM subscriber LEFT JOIN auc_2g ON auc_2g.subscriber_id = subscriber.id LEFT JOIN auc_3g ON auc_3g.subscriber_id = subscriber.id WHERE imsi = $imsiUPDATE auc_3g SET sqn = $sqn WHERE subscriber_id = $subscriber_idUPDATE subscriber SET ms_purged_cs = $val WHERE imsi = $imsiUPDATE subscriber SET ms_purged_ps = $val WHERE imsi = $imsiUPDATE subscriber SET nam_ps = $val WHERE imsi = $imsiUPDATE subscriber SET nam_cs = $val WHERE imsi = $imsiINSERT INTO subscriber (imsi, nam_cs, nam_ps) VALUES ($imsi, $nam_cs, $nam_ps)DELETE FROM subscriber WHERE id = $subscriber_idUPDATE subscriber SET msisdn = $msisdn WHERE imsi = $imsiUPDATE subscriber SET msisdn = NULL WHERE imsi = $imsiINSERT INTO auc_2g (subscriber_id, algo_id_2g, ki) VALUES($subscriber_id, $algo_id_2g, $ki)DELETE FROM auc_2g WHERE subscriber_id = $subscriber_idINSERT INTO auc_3g (subscriber_id, algo_id_3g, k, op, opc, ind_bitlen) VALUES($subscriber_id, $algo_id_3g, $k, $op, $opc, $ind_bitlen)DELETE FROM auc_3g WHERE subscriber_id = $subscriber_idUPDATE subscriber SET last_lu_seen = datetime($val, 'unixepoch') WHERE id = $subscriber_idUPDATE subscriber SET last_lu_seen_ps = datetime($val, 'unixepoch') WHERE id = $subscriber_idSELECT 1 FROM subscriber WHERE imsi = $imsiSELECT 1 FROM subscriber WHERE msisdn = $msisdnINSERT INTO ind (vlr) VALUES ($vlr)SELECT ind FROM ind WHERE vlr = $vlrDELETE FROM ind WHERE vlr = $vlrCREATE TABLE subscriber ( -- OsmoHLR's DB scheme is modelled roughly after TS 23.008 version 13.3.0 id INTEGER PRIMARY KEY, -- Chapter 2.1.1.1 imsi VARCHAR(15) UNIQUE NOT NULL, -- Chapter 2.1.2 msisdn VARCHAR(15) UNIQUE, -- Chapter 2.2.3: Most recent / current IMEISV imeisv VARCHAR, -- Chapter 2.1.9: Most recent / current IMEI imei VARCHAR(14), -- Chapter 2.4.5 vlr_number VARCHAR(15), -- Chapter 2.4.6 msc_number VARCHAR(15), -- Chapter 2.4.8.1 sgsn_number VARCHAR(15), -- Chapter 2.13.10 sgsn_address VARCHAR, -- Chapter 2.4.8.2 ggsn_number VARCHAR(15), -- Chapter 2.4.9.2 gmlc_number VARCHAR(15), -- Chapter 2.4.23 smsc_number VARCHAR(15), -- Chapter 2.4.24 periodic_lu_tmr INTEGER, -- Chapter 2.13.115 periodic_rau_tau_tmr INTEGER, -- Chapter 2.1.1.2: network access mode nam_cs BOOLEAN NOT NULL DEFAULT 1, nam_ps BOOLEAN NOT NULL DEFAULT 1, -- Chapter 2.1.8 lmsi INTEGER, -- The below purged flags might not even be stored non-volatile, -- refer to TS 23.012 Chapter 3.6.1.4 -- Chapter 2.7.5 ms_purged_cs BOOLEAN NOT NULL DEFAULT 0, -- Chapter 2.7.6 ms_purged_ps BOOLEAN NOT NULL DEFAULT 0, -- Timestamp of last location update seen from subscriber -- The value is a string which encodes a UTC timestamp in granularity of seconds. last_lu_seen TIMESTAMP default NULL, last_lu_seen_ps TIMESTAMP default NULL, -- When a LU was received via a proxy, that proxy's hlr_number is stored here, -- while vlr_number reflects the MSC on the far side of that proxy. vlr_via_proxy VARCHAR, sgsn_via_proxy VARCHAR ) CREATE TABLE subscriber_apn ( subscriber_id INTEGER, -- subscriber.id apn VARCHAR(256) NOT NULL ) CREATE TABLE subscriber_multi_msisdn ( -- Chapter 2.1.3 subscriber_id INTEGER, -- subscriber.id msisdn VARCHAR(15) NOT NULL ) CREATE TABLE auc_2g ( subscriber_id INTEGER PRIMARY KEY, -- subscriber.id algo_id_2g INTEGER NOT NULL, -- enum osmo_auth_algo value ki VARCHAR(32) NOT NULL -- hex string: subscriber's secret key (128bit) ) CREATE TABLE auc_3g ( subscriber_id INTEGER PRIMARY KEY, -- subscriber.id algo_id_3g INTEGER NOT NULL, -- enum osmo_auth_algo value k VARCHAR(64) NOT NULL, -- hex string: subscriber's secret key (128/256bit) op VARCHAR(64), -- hex string: operator's secret key (128/256bit) opc VARCHAR(64), -- hex string: derived from OP and K (128/256bit) sqn INTEGER NOT NULL DEFAULT 0, -- sequence number of key usage -- nr of index bits at lower SQN end ind_bitlen INTEGER NOT NULL DEFAULT 5 ) CREATE TABLE ind ( -- 3G auth IND pool to be used for this VLR ind INTEGER PRIMARY KEY, -- VLR identification, usually the GSUP source_name vlr TEXT NOT NULL, UNIQUE (vlr) ) CREATE UNIQUE INDEX idx_subscr_imsi ON subscriber (imsi) -- Set HLR database schema version number -- Note: This constant is currently duplicated in src/db.c and must be kept in sync! PRAGMA user_version = 7 =<     &. =int,w ww> kQC?&<&<&&$13d6 7 8 9 : (; 0< 8= @@ HA PB XD`FhHdpIdtJ ~xM5NJOQY [\]^ _ `db@+CC  A  - 0=,d[d[[ 'rg f r  $ . 0 06(3 %cat < <   B D$ p  $      p-< -< =$8 W7ctx \=lC x,dW60 1 4d 6 9X < `><@< B< D< F< H<  KdCJh t    C C - O 'Dvty3 l.<-.<!O.<(k N%outP  Q S V Wd Xd [%vty\ _%rb` c# d( e f# iC%rawj C E M!Tk!Y!]!a!g!k-CI'<'d<ddF<> /DDB/DSS/DLU-< &       !"#G( 2[  37db 4  5[ k k C"w Cp 0   C"05 ,  ,d  &  C8-  d) k d d@ k idk dk k #'d 1   d 8[ d d Md   d d23 d5 3 K d Og H  a 3d  I  ad  6d k d k d d1 k d+ dR k dd d} k ddr1  d<dd2 d d<1  dd2 'dk  Qdk 1d3k IO !JctxO"434?C4[C(dbcQ (iR<(rcSd)TC)Ud)VC8K9(oj nU1T1 U|T~5 Us UT mQ0R X|} U1T1QR mX0Y 9})  LU1T5L`U| U~T Q0R Ys} U1T5Q~R X0Y  U1T7 } 6U1T7Q~R X0Y   U~T Q0R XsYv! !!!!!l1J]y1Us0UsHU}U}@ T}Q RvX0 )  U1T7  T0  UT FQ0R X}Ys} XU1T7QR FX0Y  tU1T7} U1T7QR ?X0Y  UT ?Q0R X}#A##+#####Ml1"y1U}U}@ TvQ RX0 U1T7} IU1T7QR X0Y .mT0Q  )  UT Q0R Xv U1T1 UT ,Q0R } U1T1QR ,X0Y #8$ $$U|T Q8 U1T7 U T Q0R } U1T7Q R X0Y s eUUT (Q  U1T5 U1T3 U1T3K U|TT U1T1 T| #T1 ?U1T7 oT Q0R0X U1T7  U1T7&U| g } U1T3Q R ZX0Y } ]U1T3Q R YX0Y  g  U T ZQ0R } U1T5Q R XX0Y  )U T YQ0R X  ZUT }Q0R  vU1T5 U1T7} U1T7Q  UET Q0 U1T5} ;U1T5QR {X0Y  dU@T Q0 U1T5} U1T5QR uX0Y  U1T7 U|T  :U T XQ0R Xs VU1T5} U1T7QR X0Y } U1T7QR X0Y } U1T7QR X0Y  EU T Q0R Ys} U1T1QR }X0Y } U1T5Q R X0Y  UT Q0R  $UT Q0R  [UT Q0R Xs p @ T}Q RvX0 U1T7 UT Q0R  UT {Q0R  @UT uQ0R  ~U T Q0R X} UT Q0R } U1T5QR X0Y   U1T7  Q U T Q0R Xs  U T Q0R Xs U1T5 U1T7 !U T Q0R Xs} T!U1T5Q R X0Y  U T Q0R X77 d!dbc73 9:k ;drc;d d"dbc- rcd""C dR"dbc- rcdR"b"C d"dbc- rcd""C d"dbc- rcdR"T d#dbcT- rcVd##CD dR#dbcD- rcFdGR"4d#dbc4" rc6d7R") C#dbc)6  C#dbc0 NAk rcd d$dbc, rc dO d&"dbc1 J]rcdidP0k #l1%y1 %U~U~ ) @ c%T|Q RX0 %U1T7 %U1T7 } %U1T7Q RX0Y } *&U1T7Q RX0Y  g&U TQ0R X|  U TQ0R XsQ'"dbc" i<rcd  9'U1T7* _'UUT   'U TQ0R Xs } U1T7Q RX0Y +Cn=*!k 3rcdidxd#l1(y1(UvUv (UvTs (Uv )U1T7} Q)U1T7Q RX0Y  )U TQ0R Xss0.(Y| )U1T7} *U1T7Q RX0Y  U TQ0R Xs+Cn,"k 4"nrHrcdidxd#l1+y1+UvUv 7+UvTs U+UvQ| q+U1T7} +U1T7Q RX0Y  ,U TQ0R Xss0.(Y| #,U1T7} d,U1T7Q RX0Y  U TQ0R Xs+Cn. k 2"nrBdrcdidxd#l1z-y1e-UvUv -UvTs1 -UvQ| -U1T7} .U1T7Q RX0Y  h.U TQ0R Xss0.(Y| .U1T7} .U1T7Q RX0Y  U TQ0R Xs+C~l1!k 3Krcdidxd#l1/y1/UvUv /UvTsR #0UvQ|R X0 ?0U1T7} 0U1T7Q RX0Y  0U TQ0R Xss0.(Y| 0U1T7} 21U1T7Q RX0Y  U TQ0R XsR}1:}$k Sj H3"argj#"s3j1jAjKd 2U1T1} 32U1T1Q  O2U1T1 k2U1T1*} 2U1T1Q  2U1T1* 2U * 3U TwQ0R XR5 U TqQ0R XQTe w3;arge%:e.d;msgeDH34U3`3k3#H3+e C4U3k3`3} U1T7Q RgX0Y  _4U1T75 U TgQ0R XTYQ!5!!"! 5! ! " 15U1T7 i5U T &Q0R } U1T7Q R &X0Y $UUTQ7"6.":"E"`" 6." :" E" Z6U1T7 6U T Q0R } U1T7Q R X0Y $UUT`Q2b"8r"~""Pb" 7r" ~" " 7U1T7 7U T Q0R } U1T7Q R X0Y $UUTPQ3"C9"""`" "9" " " 8U1T7 8U T Q0R } U1T7Q R X0Y $UUT`Q2"'m:""#"T K:" " # 9U1T7 :U T Q0R } U1T7Q R X0Y $UUTQ9#;.#:#E#`#D t;.# :# E# :U1T7 4;U T NQ0R } U1T7Q R NX0Y $UUT`Q2R#<b#n#y#`R#4<b# n# y# $<U1T7 \<U T >Q0R } U1T7Q R >X0Y $UUT`Q2Ul1y1<Us5UUI~H}I(  : ; 9 I8  !IH}1B :! ;9 I8 .?: ;9 'I< H} 41 $ > 41B:!; 9 IBI!I/ 1RBUX!YW 4:!;9 I4:!; 9 IB: ; 9 I U.:!;9 'I !:!;9 I4:!;9 I41.1@z&I<: ;9 I :! ;9!I !k  :! ;9!! :! ;9!I":!; 9 IB#1RBX!Y W $ : ; 9!% :! ;9 I8 & :!;!I8 ''(4:!;9 IB)4:!;9 IB*H}+.?:!; 9!'I@z,'I->! !I: ; 9!.>! !I:! ;9!/( 04: ; 9 I1.?: ;9 '<23.?: ; 9 'I<4:!;!9 IB5H}6 :! ;9!7 : ; 9 I8 84:!;9 I9 U::!; 9 I;:!; 9 I<% =$ > > ? : ; @: ; 9 A&B4: ; 9 I?<C I8 D<E : ;9 F> I: ; 9 G : ; 9 H.?: ; 9 'I<I.?: ;9 'I@zJ: ;9 IBK : ;9 LH}M1RBX YW N: ;9 IO.: ; 9 'I@zP4: ; 9 IBQ.?: ; 9 '@zR.?: ; 9 ' S.: ; 9 '@zT.: ; 9 ' U.1@z!"U"AU!!T!#S##T#'T')S)/T/0S0AT!"Q"AQ!"R"AR""P"#\#'')\)///P/0\0A##0#%S)*S-/S55S77088s3%88s3%#88s3%#88s3%9:S:;s3%%%P%%S%%P%&P++P+,P--P..P//P//S00P00V33S44S66P66P77P77S77P77V88P88P99P::P::P<<S>?S"#0#&V')0)*V-/V/0034V55V67V9:V'' *+S++s++s++S+,s,,s,-s00S00s01S44S56S77S== >> ?AS"'0'*0++1,,1-/0/000404506708:0;=0>?0##P##\#$P$$X$$\++}&'\**\45\66\==\>>\&' *- 03 45 56 79 :A '' **P**S&&P&'P''S**P**S45P55S66S==P>>P''S**]02\99\::\;;\<<\01\12\::\;;\01 12 :: ;; 03 99 :: ;= >> >? 11P11S12P22S::S::P::V;;P;;S::]23\==\>>\23P33S==P==S>>SU]U]TTQQ0PSPSe0PSSPS0 vT3% vT3%# vT83%# vT3% vT3%\\\^ U \ U U !\ 0 s|@3% s|H3% P S !P!!SUVUUVU VTSTST SP\\\PPPTVUVUUVUVTSTSTSQ\QQQ\P\\\PPPTVUVUUVUVTSTSTSQ\QQQ\P\\\PPPTVUVUUVUVTSTSTSQ\QQQ\P\\\PPPTV8U8zUzUUUUUUUUUUUU3T3zTzTTTTTTTTTTTT<Q>''**+++,,,--00770299::;;<=02::;;23==>>  ir tXXX   < tt.X tXz.XXXX J   zJ  z  z z  9XXXX Jzt.^zJz z [GX[twz wJX Xw t tw    W/%tXJYKKJ .z .  y> 91~XXXKX  +).X sIX p p/Jq<qX.qXX/ _X"JtT.tT'tD" ttXHJt< JX/ pXJt8.tT't["zzXRz<^zPX/ vX Jtp.tT'tb"ySHQ7OX/ wX Jt8.tT't~ /J t< tX 4t XX/ XJtF.tT't~"ySHQ7OX/ wX Jt8.tT'tc"ySHQ7OX/wX Jt8.tT't~ =[=X H>XX/Y zX_ .Hr.&<h y ..zX-z< J   - ,. H>XX/ zX_ .Hr<.&<R* y ..zX-z< J   - ,. H>XX/ zX_ .Hr<.&< y ..zX-z< J   - ,.  tH>XX/ zX_ .Hr.&< y ..zX-z< J   - ,.  z:L*V^K J     ;T" . 9WJKsK_y=f    f   f     h k. . `   zt L   J    f z <ZXX X  8 i   f    K      K   X/|X    8  3  <  f$   ,  J  f#$GX  zX4|#ft<Vh6   J v u@xRXJv X{ f  < r'  0HK  x.K   .    <f    A | gKJ,N.f f   |    Y Ys. e l  7   x,  -%#XX 7  *, 52]sX+X( Y*tJK  G X }XzX}XW/~MX|XX  7 f }/t_X-*|X, X,XsX .   f  . 3"enable_sqlite_loggingDB_STMT_SET_LAST_LU_SEENdb_openprint_filename_pos_shortbuf_IO_lock_tchardb_is_bootstrapped_v0DB_STMT_AUC_3G_INSERThas_sqlite_config_sqllog_talloc_freesqlite3_open_IO_buf_endtgt_rbloglevelsqlite3_configtgt_gsmtapLOG_FLT_GB_BVC_IO_write_endunsigned intnextversionLOG_TGT_TYPE_FILEdb_remove_resetstmt_flagsprint_ext_timestampprint_tidLOG_FILENAME_PATHprint_category_hexLOG_FILENAME_NONEsd_journalDB_STMT_UPD_PURGE_PS_BY_IMSIsqlite3_db_cacheflushprevsqlite_int64db_upgrade_v1db_upgrade_v2db_upgrade_v3db_upgrade_v4db_upgrade_v5db_upgrade_v6db_upgrade_v7DB_STMT_IND_SELECTdb_bind_textnum_catDDGSMlog_filterLOG_CTX_GB_BVCprint_filenameLOG_FLT_BSC_SUBSCRsqlite3_destructor_typesqlite3_extended_result_codesgp_offset_IO_save_endLOG_TGT_TYPE_SYSTEMDparam_name_IO_codecvtDAUCDMSLOOKUPDB_STMT_SEL_FILTER_MSISDNprint_timestampoverflow_arg_areatable_exists_sqllong long unsigned intDB_STMT_UPD_VLR_BY_IDLOG_FILENAME_POS_HEADER_ENDDB_STMT_AUC_BY_IMSIDB_STMT_AUC_3G_DELETE_IO_backup_base_offsetDB_STMT_SEL_ALL_ORDER_LAST_SEENLOG_TGT_TYPE_STDERR_filenocolorDB_STMT_AUC_UPD_SQNprint_fngsmtap_instprint_categorystatements_countdb_table_existssize_tLOG_TGT_TYPE_GSMTAPlong intint64_tDMAINoutputLOG_TGT_TYPE_VTYDB_STMT_SEL_ALLsql3_sql_log_cbLOG_FILENAME_BASENAME_IO_read_base_BoolDB_STMT_DELETE_MSISDN_BY_IMSIDB_STMT_SEL_BY_MSISDNDB_STMT_UPD_PURGE_CS_BY_IMSILOG_FLT_VLR_SUBSCRDB_STMT_SUBSCR_CREATEDB_STMT_IND_ADDtgt_vtysql3_error_log_cbuser_version_sqltgt_syslogDB_STMT_SEL_BY_ID_talloc_zerofilter_map_modeosmo_wqueuesqlite3_int64sqlite3_close_IO_write_basetext_IO_read_ptrLOG_CTX_L1_SAPIsqlite3_bind_parameter_indexdb_upgrade_func_tdb_closeuint8_terr_codesqlite3_bind_intstatementssqlite3_stmtDB_STMT_AUC_2G_INSERTsqlite3_libversion_freeres_list_IO_wide_datahostname_LOG_FLT_COUNT_IO_markersqlite3_prepare_v2version_changedlong long intdescription_IO_save_baseDB_STMT_SEL_BY_IMEIallow_upgradeupgrade_funcwqueuesqlite3_finalize_markerssqlite3_bind_int64log_ctx_indexstmt_idxstmt_str_freeres_buflog_contextstmt_sqlLOG_TGT_TYPE_STRRBDB_STMT_SET_MSISDN_BY_IMSI__pad5sqlite3_clear_bindingsfacilityLOG_CTX_GB_NSVCfnamedb_run_statementssqlite3logp2_vtable_offsetLOG_TGT_TYPE_EMSCRIPTENprint_filename2db_contextlogp_stublog_info_cat__int64_tlong doublesqlite3_freeLOG_FLT_GB_NSElog_categoryosmo_log_infosqlite3_exectable_nameunsigned charlog_check_level_IO_read_endDB_STMT_EXISTS_BY_MSISDNenabled_LOG_CTX_COUNTshort intDB_STMT_UPD_IMEI_BY_IMSILOG_FILENAME_POS_LINE_ENDDCTRLDB_STMT_UPD_NAM_CS_BY_IMSIDB_STMT_SEL_FILTER_PSpriorityLOG_CTX_VLR_SUBSCRsqlite3_bind_textsqlite3_column_intlog_target_typedb_get_user_versiontalloc_strdupdb_bind_int__va_list_tagDB_STMT_DEL_BY_IDllist_headLOG_FLT_GB_NSVClog_save_filtersfp_offset__uint8_tdb_bind_int64identLOG_CTX_GB_NSEDB_STMT_UPD_NAM_PS_BY_IMSIname_IO_buf_baseGNU C11 12.2.0 -mtune=generic -march=x86-64 -g -O2 -std=gnu11 -fasynchronous-unwind-tablesLOG_TGT_TYPE_SYSLOG_wide_dataLOG_FLT_ALLerr_msg_locklog_infosqlite3_compileoption_getlong unsigned int_old_offset_IO_FILEDGSUPsqlite3_bind_nullreg_save_areaDB_STMT_EXISTS_BY_IMSItgt_filestmt_bootstrap_sqlentrytypecategorieslog_print_filterssqlite3_resetDB_STMT_SEL_BY_IMSI_IO_write_ptrDB_STMT_SEL_FILTER_CSDB_STMT_SET_LAST_LU_SEEN_PSdb_bootstrapDB_STMT_SEL_FILTER_IMEIraw_outputdb_bind_nullDB_STMT_UPD_SGSN_BY_ID_codecvt_NUM_DB_STMTDB_STMT_IND_DELdb_upgrade_pathDB_STMT_SEL_FILTER_IMSIprint_level__off_tsave_fnsigned charfilter_datalog_filter_indexlog_targetshort unsigned intsqlite3_errmsgsqlite3_stepfilter_fnLOG_FLT_L1_SAPILOG_CTX_BSC_SUBSCRdoubleout_freelog_filename_type_chainlog_filename_posnum_cat_userFILE_flags2_cur_columnDB_STMT_AUC_2G_DELETEuse_color_unused2strcmp__off64_t/build/coverity/source-Osmocom/osmo-hlr/srcdb.c/build/coverity/source-Osmocom/osmo-hlr/src/usr/include/x86_64-linux-gnu/bits/usr/lib/gcc/x86_64-linux-gnu/12/include/usr/include/x86_64-linux-gnu/bits/types/usr/include/build/coverity/install-Osmocom/include/osmocom/core../include/osmocom/hlrdb.cdb.ctypes.hstdint-intn.hstdint-uintn.hstddef.hstruct_FILE.hFILE.hsqlite3.hlinuxlist.hlogging.hdb.hdb_bootstrap.hstring.htalloc.hlogging.hGCC: (Debian 12.2.0-14+deb12u1) 12.2.0zRx AAD C(P0Y(A D AAG } AAA k MHH _ AAG R HAE D KOJ D KOJ D(P0pBFB E(A0D8D` 8C0A(B BBBK nhLpRxHI`FhNp\hA`hGp^hA`HADF a AAB A(M0\(A D AAG DIV0dAsPt CE ` CE kC0Ae t CC ` CE kC0Al0y CG ` CE kC0Ae t CC ` CE kC04'As` CD ` CE kC0hAe t CC ` CE kC0Ae t CC ` CE kCALP~BDD x ABK r(n0F(A S ABC Q(M0\(C P@nBDD p ABC r(n0F(A S ABC Q(M0\(C PnBDD p ABC r(n0F(A S ABC Q(M0\(C PnBAD m ABI r(n0F(A S ABC Q(M0\(C 8<BDH I KBE J(M0K(A PxBBB B(A0A8L`&hJp\hA`hIp`hA`IhPphhB`vhMpehB`hPpYhA`NhSpUhB`  8D0A(B BBBH `hKpOxKI`ThMp\hA`hPp]hA`uhMp\hB`hSpZhB`FhQpYhB`~hHp^hB` hQpE i hKpM hDpihA` hApE DhDphhA`OhNp]hB` hQpE chMp\hA`+ %*/A(FK]7bpPu@zpxhR 8xp'8x $* 06<BPV\(b` p2v`|JHxMV|h8X ("(`@;0AGMSXY@bxhn t`z`8    /@ ~<Yk nw0 nn0=[hudb.csql3_sql_log_cb.LC4.LC1.LC0.LC3.LC2db_run_statements.LC6.LC5sql3_error_log_cb.LC7db_upgrade_v7.LC9.LC8.LC11.LC10.LC13.LC12.LC14.LC15db_upgrade_v6.LC17.LC16.LC18db_upgrade_v5.LC20.LC19.LC21.LC22db_upgrade_v4.LC24.LC23.LC25db_upgrade_v3.LC26.LC28.LC27.LC30.LC29.LC31.LC32.LC33db_upgrade_v2.LC35.LC34.LC36db_upgrade_v1.LC38.LC37.LC39.LC40.LC42.LC41.LC43.LC44.LC46.LC45.LC47.LC53.LC52.LC60.LC62.LC51.LC49.LC50.LC48.LC56db_upgrade_path.LC73.LC76.LC55.LC54.LC58.LC72.LC65.LC66stmt_bootstrap_sql.LC61.LC59.LC57.LC71.LC63stmt_sql.LC64.LC67.LC68.LC70.LC69.LC75.LC74osmo_log_infolog_check_levellogp2logp_stubsqlite3_stepsqlite3_clear_bindingssqlite3_resetsqlite3_finalizesqlite3_prepare_v2sqlite3_errmsgdb_remove_resetdb_bind_textsqlite3_bind_parameter_indexsqlite3_bind_textdb_bind_intsqlite3_bind_intdb_bind_int64sqlite3_bind_int64db_bind_nullsqlite3_bind_nulldb_closesqlite3_close_talloc_freedb_open_talloc_zerotalloc_strdupstrcmpsqlite3_compileoption_getsqlite3_opensqlite3_extended_result_codessqlite3_execsqlite3_freesqlite3_libversionsqlite3_column_intsqlite3_configsqlite3_db_cacheflush g9hL\mihhh3Ebi  klmn:oGg]hghp i i .3jEp\ hmjghi,7GNjghj i$0\gnhji (g:hU!chj!i#$gh%#(jJ%Q[it'{()*+,-g-hE.SXjz.i01gh 2  j: 2A K id 4p 5 g h 6  j 6  i% lS sp t g h 7  8 i l m 7) 84 9 jC gU hq 9  i 9  j s v g% h? 7F V :a ik ls m 7 :  j g h 9  i 9 # jC sX x g h 7  : i l m 7 :j#g5hQ9`ei9jszgh7&6;AiKlSmi7y;jgh9i9j0n?|Lg^hm<p=jp=i> g&h5gKhZgph?hg@j3@=ikghghAgh&?BJo\knghlmngh{C i'D7EEOiVgelC}jFigDEjGj)8l@mJnngh_hgI j!g9hLJ\miIighK i1@gVhtL{ighM}Fj g#h8pFNSfiOogh iPr g"h1gGh[_\qghgRiSiT:?iZUhojVjGiUiV".i=SMRjcRsxjTjpNj_<8oCgYhl XjXYjKj Lj-k<lDmNnn ~jZj jZi h2p9[krYwi\jgh iJj2\9CiR bgjvp[jghgh ] ^' , jF ^U Z iw ]~  jiLjojj j. mu}` p ( 0@ H P X ` h p x     ! " 0# # # $ $ (% h% % % (& `& & & 8' p' '  0(( (0 (8 )@ P)H x)P )` )h /p P0x 0 1 3 h4 4 a e  f, f* d1 e 8 ek? eF eo M e7R e^ ` e l eU z e e' eW e_ e e e e e eT e e  e  eW e) e 6 eJC evP e9 ] ej e w e e e e e e ec e e  e e eJ eF  e'- e : e' G eBT eOa en eH{ eG e eT ev e< eP e e  e e e, eZc ex e  e  e e_  e(  e# e eL  e e  e e/& e9 e J e V ec e q eH } e  ek e e e  e/ e e e e  e e|  e  eO  e2  e3  e e% e+ e1 ex 7 eg> e\m e e` e  e= eC e  e e= eq er  e e% e^2 e E eR e _ el ey e#  e7 e  eC  e  e e  e0 eO eq e! e' e . e= eC e|I e4P e_ ee e8  e e eN e  e e  ev  e^$ eF eXU e ` ek ev e e e e e  eH& eM2 e8 eR ? e=N eT e/Z eW` ef e l eG r es x e% ~ e| e e e e e e eq e e e eX e e e e^ e e' ez e e e]  e  e  e ee e e ' e3 5 eN eR e _` eh _@ e e  _ e * eA eq e ek e e e e eP6 eU L e h e/t e0 e e~ eh e e  e2 eS e ~ e e e> e e  e4 e/@c bg b l eu b2y b"~ e bx bt e b b b b b b b b e b b e( b b e b b e> ' e/8 cJ b)N bSoA  c e( bO, bM1Ma  '<j- 7Dg * c bd bX c b b b b b@ b, c b b1<ID^N`-N X2O XYu k x c b bx c* b. b7 b; b@ cI bBM b6_ bc bl8v8 b b@H@ Jdn1{R &  {7 FSP c` bd bi cr b%v b{g_`G-9 \Vf*Ot $@U p* S;T ^ik h  |*Q [w=q2 X<5VeZ (+h;KW 0 Cs6 Fw  V | 0%L\i<] x X"7 (AVo   $ 6 ) B  R z_ t   `   0 ! 8!^ 2!K! 8U! f!! `! e ! e! eR! e(! eW" e" eIF" ec" e;" e" e-" e" e# e# eF# eS# ez# e# ed# e# e # e# eR# ey $ e$$E$ bQI$ bIN$ eX$ bu\$ bqa$ ek$ bo$ b}$ b$ b$ b$ b$ c $ eF$ bz$ bt$ eR$$$ b$ b$ % %,%9%>d%a%%%%% (%  &!& +&7@&X& h&Iu&q&& (& e&& b& b& b& b& b & b'4'C'b:'yV'M`'m''' '''' ' e '( eR( b- #( b (( e12( bq 6( be D( b H( b W( b [( b d(Gn(G( b ( b (O(W((( )E0)H) xR)g)) x)J)))) **-* >* eh G*0 ^* eRh* b l* b q* e1{* bH * b< * b * by * b * b * b * b * * * b * b * + +G 8+\ V+ r+ ++ H+++ H+J,9$,iC,[, e,v,, , e , , eR, b , b , e1, b\ , bP , b , b - b - b - b - b -g *-g E- b I- b N-o f-w {- - -) -e - . H. ).A. HP.Ji. . .. .' .. / ex /@ / eR*/ b, ./ b 3/ e1=/ bp A/ bd F/ eP/ b T/ b b/ b f/ b u/ b y/ b / / / b* / b( / / /W /t $0 @0 _0w0 0= 00 0J0Y 0 1)1 31 D1\1 m1 eBz1 eR1 e$11 bN 1 b2 1 b 1 b 1 eR1 bt1 bP1 e 1 b)1 b1= 2q*242P2l2222P22s22+3373I3 ea3 e|33 b3 b3 b3 b3 bU3 bC333 b3 b3 b3 b3 b4 b4!4947D4`4q44744 b4 b4 b4 b44 c4 b5 b5 c525G5`5 j555 55 5 b25 b.5 bR5 bD 6Y6 c,'6 b+6 b06 c,?6r[6p66 666 6R67 b7 b 7 b$7 b57%?7 c<O7 bS7 bX7 c<g7>7l77 x777 x7 8;8 b?8 b H8 b0L8 b"]8g8 cLw8 bf{8 bb8 cL88,88 8_89 #9H9pc9 bg9 b{p9 bt9 b99 c\9 b9 b9 c\919\9:  :':@: L:r:: b: b: b: b:: cl: bD: b@: cl:: ;+; (5;O P;i; (u;;` ; b]; bY; b}; bo; ; c|; b; b; c| < %< :<S< ]< x<< < < < b< b<) <2 <_@Q_@h_H_@_@ ,I Y i y    `" f1& f]* f. f2 f6 f: fD f+I f0N f5S f=X fK] fZb fcg fnl f|q fv f{ f f f f f f@ h 8pl`  @ D 0 @|.symtab.strtab.shstrtab.rela.text.data.bss.rodata.str1.1.rodata.str1.8.rela.data.rel.ro.local.rela.debug_info.debug_abbrev.rela.debug_loclists.rela.debug_aranges.debug_rnglists.rela.debug_line.debug_str.debug_line_str.comment.note.GNU-stack.rela.eh_frame @ @-& , 12 @2"@5T X O@lY=g@ pV xЖO@w 0@(y0?$c@Xy0a0h0;(c h@{0 g 8x}