]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
Properly shortcircuit regex
authorMichael Giagnocavo <mgg@giagnocavo.net>
Wed, 29 Jul 2009 19:15:00 +0000 (19:15 +0000)
committerMichael Giagnocavo <mgg@giagnocavo.net>
Wed, 29 Jul 2009 19:15:00 +0000 (19:15 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@14417 d0543943-73ff-0310-b7d9-9358b9ac24b2

src/mod/languages/mod_managed/managed/examples/easyroute/App.config
src/mod/languages/mod_managed/managed/examples/easyroute/easyroute.fs

index b2310e2f816efca7b37215b3a7225b9401080a53..1611fce43c0974204e86f83c028f15ec853f9d44 100644 (file)
@@ -7,7 +7,7 @@
     <!-- query can be changed, but fields must be in the same order, and the number parameter must be ? -->\r
     <add key="query" value="SELECT gateways.gateway_ip, gateways.group, gateways.limit, gateways.techprofile, numbers.acctcode, numbers.translated from gateways, numbers where numbers.number = ? and numbers.gateway_id = gateways.gateway_id;" />\r
     \r
-    <!-- To avoid other injections, the incoming number will remove characters matching this regex. Default [^0-9#\*] allows only digits, # and *.-->\r
+    <!-- To avoid other injections, the incoming number will remove characters matching this regex. Default [^0-9#\*] allows only digits, # and *. Use (?!.) to disable. -->\r
     <add key="numberRegexFilter" value="[^0-9#\*]" />\r
   </appSettings>\r
 </configuration>
\ No newline at end of file
index 3779190b17ba1eb0541122a686ac9157ffe04f30..4798e1e575015d30369d378d062a1c1771b96aad 100644 (file)
@@ -48,7 +48,7 @@ module easyroute =
     let regexOpts = Text.RegularExpressions.RegexOptions.Compiled ||| Text.RegularExpressions.RegexOptions.CultureInvariant\r
     let lookup (number: string) sep =\r
         try\r
-            let number = if numberRegexFilter = "" then number else Text.RegularExpressions.Regex.Replace(number, numberRegexFilter, "", regexOpts)\r
+            let number = if numberRegexFilter = "(?!.)" then number else Text.RegularExpressions.Regex.Replace(number, numberRegexFilter, "", regexOpts)\r
             use conn = new Odbc.OdbcConnection(connString)\r
             use comm = new Odbc.OdbcCommand(query, conn)\r
             comm.Parameters.AddWithValue("@number", number) |> ignore\r