// // These are the PAM configuration tables // include { types/types.smf } enum pamModType "PAM Module Type" { auth=1 session=2 account=4 password=8 } enum pamCtlFlag "PAM Control Flag" { required=0 requisite=1 optional=2 sufficient=3 } table pamcfg "PAM Configuration Table" { persistent } { fields { service "Service Name" text key(1) type "Module Type" pamModType key(2) sequence "Sequence Number" unsigned key(3) control "Control Flag" pamCtlFlag write(4) module "Module Name" text write(5) arguments "Module Arguments" text write(6) } } table pamdefault "PAM Default Table" { } { fields { service "Service Name" text key type "Module Type" pamModType key sequence "Sequence Number" unsigned key control "Control Flag" pamCtlFlag read module "Module Name" text read arguments "Module Arguments" text read } } table pamstate "PAM State Table" { } { fields { service "Service Name" text key type "Module Type" pamModType key sequence "Sequence Number" unsigned key control "Control Flag" pamCtlFlag read module "Module Name" text read arguments "Module Arguments" text read } } table pammods "PAM Module Table" {} { fields { module "Module Name" text key } } table authmethods "Authentication methods" {} { fields { method "Method" text key } } table authclients "Applications needing authentication" {} { fields { app "Application" text key } } table authmap "Application/auth method mapping" {} { fields { app "Application" text key method "Method" text key } }