
===== test_subscr_create_update_sel_delete

--- Create with valid / invalid IMSI

db_subscr_create(dbc, imsi0, DB_SUBSCR_FLAG_NAM_CS | DB_SUBSCR_FLAG_NAM_PS) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
}

db_subscr_create(dbc, imsi1, DB_SUBSCR_FLAG_NAM_CS | DB_SUBSCR_FLAG_NAM_PS) --> 0

db_subscr_get_by_imsi(dbc, imsi1, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 2,
  .imsi = '123456789000001',
}

db_subscr_create(dbc, imsi2, DB_SUBSCR_FLAG_NAM_CS | DB_SUBSCR_FLAG_NAM_PS) --> 0

db_subscr_get_by_imsi(dbc, imsi2, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 3,
  .imsi = '123456789000002',
}

db_subscr_create(dbc, imsi0, DB_SUBSCR_FLAG_NAM_CS | DB_SUBSCR_FLAG_NAM_PS) --> -EIO
DAUC IMSI='123456789000000': Cannot create subscriber: SQL error: (2067) UNIQUE constraint failed: subscriber.imsi

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
}

db_subscr_create(dbc, imsi1, DB_SUBSCR_FLAG_NAM_CS | DB_SUBSCR_FLAG_NAM_PS) --> -EIO
DAUC IMSI='123456789000001': Cannot create subscriber: SQL error: (2067) UNIQUE constraint failed: subscriber.imsi

db_subscr_create(dbc, imsi1, DB_SUBSCR_FLAG_NAM_CS | DB_SUBSCR_FLAG_NAM_PS) --> -EIO
DAUC IMSI='123456789000001': Cannot create subscriber: SQL error: (2067) UNIQUE constraint failed: subscriber.imsi

db_subscr_get_by_imsi(dbc, imsi1, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 2,
  .imsi = '123456789000001',
}

db_subscr_create(dbc, imsi2, DB_SUBSCR_FLAG_NAM_CS | DB_SUBSCR_FLAG_NAM_PS) --> -EIO
DAUC IMSI='123456789000002': Cannot create subscriber: SQL error: (2067) UNIQUE constraint failed: subscriber.imsi

db_subscr_create(dbc, imsi2, DB_SUBSCR_FLAG_NAM_CS | DB_SUBSCR_FLAG_NAM_PS) --> -EIO
DAUC IMSI='123456789000002': Cannot create subscriber: SQL error: (2067) UNIQUE constraint failed: subscriber.imsi

db_subscr_get_by_imsi(dbc, imsi2, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 3,
  .imsi = '123456789000002',
}

db_subscr_create(dbc, "123456789 000003", DB_SUBSCR_FLAG_NAM_CS | DB_SUBSCR_FLAG_NAM_PS) --> -EINVAL
DAUC Cannot create subscriber: invalid IMSI: '123456789 000003'

db_subscr_get_by_imsi(dbc, "123456789000003", &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: IMSI='123456789000003': No such subscriber

db_subscr_create(dbc, "123456789000002123456", DB_SUBSCR_FLAG_NAM_CS | DB_SUBSCR_FLAG_NAM_PS) --> -EINVAL
DAUC Cannot create subscriber: invalid IMSI: '123456789000002123456'

db_subscr_get_by_imsi(dbc, "123456789000002123456", &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: IMSI='123456789000002123456': No such subscriber

db_subscr_create(dbc, "foobar123", DB_SUBSCR_FLAG_NAM_CS | DB_SUBSCR_FLAG_NAM_PS) --> -EINVAL
DAUC Cannot create subscriber: invalid IMSI: 'foobar123'

db_subscr_get_by_imsi(dbc, "foobar123", &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: IMSI='foobar123': No such subscriber

db_subscr_create(dbc, "123", DB_SUBSCR_FLAG_NAM_CS | DB_SUBSCR_FLAG_NAM_PS) --> -EINVAL
DAUC Cannot create subscriber: invalid IMSI: '123'

db_subscr_get_by_imsi(dbc, "123", &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: IMSI='123': No such subscriber

db_subscr_create(dbc, short_imsi, DB_SUBSCR_FLAG_NAM_CS | DB_SUBSCR_FLAG_NAM_PS) --> 0

db_subscr_get_by_imsi(dbc, short_imsi, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 4,
  .imsi = '123456',
}


--- Check if subscriber exists (by IMSI)

db_subscr_exists_by_imsi(dbc, imsi0) --> 0

db_subscr_exists_by_imsi(dbc, unknown_imsi) --> -ENOENT


--- Set valid / invalid MSISDN

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
}

db_subscr_update_msisdn_by_imsi(dbc, imsi0, "54321") --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '54321',
}

db_subscr_get_by_msisdn(dbc, "54321", &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '54321',
}

db_subscr_update_msisdn_by_imsi(dbc, imsi0, "54321012345678912345678") --> -EINVAL
DAUC IMSI='123456789000000': Cannot update subscriber: invalid MSISDN: '54321012345678912345678'

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '54321',
}

db_subscr_get_by_msisdn(dbc, "54321", &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '54321',
}

db_subscr_get_by_msisdn(dbc, "54321012345678912345678", &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: MSISDN='54321012345678912345678': No such subscriber

db_subscr_update_msisdn_by_imsi(dbc, imsi0, "543 21") --> -EINVAL
DAUC IMSI='123456789000000': Cannot update subscriber: invalid MSISDN: '543 21'

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '54321',
}

db_subscr_get_by_msisdn(dbc, "543 21", &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: MSISDN='543 21': No such subscriber

db_subscr_update_msisdn_by_imsi(dbc, imsi0, "foobar123") --> -EINVAL
DAUC IMSI='123456789000000': Cannot update subscriber: invalid MSISDN: 'foobar123'

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '54321',
}

db_subscr_get_by_msisdn(dbc, "foobar123", &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: MSISDN='foobar123': No such subscriber

db_subscr_update_msisdn_by_imsi(dbc, imsi0, "5") --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '5',
}

db_subscr_get_by_msisdn(dbc, "5", &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '5',
}

db_subscr_get_by_msisdn(dbc, "54321", &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: MSISDN='54321': No such subscriber

db_subscr_update_msisdn_by_imsi(dbc, imsi0, "543210123456789") --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
}

db_subscr_get_by_msisdn(dbc, "543210123456789", &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
}

db_subscr_update_msisdn_by_imsi(dbc, imsi0, "5432101234567891") --> -EINVAL
DAUC IMSI='123456789000000': Cannot update subscriber: invalid MSISDN: '5432101234567891'

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
}

