Commit 5398e1a5 authored by Christian Heimes's avatar Christian Heimes

Issue #19448: report name / NID in exception message of ASN1Object

parent c2d65e1e
...@@ -585,7 +585,8 @@ class BasicSocketTests(unittest.TestCase): ...@@ -585,7 +585,8 @@ class BasicSocketTests(unittest.TestCase):
self.assertEqual(val, expected) self.assertEqual(val, expected)
self.assertIsInstance(val, ssl._ASN1Object) self.assertIsInstance(val, ssl._ASN1Object)
self.assertRaises(ValueError, ssl._ASN1Object.fromnid, -1) self.assertRaises(ValueError, ssl._ASN1Object.fromnid, -1)
self.assertRaises(ValueError, ssl._ASN1Object.fromnid, 100000) with self.assertRaisesRegex(ValueError, "unknown NID 100000"):
ssl._ASN1Object.fromnid(100000)
for i in range(1000): for i in range(1000):
try: try:
obj = ssl._ASN1Object.fromnid(i) obj = ssl._ASN1Object.fromnid(i)
...@@ -603,7 +604,8 @@ class BasicSocketTests(unittest.TestCase): ...@@ -603,7 +604,8 @@ class BasicSocketTests(unittest.TestCase):
self.assertEqual(ssl._ASN1Object.fromname('serverAuth'), expected) self.assertEqual(ssl._ASN1Object.fromname('serverAuth'), expected)
self.assertEqual(ssl._ASN1Object.fromname('1.3.6.1.5.5.7.3.1'), self.assertEqual(ssl._ASN1Object.fromname('1.3.6.1.5.5.7.3.1'),
expected) expected)
self.assertRaises(ValueError, ssl._ASN1Object.fromname, 'serverauth') with self.assertRaisesRegex(ValueError, "unknown object 'serverauth'"):
ssl._ASN1Object.fromname('serverauth')
class ContextTests(unittest.TestCase): class ContextTests(unittest.TestCase):
......
...@@ -3387,7 +3387,7 @@ PySSL_txt2obj(PyObject *self, PyObject *args, PyObject *kwds) ...@@ -3387,7 +3387,7 @@ PySSL_txt2obj(PyObject *self, PyObject *args, PyObject *kwds)
} }
obj = OBJ_txt2obj(txt, name ? 0 : 1); obj = OBJ_txt2obj(txt, name ? 0 : 1);
if (obj == NULL) { if (obj == NULL) {
PyErr_Format(PyExc_ValueError, "Unknown object"); PyErr_Format(PyExc_ValueError, "unknown object '%.100s'", txt);
return NULL; return NULL;
} }
result = asn1obj2py(obj); result = asn1obj2py(obj);
...@@ -3411,12 +3411,12 @@ PySSL_nid2obj(PyObject *self, PyObject *args) ...@@ -3411,12 +3411,12 @@ PySSL_nid2obj(PyObject *self, PyObject *args)
return NULL; return NULL;
} }
if (nid < NID_undef) { if (nid < NID_undef) {
PyErr_Format(PyExc_ValueError, "NID must be positive."); PyErr_SetString(PyExc_ValueError, "NID must be positive.");
return NULL; return NULL;
} }
obj = OBJ_nid2obj(nid); obj = OBJ_nid2obj(nid);
if (obj == NULL) { if (obj == NULL) {
PyErr_Format(PyExc_ValueError, "Unknown NID"); PyErr_Format(PyExc_ValueError, "unknown NID %i", nid);
return NULL; return NULL;
} }
result = asn1obj2py(obj); result = asn1obj2py(obj);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment