Adjusted to work with shadow passwords.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25056 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -6,12 +6,14 @@ SetSubDirSupportedPlatformsBeOSCompatible ;
|
|||||||
#UsePrivateHeaders tracker ;
|
#UsePrivateHeaders tracker ;
|
||||||
#SubDirHdrs $(HAIKU_TOP) src kits tracker ;
|
#SubDirHdrs $(HAIKU_TOP) src kits tracker ;
|
||||||
|
|
||||||
|
UseHeaders [ FDirName $(HAIKU_TOP) src bin multiuser ] ;
|
||||||
|
|
||||||
Application Login :
|
Application Login :
|
||||||
LoginApp.cpp
|
LoginApp.cpp
|
||||||
LoginWindow.cpp
|
LoginWindow.cpp
|
||||||
LoginView.cpp
|
LoginView.cpp
|
||||||
main.cpp
|
main.cpp
|
||||||
: be tracker
|
: be tracker libmultiuser_utils.a
|
||||||
: Login.rdef
|
: Login.rdef
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|||||||
@@ -3,10 +3,14 @@
|
|||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <pwd.h>
|
#include <pwd.h>
|
||||||
|
#include <shadow.h>
|
||||||
|
|
||||||
#include "LoginApp.h"
|
#include "LoginApp.h"
|
||||||
#include "LoginWindow.h"
|
#include "LoginWindow.h"
|
||||||
|
|
||||||
|
#include "multiuser_utils.h"
|
||||||
|
|
||||||
|
|
||||||
const char *kLoginAppSig = "application/x-vnd.Haiku-Login";
|
const char *kLoginAppSig = "application/x-vnd.Haiku-Login";
|
||||||
|
|
||||||
|
|
||||||
@@ -98,11 +102,9 @@ LoginApp::ValidateLogin(const char *login, const char *password/*, bool force =
|
|||||||
return B_OK;
|
return B_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
// XXX: check for shadow pass
|
if (verify_password(pwd, getspnam(login), password))
|
||||||
if (strcmp(crypt(password, pwd->pw_passwd), pwd->pw_passwd))
|
return B_OK;
|
||||||
return B_NOT_ALLOWED;
|
return B_NOT_ALLOWED;
|
||||||
|
|
||||||
return B_OK;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user