db_subscr_get_by_msisdn(dbc, "5432101234567891", &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: MSISDN='5432101234567891': No such subscriber


--- Check if subscriber exists (by MSISDN)

db_subscr_exists_by_msisdn(dbc, "543210123456789") --> 0

db_subscr_exists_by_msisdn(dbc, "5432101234567891") --> -ENOENT


--- Set MSISDN on non-existent / invalid IMSI

db_subscr_update_msisdn_by_imsi(dbc, unknown_imsi, "99") --> -ENOENT
DAUC Cannot update MSISDN: no such subscriber: IMSI='999999999'

db_subscr_get_by_msisdn(dbc, "99", &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: MSISDN='99': No such subscriber

db_subscr_update_msisdn_by_imsi(dbc, "foobar", "99") --> -ENOENT
DAUC Cannot update MSISDN: no such subscriber: IMSI='foobar'

db_subscr_get_by_msisdn(dbc, "99", &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: MSISDN='99': No such subscriber


--- Set valid / invalid IMEI

db_subscr_update_imei_by_imsi(dbc, imsi0, "12345678901234") --> 0

db_subscr_get_by_imei(dbc, "12345678901234", &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .imei = '12345678901234',
}

db_subscr_update_imei_by_imsi(dbc, imsi0, "123456789012345") --> -EINVAL
DAUC Cannot update subscriber IMSI='123456789000000': invalid IMEI: '123456789012345'

db_subscr_get_by_imei(dbc, "12345678901234", &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .imei = '12345678901234',
}

db_subscr_get_by_imei(dbc, "123456789012345", &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: IMEI=123456789012345: No such subscriber


--- Set the same IMEI again

db_subscr_update_imei_by_imsi(dbc, imsi0, "12345678901234") --> 0

db_subscr_get_by_imei(dbc, "12345678901234", &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .imei = '12345678901234',
}


--- Remove IMEI

db_subscr_update_imei_by_imsi(dbc, imsi0, NULL) --> 0

db_subscr_get_by_imei(dbc, "12345678901234", &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: IMEI=12345678901234: No such subscriber


--- Set / unset nam_cs and nam_ps

db_subscr_nam(dbc, imsi0, false, true) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .nam_ps = false,
}

db_subscr_nam(dbc, imsi0, false, false) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .nam_cs = false,
  .nam_ps = false,
}

db_subscr_nam(dbc, imsi0, true, false) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .nam_ps = false,
}

db_subscr_nam(dbc, imsi0, true, true) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
}


--- Set / unset nam_cs and nam_ps *again*

db_subscr_nam(dbc, imsi0, false, true) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .nam_ps = false,
}

db_subscr_nam(dbc, imsi0, false, true) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .nam_ps = false,
}

db_subscr_nam(dbc, imsi0, false, false) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .nam_cs = false,
  .nam_ps = false,
}

db_subscr_nam(dbc, imsi0, false, false) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .nam_cs = false,
  .nam_ps = false,
}

db_subscr_nam(dbc, imsi0, true, true) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .nam_cs = false,
}

db_subscr_nam(dbc, imsi0, true, true) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .nam_cs = false,
}

db_subscr_nam(dbc, imsi0, true, false) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
}

db_subscr_nam(dbc, imsi0, true, false) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
}


--- Set nam_cs and nam_ps on non-existent / invalid IMSI

db_subscr_nam(dbc, unknown_imsi, false, true) --> -ENOENT
DAUC Cannot disable PS: no such subscriber: IMSI='999999999'

db_subscr_nam(dbc, unknown_imsi, false, false) --> -ENOENT
DAUC Cannot disable CS: no such subscriber: IMSI='999999999'

