Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

Benutzer

Quelle  mkpamrules

  Sprache: C
 

#!/bin/sh

Find suitable PAM config file

rules="$1"
srcdir="$2"
outfile="$3"

service="xrdp-sesman"
pamdir="/etc/pam.d"
pamdir_suse="/usr/lib/pam.d"
if [ ! -d $pamdir_suse ]; then
   Older SUSE distros uses /usr/etc/pam.d
   pamdir_suse="/usr/etc/pam.d"
fi

Modules needed by xrdp-sesman.unix, if we get to that
unix_modules_needed="pam_unix.so pam_env.so pam_nologin.so"

Directories where pam modules might be installed
Add to this list as platforms are added
pam_module_dir_searchpath="/lib*/security /usr/lib*/security /lib/*/security /usr/lib/*/security"

find_pam_module_dir()
{
  Looks for the pam security module directory
  set -- $pam_module_dir_searchpath
  for d in "$@"do
    if [ -s "$d/pam_unix.so" ]; then
      echo "$d"
      break
    fi
  done
}

can_apply_unix_config()
{
  result=0
  module_dir="$1"
  for m in $unix_modules_needed; do
    if [ ! -s "$module_dir/$m" ]; then
      echo "  ** $m not found" >&2
      result=1
    fi
  done

  return $result
}

guess_rules ()
{
  rules=
  if [ -s "$pamdir/password-auth" ]; then
    rules="redhat"

  elif [ -s "$pamdir_suse/common-account" ]; then
    rules="suse"

  elif [ -s "$pamdir/common-account" ]; then
    if grep "^@include" "$pamdir/passwd" >/dev/null 2>&1; then
      rules="debian"
    else
      rules="suse"
    fi

  elif [ ! -f "$pamdir/system-auth" -a -s "$pamdir/system" ]; then
    rules="freebsd"

  elif [ -s "$pamdir/authorization" ]; then
    rules="macos"

  elif [ -s "$pamdir/system-remote-login" ]; then
    rules="arch"

  elif [ -s "$pamdir/system-auth" ]; then
    rules="system"

  else
    module_dir=`find_pam_module_dir`
    if [ -d "$module_dir" ]; then
      #echo "- Found pam modules in $module_dir" >&2
      if can_apply_unix_config "$module_dir" ; then
        rules="unix"
      fi
    fi
  fi
}

if [ "$rules" = "auto" ]; then
  guess_rules
  if [ -z "$rules" ]; then
    echo "** Can't guess PAM rules for this system"
    exit 1
  fi
fi

if [ -s "$srcdir/$service.$rules" ]; then
  ln -nsf "$srcdir/$service.$rules" "$outfile"
else
  echo "Cannot find $srcdir/$service.$rules"
  exit 1
fi

Messung V0.5 in Prozent
C=99 H=90 G=94

¤ Dauer der Verarbeitung: 0.12 Sekunden  (vorverarbeitet am  2026-07-10) ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik