there is an issue with a cornercase of resolving
domain preferences allowed_ips overloads. the cursor
loop of the proc therefor now gets proper statemachine
logic.
Change-Id: Ieeacc4d7c8a931c6e9f0f8087b2a05112f78c675
(cherry picked from commit 73a55b33ae)
rationale:
-ipv6 allowed_ip adresses were not yet supported in kamailio
-the current ipv4 allowed_ip check has bad performance
this change introduces a new UDF to check the UA ip against
allowed_ip and man_allowed_ip preferences in a fast and
convenient way, ie.:
SELECT provisioning.ip_is_allowed(
<subscriber_uuid>,
<ipv4_or_ipv6_address>
);
the check is based on range queries supported by indexes,
following the proven approach we already use for roaming/
billing_networks.
it requires to transfrom IPnet values of existing data into
numerical representation of the network start (network) and
end (broadcast) addresses.
mariadb does not support arithmetic or bitwise operation
for varbinary or numerical values larger than bigint, which
is required to calculate network and broadcast adresses.
the change therefore provides an own implementation for
large integer operations. it works with hex string
representations, which fits the existing mariadb "hex()",
"unhex()" and "inet6_aton/ntoa()" functions.
Change-Id: I9dbaa769252babf168243167c061f035f0f43242
(cherry picked from commit 7c1453e460)
The format of Android push tokens is a free-form binary string of up to
4096 bytes. Currently the tokens are under 256 bytes long, but we expand
the DB field anyway to be future-proof. Unfortunately MySQL doesn't
allow keys that long, so we have to restrict the field to 3072 bytes.
Further add an auto-increment integer primary key to make InnoDB happy.
Change-Id: Ic664d47b80f751397ec51688d8f399da06eac176
(cherry picked from commit 31527c2281)
A new 'peer_group_tag' preferences allows to store a string value, which
will be used to narrow peering selection.
The 'caller_pattern' of a peering group has to match this tag to be
considered for outgoing calls.
Change-Id: Ia1ce7a70a3b036f7c37b054c0aeba36fb9b21352
(cherry picked from commit 27dd266d23)
* The 'is_system' column will be used for users
that will have permission to see, create,
edit, delete lawful intercept admins
* Make the default administrator is_system and
revoke its lawful_intercept flag
Change-Id: Ib3349d4e5719f1a16df00647f24ac49174ccc792
this cdr tag will be used to persist the compressed
delta datastructure for contract_balance records.
additional tablespace consumption is minimal: there
will be only one string value (~20chars on average)
required per cdr.
Change-Id: I32557443df2efa7381c85ddfb8c380c8df02df5e
* Store 'email' for administrators to use
for password reset
* Add additional 'can_reset_passsword' column
to indicate wether an admin can request
password reset
Change-Id: If383e1328eb091c68b8419c574dfae307e1b7920
A regression found in mr7.5 forced to apply an up script only
in that specific version (commit 5580ed34).
The commit is to create a dummy up script in order to keep the
ids consistent in all the versions.
Change-Id: I3d16a9edc3791ac030018ba95c4704388b5e4066
* determine the master db node name to use
for ngcp-sync-db master-slave replication restoration
if the CENTRAL_DBHOST is set by default to db01 only.
if the current nodename ends with "a" then db01a is used,
otehrwise db01b is used as the master host. that is
to make sure that during the upgrade the correct "side"
is used to replicate the data from and avoid lossy
statements that break replication.
Change-Id: I1a51bd0d975390d9269ef5208ce8275f9e055a1f
The using of MD5() for password was outdated and there is an appropriate
warning in ngcp-status.
So change the default password to salted one. Unfortunately Mariadb
doesn't provide bcrypt() function so use the prepared string.
Change-Id: I668e32265c5e3f0f4907ddba0f9546fafdb8acdd
* The type was wrongly set to 1 which is reserved
to integer/boolean; it has to be 0 since it's a
string
Change-Id: Idf2582f9a3ac70eb032493495b71b3fb0a7c4431
* The new preference defines in which scope is
CLIR used: all (hide all callers) or external
(hide callers except calls from same customer)
Change-Id: Ib05a1a8ad7abea2c0eee30928d39478a41e8e169
* Create up and down scripts with 'enabled'
column representing if a callforwards is
enabled or not
Change-Id: Ibbade5cdc31395e9f129f7cf2ae428edf2352c38
Setting Enabled and Immediate the redirection will be immediately
followed cancelling the other active brances.
Change-Id: Ic861983f24ecaa53f57c5f2ad6f64f021ec0523a
* the foreign key device_id pointed to table autoprov_devices
where the correct table is autoprov_field_devices.
Change-Id: I8523435970b31f011919c83c9615972a0f97b53a
The preference is used to define if, in case of emergency call,
the subscriber's cli is set to UPN or NPN (default).
Change-Id: I4b7b1fe9291f6d2b938fd92ee16f2ef009c8be92