db_subscr_get_by_imsi(dbc, unknown_imsi, &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: IMSI='999999999': No such subscriber

db_subscr_nam(dbc, "foobar", false, true) --> -ENOENT
DAUC Cannot disable PS: no such subscriber: IMSI='foobar'

db_subscr_nam(dbc, "foobar", false, false) --> -ENOENT
DAUC Cannot disable CS: no such subscriber: IMSI='foobar'


--- Record LU for PS and CS (SGSN and VLR names)

db_subscr_lu_str(dbc, id0, "5952", true) --> 0

db_subscr_get_by_id(dbc, id0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .sgsn_number = '5952',
}

db_subscr_lu_str(dbc, id0, "712", false) --> 0

db_subscr_get_by_id(dbc, id0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .vlr_number = '712',
  .sgsn_number = '5952',
}


--- Record LU for PS and CS (SGSN and VLR names) *again*

db_subscr_lu_str(dbc, id0, "111", true) --> 0

db_subscr_get_by_id(dbc, id0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .vlr_number = '712',
  .sgsn_number = '111',
}

db_subscr_lu_str(dbc, id0, "111", true) --> 0

db_subscr_get_by_id(dbc, id0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .vlr_number = '712',
  .sgsn_number = '111',
}

db_subscr_lu_str(dbc, id0, "222", false) --> 0

db_subscr_get_by_id(dbc, id0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .vlr_number = '222',
  .sgsn_number = '111',
}

db_subscr_lu_str(dbc, id0, "222", false) --> 0

db_subscr_get_by_id(dbc, id0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .vlr_number = '222',
  .sgsn_number = '111',
}


--- Unset LU info for PS and CS (SGSN and VLR names)

db_subscr_lu_str(dbc, id0, "", true) --> 0

db_subscr_get_by_id(dbc, id0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .vlr_number = '222',
}

db_subscr_lu_str(dbc, id0, "", false) --> 0

db_subscr_get_by_id(dbc, id0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
}

db_subscr_lu_str(dbc, id0, "111", true) --> 0

db_subscr_lu_str(dbc, id0, "222", false) --> 0

db_subscr_get_by_id(dbc, id0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .vlr_number = '222',
  .sgsn_number = '111',
}

db_subscr_lu_str(dbc, id0, NULL, true) --> 0

db_subscr_get_by_id(dbc, id0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .vlr_number = '222',
}

db_subscr_lu_str(dbc, id0, NULL, false) --> 0

db_subscr_get_by_id(dbc, id0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
}


--- Record LU for non-existent ID

db_subscr_lu_str(dbc, 99999, "5952", true) --> -ENOENT
DAUC Cannot update SGSN number for subscriber ID=99999: no such subscriber

db_subscr_lu_str(dbc, 99999, "712", false) --> -ENOENT
DAUC Cannot update VLR number for subscriber ID=99999: no such subscriber

db_subscr_get_by_id(dbc, 99999, &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: ID=99999: No such subscriber


--- Purge and un-purge PS and CS

db_subscr_purge(dbc, imsi0, true, true) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .ms_purged_ps = true,
}

db_subscr_purge(dbc, imsi0, true, false) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .ms_purged_cs = true,
  .ms_purged_ps = true,
}

db_subscr_purge(dbc, imsi0, false, false) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .ms_purged_ps = true,
}

db_subscr_purge(dbc, imsi0, false, true) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
}


--- Purge PS and CS *again*

db_subscr_purge(dbc, imsi0, true, true) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .ms_purged_ps = true,
}

db_subscr_purge(dbc, imsi0, true, true) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .ms_purged_ps = true,
}

db_subscr_purge(dbc, imsi0, false, true) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
}

db_subscr_purge(dbc, imsi0, false, true) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
}

db_subscr_purge(dbc, imsi0, true, false) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .ms_purged_cs = true,
}

db_subscr_purge(dbc, imsi0, true, false) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
  .ms_purged_cs = true,
}

db_subscr_purge(dbc, imsi0, false, false) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
}

db_subscr_purge(dbc, imsi0, false, false) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
}


--- Purge on non-existent / invalid IMSI

db_subscr_purge(dbc, unknown_imsi, true, true) --> -ENOENT
DAUC Cannot purge PS: no such subscriber: IMSI='999999999'

