def authorize(self, channel, username, password):
import crypt
import pwd
try:
info = pwd.getpwnam(username)
except KeyError:
return 0, 'No such user.', None
mangled = info[1]
if crypt.crypt(password, mangled[:2]) == mangled:
channel.read_only = 0
fs = filesys.schizophrenic_unix_filesystem(
'/',
info[5],
persona=(info[2], info[3])
)
return 1, 'Login successful.', fs
else:
return 0, 'Password invalid.', None
评论列表
文章目录