map_masq: don't assume that imsi_list is a gb_tree anymore
Introduce a imsi_list:num_entries/1 function to determine number of
entries.
diff --git a/src/imsi_list.erl b/src/imsi_list.erl
index 005940b..9aa555f 100644
--- a/src/imsi_list.erl
+++ b/src/imsi_list.erl
@@ -35,7 +35,8 @@
-module(imsi_list).
-author('Harald Welte <laforge@gnumonks.org>').
--export([read_file/1, read_list/1, match_imsi/2, match_imsi/3]).
+-export([read_file/1, read_list/1, match_imsi/2, match_imsi/3,
+ num_entries/1]).
-record(state, {forward, reverse}).
@@ -128,3 +129,6 @@
none ->
{error, no_entry}
end.
+
+num_entries(State) when is_record(State, state) ->
+ gb_trees:size(State#state.forward).
diff --git a/src/map_masq.erl b/src/map_masq.erl
index 907d1c4..beaba41 100644
--- a/src/map_masq.erl
+++ b/src/map_masq.erl
@@ -479,7 +479,7 @@
{ok, ImsiListFile} ->
{ok, ImsiTree} = imsi_list:read_file(ImsiListFile),
io:format("(Re)generated IMSI rewrite table: ~p entries~n",
- [gb_trees:size(ImsiTree)]),
+ [imsi_list:num_entries(ImsiTree)]),
application:set_env(mgw_nat, imsi_rewrite_tree, ImsiTree);
_ ->
ok