db_subscr_get_by_imsi(dbc, unknown_imsi, &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: IMSI='999999999': No such subscriber

db_subscr_purge(dbc, unknown_imsi, true, false) --> -ENOENT
DAUC Cannot purge CS: no such subscriber: IMSI='999999999'

db_subscr_get_by_imsi(dbc, unknown_imsi, &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: IMSI='999999999': No such subscriber


--- Delete non-existent / invalid IDs

db_subscr_delete_by_id(dbc, 999) --> -ENOENT
DAUC Cannot delete: no such subscriber: ID=999

db_subscr_delete_by_id(dbc, -10) --> -ENOENT
DAUC Cannot delete: no such subscriber: ID=-10


--- Delete subscribers

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .msisdn = '543210123456789',
}

db_subscr_delete_by_id(dbc, id0) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: IMSI='123456789000000': No such subscriber

db_subscr_delete_by_id(dbc, id0) --> -ENOENT
DAUC Cannot delete: no such subscriber: ID=1

db_subscr_get_by_imsi(dbc, imsi1, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 2,
  .imsi = '123456789000001',
}

db_subscr_delete_by_id(dbc, id1) --> 0

db_subscr_get_by_imsi(dbc, imsi1, &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: IMSI='123456789000001': No such subscriber

db_subscr_get_by_imsi(dbc, imsi2, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 3,
  .imsi = '123456789000002',
}

db_subscr_delete_by_id(dbc, id2) --> 0

db_subscr_get_by_imsi(dbc, imsi2, &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: IMSI='123456789000002': No such subscriber

db_subscr_get_by_imsi(dbc, short_imsi, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 4,
  .imsi = '123456',
}

db_subscr_delete_by_id(dbc, id_short) --> 0

db_subscr_get_by_imsi(dbc, short_imsi, &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: IMSI='123456': No such subscriber


--- Create and delete subscribers with non-default nam_cs and nam_ps

db_subscr_create(dbc, imsi0, 0x00) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
  .nam_cs = false,
  .nam_ps = false,
}

db_subscr_create(dbc, imsi1, DB_SUBSCR_FLAG_NAM_CS) --> 0

db_subscr_get_by_imsi(dbc, imsi1, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 2,
  .imsi = '123456789000001',
  .nam_ps = false,
}

db_subscr_create(dbc, imsi2, DB_SUBSCR_FLAG_NAM_PS) --> 0

db_subscr_get_by_imsi(dbc, imsi2, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 3,
  .imsi = '123456789000002',
  .nam_cs = false,
}

db_subscr_delete_by_id(dbc, id0) --> 0

db_subscr_delete_by_id(dbc, id1) --> 0

db_subscr_delete_by_id(dbc, id2) --> 0

===== test_subscr_create_update_sel_delete: SUCCESS


===== test_subscr_aud

--- Get auth data for non-existent subscriber

db_get_auth_data(dbc, unknown_imsi, &g_aud2g, &g_aud3g, &g_id) --> -2
DAUC IMSI='999999999': No such subscriber


db_get_auc(dbc, imsi0, 3, vec, N_VECTORS, NULL, NULL, false) --> -2
DAUC IMSI='123456789000000': No such subscriber


--- Create subscriber

db_subscr_create(dbc, imsi0, DB_SUBSCR_FLAG_NAM_CS | DB_SUBSCR_FLAG_NAM_PS) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
}

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> -ENOKEY
DAUC IMSI='123456789000000': No 2G Auth Data
DAUC IMSI='123456789000000': No 3G Auth Data


db_get_auc(dbc, imsi0, 3, vec, N_VECTORS, NULL, NULL, false) --> -ENOKEY
DAUC IMSI='123456789000000': No 2G Auth Data
DAUC IMSI='123456789000000': No 3G Auth Data


--- Set auth data, 2G only

db_subscr_update_aud_by_id(dbc, id, mk_aud_2g(OSMO_AUTH_ALG_COMP128v1, "0123456789abcdef0123456789abcdef")) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0
DAUC IMSI='123456789000000': No 3G Auth Data

2G: struct osmo_sub_auth_data {
  .type = GSM,
  .algo = COMP128v1,
  .u.gsm.ki = '0123456789abcdef0123456789abcdef',
}
3G: none

db_get_auc(dbc, imsi0, 3, vec, N_VECTORS, NULL, NULL, false) --> 3
DAUC IMSI='123456789000000': No 3G Auth Data
DAUC IMSI='123456789000000': Calling to generate 3 vectors
DAUC IMSI='123456789000000': Generated 3 vectors

db_subscr_update_aud_by_id(dbc, id, mk_aud_2g(OSMO_AUTH_ALG_COMP128v1, "0123456789abcdef0123456789abcdef")) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0
DAUC IMSI='123456789000000': No 3G Auth Data

2G: struct osmo_sub_auth_data {
  .type = GSM,
  .algo = COMP128v1,
  .u.gsm.ki = '0123456789abcdef0123456789abcdef',
}
3G: none

db_subscr_update_aud_by_id(dbc, id, mk_aud_2g(OSMO_AUTH_ALG_COMP128v2, "BeadedBeeAced1EbbedDefacedFacade")) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0
DAUC IMSI='123456789000000': No 3G Auth Data

2G: struct osmo_sub_auth_data {
  .type = GSM,
  .algo = COMP128v2,
  .u.gsm.ki = 'beadedbeeaced1ebbeddefacedfacade',
}
3G: none

db_subscr_update_aud_by_id(dbc, id, mk_aud_2g(OSMO_AUTH_ALG_COMP128v3, "DeafBeddedBabeAcceededFadedDecaf")) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0
DAUC IMSI='123456789000000': No 3G Auth Data

2G: struct osmo_sub_auth_data {
  .type = GSM,
  .algo = COMP128v3,
  .u.gsm.ki = 'deafbeddedbabeacceededfadeddecaf',
}
3G: none

db_subscr_update_aud_by_id(dbc, id, mk_aud_2g(OSMO_AUTH_ALG_XOR, "CededEffacedAceFacedBadFadedBeef")) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0
DAUC IMSI='123456789000000': No 3G Auth Data

2G: struct osmo_sub_auth_data {
  .type = GSM,
  .algo = XOR,
  .u.gsm.ki = 'cededeffacedacefacedbadfadedbeef',
}
3G: none


--- Remove 2G auth data

db_subscr_update_aud_by_id(dbc, id, mk_aud_2g(OSMO_AUTH_ALG_NONE, NULL)) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> -ENOKEY
DAUC IMSI='123456789000000': No 2G Auth Data
DAUC IMSI='123456789000000': No 3G Auth Data


db_get_auc(dbc, imsi0, 3, vec, N_VECTORS, NULL, NULL, false) --> -ENOKEY
DAUC IMSI='123456789000000': No 2G Auth Data
DAUC IMSI='123456789000000': No 3G Auth Data

db_subscr_update_aud_by_id(dbc, id, mk_aud_2g(OSMO_AUTH_ALG_NONE, NULL)) --> -ENOENT

db_subscr_update_aud_by_id(dbc, id, mk_aud_2g(OSMO_AUTH_ALG_XOR, "CededEffacedAceFacedBadFadedBeef")) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0
DAUC IMSI='123456789000000': No 3G Auth Data

2G: struct osmo_sub_auth_data {
  .type = GSM,
  .algo = XOR,
  .u.gsm.ki = 'cededeffacedacefacedbadfadedbeef',
}
3G: none

db_subscr_update_aud_by_id(dbc, id, mk_aud_2g(OSMO_AUTH_ALG_NONE, "f000000000000f00000000000f000000")) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> -ENOKEY
DAUC IMSI='123456789000000': No 2G Auth Data
DAUC IMSI='123456789000000': No 3G Auth Data


db_get_auc(dbc, imsi0, 3, vec, N_VECTORS, NULL, NULL, false) --> -ENOKEY
DAUC IMSI='123456789000000': No 2G Auth Data
DAUC IMSI='123456789000000': No 3G Auth Data


--- Set auth data, 3G only

db_subscr_update_aud_by_id(dbc, id, mk_aud_3g(OSMO_AUTH_ALG_MILENAGE, "BeefedCafeFaceAcedAddedDecadeFee", true, "C01ffedC1cadaeAc1d1f1edAcac1aB0a", 5)) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0
DAUC IMSI='123456789000000': No 2G Auth Data

2G: none
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 1,
  .u.umts.k = 'c01ffedc1cadaeac1d1f1edacac1ab0a',
  .u.umts.amf = '0000',
  .u.umts.ind_bitlen = 5,
}

db_get_auc(dbc, imsi0, 3, vec, N_VECTORS, NULL, NULL, false) --> 3
DAUC IMSI='123456789000000': No 2G Auth Data
DAUC IMSI='123456789000000': Calling to generate 3 vectors
DAUC IMSI='123456789000000': Generated 3 vectors
DAUC IMSI='123456789000000': Updating SQN=0 in DB

db_subscr_update_aud_by_id(dbc, id, mk_aud_3g(OSMO_AUTH_ALG_MILENAGE, "BeefedCafeFaceAcedAddedDecadeFee", true, "C01ffedC1cadaeAc1d1f1edAcac1aB0a", 5)) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0
DAUC IMSI='123456789000000': No 2G Auth Data

2G: none
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 1,
  .u.umts.k = 'c01ffedc1cadaeac1d1f1edacac1ab0a',
  .u.umts.amf = '0000',
  .u.umts.ind_bitlen = 5,
}

