File s = new File("/etc/shadow");
if(s.exists() && !s.canRead()) {
// it looks like shadow password is in use, but we don't have read access
LOGGER.fine("/etc/shadow exists but not readable");
POSIX api = PosixAPI.get();
FileStat st = api.stat("/etc/shadow");
if(st==null)
return FormValidation.error(Messages.PAMSecurityRealm_ReadPermission());
Passwd pwd = api.getpwuid(api.geteuid());
String user;