diff --git a/Lib/os.py b/Lib/os.py index 31002acb75b..2d1b29b57bf 100644 --- a/Lib/os.py +++ b/Lib/os.py @@ -723,7 +723,7 @@ if not _exists("urandom"): """ try: _urandomfd = open("/dev/urandom", O_RDONLY) - except: + except (OSError, IOError): raise NotImplementedError("/dev/urandom (or equivalent) not found") bytes = "" while len(bytes) < n: diff --git a/Misc/NEWS b/Misc/NEWS index 9eeeff8b4ab..b498cc31c39 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -61,6 +61,9 @@ Core and builtins Library ------- +- os.urandom no longer masks unrelated exceptions like SystemExit or + KeyboardInterrupt. + - Bug #1525866: Don't copy directory stat times in shutil.copytree on Windows