mirror of
https://github.com/jupyter/notebook.git
synced 2025-03-07 13:07:22 +08:00
catch EACCES when binding notebook app
can come up for low ports on *ix, or user access control restrictions on Windows. closes #4308
This commit is contained in:
parent
cb953bfcc7
commit
4d48a84c8b
@ -590,9 +590,14 @@ class NotebookApp(BaseIPythonApplication):
|
||||
break
|
||||
# restore the monekypatch
|
||||
socket.AI_ADDRCONFIG = saved_AI_ADDRCONFIG
|
||||
if e.errno != errno.EADDRINUSE:
|
||||
if e.errno == errno.EADDRINUSE:
|
||||
self.log.info('The port %i is already in use, trying another random port.' % port)
|
||||
continue
|
||||
elif e.errno in (errno.EACCES, getattr(errno, 'WSAEACCES', errno.EACCES)):
|
||||
self.log.warn("Permission to listen on port %i denied" % port)
|
||||
continue
|
||||
else:
|
||||
raise
|
||||
self.log.info('The port %i is already in use, trying another random port.' % port)
|
||||
else:
|
||||
self.port = port
|
||||
success = True
|
||||
|
Loading…
Reference in New Issue
Block a user