Escape the encrypted password after calling crypt with the right salt.
This commit is contained in:
parent
1534b0a27c
commit
daee5b7148
@ -59,12 +59,17 @@ SetPasswordJob::exec()
|
|||||||
return Calamares::JobResult::error( tr( "Bad destination system path." ),
|
return Calamares::JobResult::error( tr( "Bad destination system path." ),
|
||||||
tr( "rootMountPoint is %1" ).arg( destDir.absolutePath() ) );
|
tr( "rootMountPoint is %1" ).arg( destDir.absolutePath() ) );
|
||||||
|
|
||||||
QByteArray data = crypt( m_newPassword.toLatin1(), QString( "\\$6\\$%1\\$" ).arg( m_userName ).toLatin1() );
|
QString encrypted = QString::fromLatin1(
|
||||||
|
crypt( m_newPassword.toLatin1(),
|
||||||
|
QString( "$6$%1$" )
|
||||||
|
.arg( m_userName )
|
||||||
|
.toLatin1() ) );
|
||||||
|
encrypted = encrypted.replace( '$', "\\$" );
|
||||||
|
|
||||||
int ec = CalamaresUtils::System::instance()->
|
int ec = CalamaresUtils::System::instance()->
|
||||||
targetEnvCall( { "usermod",
|
targetEnvCall( { "usermod",
|
||||||
"-p",
|
"-p",
|
||||||
QString::fromLatin1( data ),
|
encrypted,
|
||||||
m_userName } );
|
m_userName } );
|
||||||
if ( ec )
|
if ( ec )
|
||||||
return Calamares::JobResult::error( tr( "Cannot set password for user %1." )
|
return Calamares::JobResult::error( tr( "Cannot set password for user %1." )
|
||||||
|
Loading…
Reference in New Issue
Block a user