mirror of https://github.com/fail2ban/fail2ban
Merge pull request #1088 from leeclemens/bf-595/nonrootmessage
Add specific errors for client socket access (closes 595)pull/983/merge
commit
c0feebfad8
|
@ -26,6 +26,7 @@ ver. 0.9.3 (2015/XX/XXX) - wanna-be-released
|
||||||
* action.d/cloudflare.conf - improved documentation on how to allow
|
* action.d/cloudflare.conf - improved documentation on how to allow
|
||||||
multiple CF accounts, and jail.conf got new compound action
|
multiple CF accounts, and jail.conf got new compound action
|
||||||
definition action_cf_mwl to submit cloudflare report.
|
definition action_cf_mwl to submit cloudflare report.
|
||||||
|
* Check access to socket for more detailed logging on error (gh-595)
|
||||||
|
|
||||||
|
|
||||||
ver. 0.9.2 (2015/04/29) - better-quick-now-than-later
|
ver. 0.9.2 (2015/04/29) - better-quick-now-than-later
|
||||||
|
|
|
@ -171,7 +171,7 @@ class Fail2banClient:
|
||||||
streamRet = False
|
streamRet = False
|
||||||
except socket.error:
|
except socket.error:
|
||||||
if showRet:
|
if showRet:
|
||||||
logSys.error("Unable to contact server. Is it running?")
|
self.__logSocketError()
|
||||||
return False
|
return False
|
||||||
except Exception, e:
|
except Exception, e:
|
||||||
if showRet:
|
if showRet:
|
||||||
|
@ -179,6 +179,26 @@ class Fail2banClient:
|
||||||
return False
|
return False
|
||||||
return streamRet
|
return streamRet
|
||||||
|
|
||||||
|
def __logSocketError(self):
|
||||||
|
try:
|
||||||
|
if os.access(self.__conf["socket"], os.F_OK):
|
||||||
|
# This doesn't check if path is a socket,
|
||||||
|
# but socket.error should be raised
|
||||||
|
if os.access(self.__conf["socket"], os.W_OK):
|
||||||
|
# Permissions look good, but socket.error was raised
|
||||||
|
logSys.error("Unable to contact server. Is it running?")
|
||||||
|
else:
|
||||||
|
logSys.error("Permission denied to socket: %s,"
|
||||||
|
" (you must be root)", self.__conf["socket"])
|
||||||
|
else:
|
||||||
|
logSys.error("Failed to access socket path: %s."
|
||||||
|
" Is fail2ban running?",
|
||||||
|
self.__conf["socket"])
|
||||||
|
except Exception as e:
|
||||||
|
logSys.error("Exception while checking socket access: %s",
|
||||||
|
self.__conf["socket"])
|
||||||
|
logSys.error(e)
|
||||||
|
|
||||||
##
|
##
|
||||||
# Process a command line.
|
# Process a command line.
|
||||||
#
|
#
|
||||||
|
|
Loading…
Reference in New Issue