db_subscr_update_aud_by_id(dbc, id, mk_aud_3g(OSMO_AUTH_ALG_MILENAGE, "Deaf0ff1ceD0d0DabbedD1ced1ceF00d", true, "F1bbed0afD0eF0bD0ffed0ddF1fe0b0e", 0)) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0
DAUC IMSI='123456789000000': No 2G Auth Data

2G: none
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'deaf0ff1ced0d0dabbedd1ced1cef00d',
  .u.umts.opc_is_op = 1,
  .u.umts.k = 'f1bbed0afd0ef0bd0ffed0ddf1fe0b0e',
  .u.umts.amf = '0000',
}

db_subscr_update_aud_by_id(dbc, id, mk_aud_3g(OSMO_AUTH_ALG_MILENAGE, "BeefedCafeFaceAcedAddedDecadeFee", false, "DeafBeddedBabeAcceededFadedDecaf", OSMO_MILENAGE_IND_BITLEN_MAX)) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0
DAUC IMSI='123456789000000': No 2G Auth Data

2G: none
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 0,
  .u.umts.k = 'deafbeddedbabeacceededfadeddecaf',
  .u.umts.amf = '0000',
  .u.umts.ind_bitlen = 28,
}

db_subscr_update_aud_by_id(dbc, id, mk_aud_3g(OSMO_AUTH_ALG_MILENAGE, "CededEffacedAceFacedBadFadedBeef", false, "BeefedCafeFaceAcedAddedDecadeFee", 5)) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0
DAUC IMSI='123456789000000': No 2G Auth Data

2G: none
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'cededeffacedacefacedbadfadedbeef',
  .u.umts.opc_is_op = 0,
  .u.umts.k = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.amf = '0000',
  .u.umts.ind_bitlen = 5,
}


--- Remove 3G auth data

db_subscr_update_aud_by_id(dbc, id, mk_aud_3g(OSMO_AUTH_ALG_NONE, NULL, false, NULL, 0)) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> -ENOKEY
DAUC IMSI='123456789000000': No 2G Auth Data
DAUC IMSI='123456789000000': No 3G Auth Data


db_get_auc(dbc, imsi0, 3, vec, N_VECTORS, NULL, NULL, false) --> -ENOKEY
DAUC IMSI='123456789000000': No 2G Auth Data
DAUC IMSI='123456789000000': No 3G Auth Data

db_subscr_update_aud_by_id(dbc, id, mk_aud_3g(OSMO_AUTH_ALG_NONE, NULL, false, NULL, 0)) --> -ENOENT

db_subscr_update_aud_by_id(dbc, id, mk_aud_3g(OSMO_AUTH_ALG_MILENAGE, "CededEffacedAceFacedBadFadedBeef", false, "BeefedCafeFaceAcedAddedDecadeFee", 5)) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0
DAUC IMSI='123456789000000': No 2G Auth Data

2G: none
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'cededeffacedacefacedbadfadedbeef',
  .u.umts.opc_is_op = 0,
  .u.umts.k = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.amf = '0000',
  .u.umts.ind_bitlen = 5,
}

db_get_auc(dbc, imsi0, 3, vec, N_VECTORS, NULL, NULL, false) --> 3
DAUC IMSI='123456789000000': No 2G Auth Data
DAUC IMSI='123456789000000': Calling to generate 3 vectors
DAUC IMSI='123456789000000': Generated 3 vectors
DAUC IMSI='123456789000000': Updating SQN=0 in DB

db_subscr_update_aud_by_id(dbc, id, mk_aud_3g(OSMO_AUTH_ALG_NONE, "asdfasdfasd", false, "asdfasdfasdf", 99999)) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> -ENOKEY
DAUC IMSI='123456789000000': No 2G Auth Data
DAUC IMSI='123456789000000': No 3G Auth Data


db_get_auc(dbc, imsi0, 3, vec, N_VECTORS, NULL, NULL, false) --> -ENOKEY
DAUC IMSI='123456789000000': No 2G Auth Data
DAUC IMSI='123456789000000': No 3G Auth Data


--- Set auth data, 2G and 3G

db_subscr_update_aud_by_id(dbc, id, mk_aud_2g(OSMO_AUTH_ALG_COMP128v3, "CededEffacedAceFacedBadFadedBeef")) --> 0

db_subscr_update_aud_by_id(dbc, id, mk_aud_3g(OSMO_AUTH_ALG_MILENAGE, "BeefedCafeFaceAcedAddedDecadeFee", false, "DeafBeddedBabeAcceededFadedDecaf", 5)) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0

