parent
a776c49ade
commit
9de3d39e6c
1 changed files with 7 additions and 7 deletions
14
src/pam.py
14
src/pam.py
|
|
@ -35,7 +35,7 @@ def doAuth(pamh):
|
||||||
if config.getboolean("core", "detection_notice"):
|
if config.getboolean("core", "detection_notice"):
|
||||||
pamh.conversation(pamh.Message(pamh.PAM_TEXT_INFO, "Attempting face detection"))
|
pamh.conversation(pamh.Message(pamh.PAM_TEXT_INFO, "Attempting face detection"))
|
||||||
|
|
||||||
syslog.syslog(syslog.LOG_AUTH, "[HOWDY] Attempting facial authentication for user " + pamh.get_user())
|
syslog.syslog(syslog.LOG_INFO | syslog.LOG_AUTH, "[HOWDY] Attempting facial authentication for user " + pamh.get_user())
|
||||||
|
|
||||||
# Run compare as python3 subprocess to circumvent python version and import issues
|
# Run compare as python3 subprocess to circumvent python version and import issues
|
||||||
status = subprocess.call(["/usr/bin/python3", os.path.dirname(os.path.abspath(__file__)) + "/compare.py", pamh.get_user()])
|
status = subprocess.call(["/usr/bin/python3", os.path.dirname(os.path.abspath(__file__)) + "/compare.py", pamh.get_user()])
|
||||||
|
|
@ -45,23 +45,23 @@ def doAuth(pamh):
|
||||||
if not config.getboolean("core", "suppress_unknown"):
|
if not config.getboolean("core", "suppress_unknown"):
|
||||||
pamh.conversation(pamh.Message(pamh.PAM_ERROR_MSG, "No face model known"))
|
pamh.conversation(pamh.Message(pamh.PAM_ERROR_MSG, "No face model known"))
|
||||||
|
|
||||||
syslog.syslog(syslog.LOG_AUTH, "[HOWDY] Failure, no face model known")
|
syslog.syslog(syslog.LOG_NOTICE | syslog.LOG_AUTH, "[HOWDY] Failure, no face model known")
|
||||||
return pamh.PAM_USER_UNKNOWN
|
return pamh.PAM_USER_UNKNOWN
|
||||||
|
|
||||||
# Status 11 means we exceded the maximum retry count
|
# Status 11 means we exceded the maximum retry count
|
||||||
elif status == 11:
|
elif status == 11:
|
||||||
pamh.conversation(pamh.Message(pamh.PAM_ERROR_MSG, "Face detection timeout reached"))
|
pamh.conversation(pamh.Message(pamh.PAM_ERROR_MSG, "Face detection timeout reached"))
|
||||||
syslog.syslog(syslog.LOG_AUTH, "[HOWDY] Failure, timeout reached")
|
syslog.syslog(syslog.LOG_INFO | syslog.LOG_AUTH, "[HOWDY] Failure, timeout reached")
|
||||||
return pamh.PAM_AUTH_ERR
|
return pamh.PAM_AUTH_ERR
|
||||||
|
|
||||||
# Status 12 means we aborted
|
# Status 12 means we aborted
|
||||||
elif status == 12:
|
elif status == 12:
|
||||||
syslog.syslog(syslog.LOG_AUTH, "[HOWDY] Failure, general abort")
|
syslog.syslog(syslog.LOG_INFO | syslog.LOG_AUTH, "[HOWDY] Failure, general abort")
|
||||||
return pamh.PAM_AUTH_ERR
|
return pamh.PAM_AUTH_ERR
|
||||||
|
|
||||||
# Status 13 means the image was too dark
|
# Status 13 means the image was too dark
|
||||||
elif status == 13:
|
elif status == 13:
|
||||||
syslog.syslog(syslog.LOG_AUTH, "[HOWDY] Failure, image too dark")
|
syslog.syslog(syslog.LOG_INFO | syslog.LOG_AUTH, "[HOWDY] Failure, image too dark")
|
||||||
pamh.conversation(pamh.Message(pamh.PAM_ERROR_MSG, "Face detection image too dark"))
|
pamh.conversation(pamh.Message(pamh.PAM_ERROR_MSG, "Face detection image too dark"))
|
||||||
return pamh.PAM_AUTH_ERR
|
return pamh.PAM_AUTH_ERR
|
||||||
# Status 0 is a successful exit
|
# Status 0 is a successful exit
|
||||||
|
|
@ -70,12 +70,12 @@ def doAuth(pamh):
|
||||||
if not config.getboolean("core", "no_confirmation"):
|
if not config.getboolean("core", "no_confirmation"):
|
||||||
pamh.conversation(pamh.Message(pamh.PAM_TEXT_INFO, "Identified face as " + pamh.get_user()))
|
pamh.conversation(pamh.Message(pamh.PAM_TEXT_INFO, "Identified face as " + pamh.get_user()))
|
||||||
|
|
||||||
syslog.syslog(syslog.LOG_AUTH, "[HOWDY] Login approved")
|
syslog.syslog(syslog.LOG_INFO | syslog.LOG_AUTH, "[HOWDY] Login approved")
|
||||||
return pamh.PAM_SUCCESS
|
return pamh.PAM_SUCCESS
|
||||||
|
|
||||||
# Otherwise, we can't discribe what happend but it wasn't successful
|
# Otherwise, we can't discribe what happend but it wasn't successful
|
||||||
pamh.conversation(pamh.Message(pamh.PAM_ERROR_MSG, "Unknown error: " + str(status)))
|
pamh.conversation(pamh.Message(pamh.PAM_ERROR_MSG, "Unknown error: " + str(status)))
|
||||||
syslog.syslog(syslog.LOG_AUTH, "[HOWDY] Failure, unknown error" + str(status))
|
syslog.syslog(syslog.LOG_INFO | syslog.LOG_AUTH, "[HOWDY] Failure, unknown error" + str(status))
|
||||||
return pamh.PAM_SYSTEM_ERR
|
return pamh.PAM_SYSTEM_ERR
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue