diff options
Diffstat (limited to 'src/libvlr')
-rw-r--r-- | src/libvlr/vlr.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/libvlr/vlr.c b/src/libvlr/vlr.c index 5610cfb53..625b69983 100644 --- a/src/libvlr/vlr.c +++ b/src/libvlr/vlr.c @@ -519,8 +519,15 @@ void vlr_subscr_expire_lu(void *data) { struct vlr_instance *vlr = data; struct vlr_subscr *vsub, *vsub_tmp; + struct gsm_network *net; struct timespec now; + /* Periodic location update might be disabled from the VTY, + * so we shall not expire subscribers until explicit IMSI Detach. */ + net = vlr->user_ctx; /* XXX move t3212 into struct vlr_instance? */ + if (!net->t3212) + goto done; + if (llist_empty(&vlr->subscribers)) goto done; |