fix subscriber random extension allocation range

The VTY config allows above 32bit range extensions, but
db_subscriber_alloc_exten() was unable to generate extensions outside of 32bit.

Add VTY regression test and fix the problem by using proper 64bit types.

Related: OS#2253
Change-Id: I9afe6a8833004ecd2f3f936b2d5aa4de8e7dbcb0
diff --git a/openbsc/tests/vty_test_runner.py b/openbsc/tests/vty_test_runner.py
index b886911..92775d5 100644
--- a/openbsc/tests/vty_test_runner.py
+++ b/openbsc/tests/vty_test_runner.py
@@ -485,6 +485,17 @@
         self.assert_(res.find("subscriber-create-on-demand random 9999999998 9999999999"))
         self.vty.command("end")
 
+        res = self.vty.command('subscriber create imsi ' + imsi)
+        print(res)
+        self.assert_(res.find("    IMSI: " + imsi) > 0)
+        self.assert_(res.find("9999999998") > 0 or res.find("9999999999") > 0)
+        self.assert_(res.find("    Extension: ") > 0)
+
+        res = self.vty.command('subscriber imsi ' + imsi + ' delete')
+        self.assert_("" == res)
+
+        res = self.vty.command('show subscriber imsi '+imsi)
+        self.assert_(('% No subscriber found for imsi ' + imsi) == res)
 
 
     def testSubscriberSettings(self):