2G: struct osmo_sub_auth_data {
  .type = GSM,
  .algo = COMP128v3,
  .u.gsm.ki = 'cededeffacedacefacedbadfadedbeef',
}
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 0,
  .u.umts.k = 'deafbeddedbabeacceededfadeddecaf',
  .u.umts.amf = '0000',
  .u.umts.ind_bitlen = 5,
}

db_get_auc(dbc, imsi0, 3, vec, N_VECTORS, NULL, NULL, false) --> 3
DAUC IMSI='123456789000000': Calling to generate 3 vectors
DAUC IMSI='123456789000000': Generated 3 vectors
DAUC IMSI='123456789000000': Updating SQN=0 in DB


--- Set invalid auth data

db_subscr_update_aud_by_id(dbc, id, mk_aud_2g(99999, "f000000000000f00000000000f000000")) --> -EINVAL
DAUC Cannot update auth tokens: Unknown auth algo: 99999

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0

2G: struct osmo_sub_auth_data {
  .type = GSM,
  .algo = COMP128v3,
  .u.gsm.ki = 'cededeffacedacefacedbadfadedbeef',
}
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 0,
  .u.umts.k = 'deafbeddedbabeacceededfadeddecaf',
  .u.umts.amf = '0000',
  .u.umts.ind_bitlen = 5,
}

db_subscr_update_aud_by_id(dbc, id, mk_aud_2g(OSMO_AUTH_ALG_XOR, "f000000000000f00000000000f000000f00000000")) --> -EINVAL
DAUC Cannot update auth tokens: Invalid KI: 'f000000000000f00000000000f000000f00000000'

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0

2G: struct osmo_sub_auth_data {
  .type = GSM,
  .algo = COMP128v3,
  .u.gsm.ki = 'cededeffacedacefacedbadfadedbeef',
}
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 0,
  .u.umts.k = 'deafbeddedbabeacceededfadeddecaf',
  .u.umts.amf = '0000',
  .u.umts.ind_bitlen = 5,
}

db_subscr_update_aud_by_id(dbc, id, mk_aud_2g(OSMO_AUTH_ALG_XOR, "f00")) --> -EINVAL
DAUC Cannot update auth tokens: Invalid KI: 'f00'

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0

2G: struct osmo_sub_auth_data {
  .type = GSM,
  .algo = COMP128v3,
  .u.gsm.ki = 'cededeffacedacefacedbadfadedbeef',
}
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 0,
  .u.umts.k = 'deafbeddedbabeacceededfadeddecaf',
  .u.umts.amf = '0000',
  .u.umts.ind_bitlen = 5,
}

db_subscr_update_aud_by_id(dbc, id, mk_aud_2g(OSMO_AUTH_ALG_MILENAGE, "0123456789abcdef0123456789abcdef")) --> -EINVAL
DAUC Cannot update auth tokens: auth algo not suited for 2G: MILENAGE

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0

2G: struct osmo_sub_auth_data {
  .type = GSM,
  .algo = COMP128v3,
  .u.gsm.ki = 'cededeffacedacefacedbadfadedbeef',
}
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 0,
  .u.umts.k = 'deafbeddedbabeacceededfadeddecaf',
  .u.umts.amf = '0000',
  .u.umts.ind_bitlen = 5,
}

db_subscr_update_aud_by_id(dbc, id, mk_aud_3g(OSMO_AUTH_ALG_MILENAGE, "0f000000000000f00000000000f000000", false, "f000000000000f00000000000f000000", 5)) --> -EINVAL
DAUC Cannot update auth tokens: Invalid OP/OPC: '0f000000000000f00000000000f000000'

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0

2G: struct osmo_sub_auth_data {
  .type = GSM,
  .algo = COMP128v3,
  .u.gsm.ki = 'cededeffacedacefacedbadfadedbeef',
}
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 0,
  .u.umts.k = 'deafbeddedbabeacceededfadeddecaf',
  .u.umts.amf = '0000',
  .u.umts.ind_bitlen = 5,
}

db_subscr_update_aud_by_id(dbc, id, mk_aud_3g(OSMO_AUTH_ALG_MILENAGE, "f000000000000f00000000000f000000", false, "000000000000f00000000000f000000", 5)) --> -EINVAL
DAUC Cannot update auth tokens: Invalid K: '000000000000f00000000000f000000'

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0

2G: struct osmo_sub_auth_data {
  .type = GSM,
  .algo = COMP128v3,
  .u.gsm.ki = 'cededeffacedacefacedbadfadedbeef',
}
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 0,
  .u.umts.k = 'deafbeddedbabeacceededfadeddecaf',
  .u.umts.amf = '0000',
  .u.umts.ind_bitlen = 5,
}

db_subscr_update_aud_by_id(dbc, id, mk_aud_3g(OSMO_AUTH_ALG_MILENAGE, "f000000000000f00000000000f000000", false, "f000000000000f00000000000f000000", OSMO_MILENAGE_IND_BITLEN_MAX + 1)) --> -EINVAL
DAUC Cannot update auth tokens: Invalid ind_bitlen: 29

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0

2G: struct osmo_sub_auth_data {
  .type = GSM,
  .algo = COMP128v3,
  .u.gsm.ki = 'cededeffacedacefacedbadfadedbeef',
}
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 0,
  .u.umts.k = 'deafbeddedbabeacceededfadeddecaf',
  .u.umts.amf = '0000',
  .u.umts.ind_bitlen = 5,
}

db_subscr_update_aud_by_id(dbc, id, mk_aud_3g(OSMO_AUTH_ALG_MILENAGE, "X000000000000f00000000000f000000", false, "f000000000000f00000000000f000000", 5)) --> -EINVAL
DAUC Cannot update auth tokens: Invalid OP/OPC: 'X000000000000f00000000000f000000'

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0

