Skip to content

Commit 28a7ed9

Browse files
author
A. Jesse Jiryu Davis
committed
Prohibit +/-infinity as timeout values
1 parent 1da312e commit 28a7ed9

File tree

2 files changed

+3
-1
lines changed

2 files changed

+3
-1
lines changed

pymongo/common.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ def validate_positive_float(option, value):
9393
value = float(value)
9494
except (ValueError, TypeError):
9595
raise err
96-
if value <= 0:
96+
if not 0 < value < float('inf'):
9797
raise err
9898

9999
return value

test/test_uri_parser.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,8 @@ def test_split_options(self):
8484
self.assertRaises(ConfigurationError, split_options, 'socketTimeoutMS=0.0')
8585
self.assertRaises(ConfigurationError, split_options, 'connectTimeoutMS=foo')
8686
self.assertRaises(ConfigurationError, split_options, 'connectTimeoutMS=0.0')
87+
self.assertRaises(ConfigurationError, split_options, 'connectTimeoutMS=inf')
88+
self.assertRaises(ConfigurationError, split_options, 'connectTimeoutMS=-inf')
8789
self.assertTrue(split_options('socketTimeoutMS=300'))
8890
self.assertTrue(split_options('connectTimeoutMS=300'))
8991
self.assertEqual({'sockettimeoutms': 0.3}, split_options('socketTimeoutMS=300'))

0 commit comments

Comments
 (0)