#!/bin/bash function error_exit() { log "$1:$2 failed, exit status $?" exit 1 } trap 'error_exit "${BASH_SOURCE}" "${LINENO}"' ERR LOG=/var/log/pam_script.log function log() { logger --priority auth.info --tag "$0" "$@" echo "$(date) $0: $@" >> $LOG } if [ -n $PAM_USER ] && [ $PAM_USER != "root" ]; then if ([ -n $PAM_SERVICE ] && [[ ( $PAM_SERVICE == "gdm"* || $PAM_SERVICE == *"dm" )]]) || ([ -n $PAM_TTY ] && [[ $PAM_TTY == ":"* ]]); then SERVICE="none" if [ -n $PAM_SERVICE ]; then SERVICE="$PAM_SERVICE" fi TTY_DISPLAY="none" if [ -n $PAM_TTY ]; then TTY_DISPLAY="$PAM_TTY" fi domain="none" if [[ $PAM_USER = *'\'* ]]; then IFS='\' read -ra NAMES <<< "$PAM_USER" log "login: \ ile geldi" for i in "${NAMES[@]}"; do domain="${NAMES[0]}" PAM_USER="${NAMES[1]}" done fi if [[ $domain != "none" ]]; then log "login: $PAM_USER service: $SERVICE tty: $TTY_DISPLAY domain: $domain" sudo python3 /usr/share/ahenk/ahenkd.py login $PAM_USER $SERVICE $TTY_DISPLAY $domain else log "login: $PAM_USER service: $SERVICE tty: $TTY_DISPLAY domain: none" sudo python3 /usr/share/ahenk/ahenkd.py login $PAM_USER $SERVICE $TTY_DISPLAY fi fi fi