2G: struct osmo_sub_auth_data {
  .type = GSM,
  .algo = COMP128v3,
  .u.gsm.ki = 'cededeffacedacefacedbadfadedbeef',
}
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 0,
  .u.umts.k = 'deafbeddedbabeacceededfadeddecaf',
  .u.umts.amf = '0000',
  .u.umts.ind_bitlen = 5,
}

db_subscr_update_aud_by_id(dbc, id, mk_aud_3g(OSMO_AUTH_ALG_MILENAGE, "f000000000000f00000000000f000000", false, "f000000000000 f00000000000 f000000", 5)) --> -EINVAL
DAUC Cannot update auth tokens: Invalid K: 'f000000000000 f00000000000 f000000'

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0

2G: struct osmo_sub_auth_data {
  .type = GSM,
  .algo = COMP128v3,
  .u.gsm.ki = 'cededeffacedacefacedbadfadedbeef',
}
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 0,
  .u.umts.k = 'deafbeddedbabeacceededfadeddecaf',
  .u.umts.amf = '0000',
  .u.umts.ind_bitlen = 5,
}


--- Delete subscriber

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
}

db_subscr_delete_by_id(dbc, id) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: IMSI='123456789000000': No such subscriber


--- Re-add subscriber and verify auth data didn't come back

db_subscr_create(dbc, imsi0, DB_SUBSCR_FLAG_NAM_CS | DB_SUBSCR_FLAG_NAM_PS) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
}

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> -ENOKEY
DAUC IMSI='123456789000000': No 2G Auth Data
DAUC IMSI='123456789000000': No 3G Auth Data


db_get_auc(dbc, imsi0, 3, vec, N_VECTORS, NULL, NULL, false) --> -ENOKEY
DAUC IMSI='123456789000000': No 2G Auth Data
DAUC IMSI='123456789000000': No 3G Auth Data

db_subscr_delete_by_id(dbc, id) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: IMSI='123456789000000': No such subscriber

db_get_auc(dbc, imsi0, 3, vec, N_VECTORS, NULL, NULL, false) --> -2
DAUC IMSI='123456789000000': No such subscriber

===== test_subscr_aud: SUCCESS


===== test_subscr_aud_invalid_len

--- Create subscriber

db_subscr_create(dbc, imsi0, DB_SUBSCR_FLAG_NAM_CS | DB_SUBSCR_FLAG_NAM_PS) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
}


--- Set auth data, 2G only, with invalid Ki length

db_subscr_update_aud_by_id(dbc, id, mk_aud_2g(OSMO_AUTH_ALG_COMP128v1, "0123456789abcdef0123456789abcdef")) --> 0

raw SQL: UPDATE auc_2g SET ki = '0123456789abcdef0123456789abcde'
sqlite3_prepare_v2(dbc->db, sql, -1, &stmt, NULL) --> SQLITE_OK

sqlite3_step(stmt) --> SQLITE_DONE

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> -ENOKEY
DAUC IMSI='123456789000000': Error reading Ki, expected length 16 but has length 15
DAUC IMSI='123456789000000': No 3G Auth Data



--- Remove 2G auth data

db_subscr_update_aud_by_id(dbc, id, mk_aud_2g(OSMO_AUTH_ALG_NONE, NULL)) --> 0


--- Set auth data, 3G only, with invalid K length

db_subscr_update_aud_by_id(dbc, id, mk_aud_3g(OSMO_AUTH_ALG_MILENAGE, "BeefedCafeFaceAcedAddedDecadeFee", true, "C01ffedC1cadaeAc1d1f1edAcac1aB0a", 5)) --> 0

raw SQL: UPDATE auc_3g SET k = 'C01ffedC1cadaeAc1d1f1edAcac1aB0'
sqlite3_prepare_v2(dbc->db, sql, -1, &stmt, NULL) --> SQLITE_OK

sqlite3_step(stmt) --> SQLITE_DONE

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> -5
DAUC IMSI='123456789000000': No 2G Auth Data
DAUC IMSI='123456789000000': Error reading K, expected length 16 but has length 15



--- Set auth data, 3G only, with invalid OP length

db_subscr_update_aud_by_id(dbc, id, mk_aud_3g(OSMO_AUTH_ALG_MILENAGE, "BeefedCafeFaceAcedAddedDecadeFee", true, "C01ffedC1cadaeAc1d1f1edAcac1aB0a", 5)) --> 0

raw SQL: UPDATE auc_3g SET op = 'BeefedCafeFaceAcedAddedDecadeFe'
sqlite3_prepare_v2(dbc->db, sql, -1, &stmt, NULL) --> SQLITE_OK

sqlite3_step(stmt) --> SQLITE_DONE

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> -5
DAUC IMSI='123456789000000': No 2G Auth Data
DAUC IMSI='123456789000000': Error reading OP, expected length 16 but has length 15



--- Set auth data, 3G only, with invalid OPC length

db_subscr_update_aud_by_id(dbc, id, mk_aud_3g(OSMO_AUTH_ALG_MILENAGE, "BeefedCafeFaceAcedAddedDecadeFee", false, "C01ffedC1cadaeAc1d1f1edAcac1aB0a", 5)) --> 0

raw SQL: UPDATE auc_3g SET opc = 'BeefedCafeFaceAcedAddedDecadeFe'
sqlite3_prepare_v2(dbc->db, sql, -1, &stmt, NULL) --> SQLITE_OK

sqlite3_step(stmt) --> SQLITE_DONE

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> -5
DAUC IMSI='123456789000000': No 2G Auth Data
DAUC IMSI='123456789000000': Error reading OPC, expected length 16 but has length 15



--- Delete subscriber

db_subscr_delete_by_id(dbc, id) --> 0

===== test_subscr_aud_invalid_len: SUCCESS


===== test_subscr_sqn

--- Set SQN for unknown subscriber

db_update_sqn(dbc, 99, 999) --> -ENOENT
DAUC Cannot update SQN for subscriber ID=99: no auc_3g entry for such subscriber

db_subscr_get_by_id(dbc, 99, &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: ID=99: No such subscriber

db_update_sqn(dbc, 9999, 99) --> -ENOENT
DAUC Cannot update SQN for subscriber ID=9999: no auc_3g entry for such subscriber

db_subscr_get_by_id(dbc, 9999, &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: ID=9999: No such subscriber


--- Create subscriber

db_subscr_create(dbc, imsi0, DB_SUBSCR_FLAG_NAM_CS | DB_SUBSCR_FLAG_NAM_PS) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
}

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> -ENOKEY
DAUC IMSI='123456789000000': No 2G Auth Data
DAUC IMSI='123456789000000': No 3G Auth Data



--- Set SQN, but no 3G auth data present

db_update_sqn(dbc, id, 123) --> -ENOENT
DAUC Cannot update SQN for subscriber ID=1: no auc_3g entry for such subscriber

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> -ENOKEY
DAUC IMSI='123456789000000': No 2G Auth Data
DAUC IMSI='123456789000000': No 3G Auth Data


db_update_sqn(dbc, id, 543) --> -ENOENT
DAUC Cannot update SQN for subscriber ID=1: no auc_3g entry for such subscriber

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> -ENOKEY
DAUC IMSI='123456789000000': No 2G Auth Data
DAUC IMSI='123456789000000': No 3G Auth Data



--- Set auth 3G data

db_subscr_update_aud_by_id(dbc, id, mk_aud_3g(OSMO_AUTH_ALG_MILENAGE, "BeefedCafeFaceAcedAddedDecadeFee", true, "C01ffedC1cadaeAc1d1f1edAcac1aB0a", 5)) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0
DAUC IMSI='123456789000000': No 2G Auth Data

2G: none
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 1,
  .u.umts.k = 'c01ffedc1cadaeac1d1f1edacac1ab0a',
  .u.umts.amf = '0000',
  .u.umts.ind_bitlen = 5,
}


--- Set SQN

db_update_sqn(dbc, id, 23315) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0
DAUC IMSI='123456789000000': No 2G Auth Data

2G: none
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 1,
  .u.umts.k = 'c01ffedc1cadaeac1d1f1edacac1ab0a',
  .u.umts.amf = '0000',
  .u.umts.sqn = 23315,
  .u.umts.sqn = 0x5b13,
  .u.umts.ind_bitlen = 5,
}

db_update_sqn(dbc, id, 23315) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0
DAUC IMSI='123456789000000': No 2G Auth Data

2G: none
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 1,
  .u.umts.k = 'c01ffedc1cadaeac1d1f1edacac1ab0a',
  .u.umts.amf = '0000',
  .u.umts.sqn = 23315,
  .u.umts.sqn = 0x5b13,
  .u.umts.ind_bitlen = 5,
}

db_update_sqn(dbc, id, 423) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0
DAUC IMSI='123456789000000': No 2G Auth Data

2G: none
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 1,
  .u.umts.k = 'c01ffedc1cadaeac1d1f1edacac1ab0a',
  .u.umts.amf = '0000',
  .u.umts.sqn = 423,
  .u.umts.sqn = 0x1a7,
  .u.umts.ind_bitlen = 5,
}


--- Set SQN: thru uint64_t range, using the int64_t SQLite bind

db_update_sqn(dbc, id, 0) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0
DAUC IMSI='123456789000000': No 2G Auth Data

2G: none
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 1,
  .u.umts.k = 'c01ffedc1cadaeac1d1f1edacac1ab0a',
  .u.umts.amf = '0000',
  .u.umts.ind_bitlen = 5,
}

db_update_sqn(dbc, id, INT64_MAX) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0
DAUC IMSI='123456789000000': No 2G Auth Data

2G: none
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 1,
  .u.umts.k = 'c01ffedc1cadaeac1d1f1edacac1ab0a',
  .u.umts.amf = '0000',
  .u.umts.sqn = 9223372036854775807,
  .u.umts.sqn = 0x7fffffffffffffff,
  .u.umts.ind_bitlen = 5,
}

db_update_sqn(dbc, id, INT64_MIN) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0
DAUC IMSI='123456789000000': No 2G Auth Data

2G: none
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 1,
  .u.umts.k = 'c01ffedc1cadaeac1d1f1edacac1ab0a',
  .u.umts.amf = '0000',
  .u.umts.sqn = 9223372036854775808,
  .u.umts.sqn = 0x8000000000000000,
  .u.umts.ind_bitlen = 5,
}

db_update_sqn(dbc, id, UINT64_MAX) --> 0

db_get_auth_data(dbc, imsi0, &g_aud2g, &g_aud3g, &g_id) --> 0
DAUC IMSI='123456789000000': No 2G Auth Data

2G: none
3G: struct osmo_sub_auth_data {
  .type = UMTS,
  .algo = MILENAGE,
  .u.umts.opc = 'beefedcafefaceacedaddeddecadefee',
  .u.umts.opc_is_op = 1,
  .u.umts.k = 'c01ffedc1cadaeac1d1f1edacac1ab0a',
  .u.umts.amf = '0000',
  .u.umts.sqn = 18446744073709551615,
  .u.umts.sqn = 0xffffffffffffffff,
  .u.umts.ind_bitlen = 5,
}


--- Delete subscriber

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0
struct hlr_subscriber {
  .id = 1,
  .imsi = '123456789000000',
}

db_subscr_delete_by_id(dbc, id) --> 0

db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> -ENOENT
DAUC Cannot read subscriber from db: IMSI='123456789000000': No such subscriber

===== test_subscr_sqn: SUCCESS

