diff options
author | Neels Hofmeyr <neels@hofmeyr.de> | 2019-02-19 02:36:35 +0100 |
---|---|---|
committer | Neels Hofmeyr <neels@hofmeyr.de> | 2019-04-12 02:15:25 +0200 |
commit | 7c5346cd7005ad469702a2f74572b79de738fbbb (patch) | |
tree | f03af83b8c1047516e442521b71bba33c9e17a32 /src/libmsc/ctrl_commands.c | |
parent | d553c085e7fbe4b41234e821896e6e6bbcc1e201 (diff) |
vlr_subscr: use osmo_use_count
Depends: Ife31e6798b4e728a23913179e346552a7dd338c0 (libosmocore)
Change-Id: Ib06d030e8464abe415ff597d462ed40eeddef475
Diffstat (limited to 'src/libmsc/ctrl_commands.c')
-rw-r--r-- | src/libmsc/ctrl_commands.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/libmsc/ctrl_commands.c b/src/libmsc/ctrl_commands.c index e37cc94b1..87e9afdd7 100644 --- a/src/libmsc/ctrl_commands.c +++ b/src/libmsc/ctrl_commands.c @@ -29,6 +29,8 @@ #include <stdbool.h> +#define VSUB_USE_CTRL "CTRL" + static struct gsm_network *msc_ctrl_net = NULL; static int get_subscriber_list(struct ctrl_cmd *cmd, void *d) @@ -73,7 +75,7 @@ static int set_sub_expire(struct ctrl_cmd *cmd, void *data) return CTRL_CMD_ERROR; } - vsub = vlr_subscr_find_by_imsi(msc_ctrl_net->vlr, cmd->value); + vsub = vlr_subscr_find_by_imsi(msc_ctrl_net->vlr, cmd->value, VSUB_USE_CTRL); if (!vsub) { LOGP(DCTRL, LOGL_ERROR, "Attempt to expire unknown subscriber IMSI=%s\n", cmd->value); cmd->reply = "IMSI unknown"; @@ -85,11 +87,11 @@ static int set_sub_expire(struct ctrl_cmd *cmd, void *data) if (vlr_subscr_expire(vsub)) LOGP(DCTRL, LOGL_NOTICE, "VLR released subscriber %s\n", vlr_subscr_name(vsub)); - if (vsub->use_count > 1) + if (osmo_use_count_total(&vsub->use_count) > 1) LOGP(DCTRL, LOGL_NOTICE, "Subscriber %s is still in use, should be released soon\n", vlr_subscr_name(vsub)); - vlr_subscr_put(vsub); + vlr_subscr_put(vsub, VSUB_USE_CTRL); return CTRL_CMD_REPLY; } |