From nobody Sun May 5 18:58:51 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1526562564897601.1593504140486; Thu, 17 May 2018 06:09:24 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id F0AB23158BEA; Thu, 17 May 2018 13:09:22 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 5EF211001903; Thu, 17 May 2018 13:09:22 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 022281801255; Thu, 17 May 2018 13:09:20 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.rdu2.redhat.com [10.11.54.5]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w4HD9IDd032129 for ; Thu, 17 May 2018 09:09:18 -0400 Received: by smtp.corp.redhat.com (Postfix) id 9B7316B403; Thu, 17 May 2018 13:09:18 +0000 (UTC) Received: from inaba.usersys.redhat.com (unknown [10.43.2.44]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 3C5046B43D for ; Thu, 17 May 2018 13:09:15 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Thu, 17 May 2018 15:09:11 +0200 Message-Id: <20180517130911.16129-1-abologna@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.11.54.5 X-loop: libvir-list@redhat.com Subject: [libvirt] [jenkins-ci PATCH] lcitool: Use Perl to generate password hashes X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.49]); Thu, 17 May 2018 13:09:23 +0000 (UTC) X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" We claim to be using Python 2 at the moment: however, we rely on crypt.mksalt(), which was introduced in Python 3 and has only been backported to Python 2 in RHEL and Fedora, so the script will only work on those operating systems. We could move to Python 3, but the CI nodes are running on a CentOS 7 machine, where it can't be installed without pulling in third-party repositories and dealing with awkward naming; moreover, Ansible itself is still tied to Python 2, so we would be requiring both to be available. Perl to the rescue! The script ends up being only marginally more verbose and obscure as a result, the indentation is significantly better, and it should finally run on pretty much any platform. Signed-off-by: Andrea Bolognani Reviewed-by: Daniel P. Berrang=C3=A9 --- guests/lcitool | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/guests/lcitool b/guests/lcitool index 5b2efb9..568e52c 100755 --- a/guests/lcitool +++ b/guests/lcitool @@ -18,11 +18,11 @@ die() { hash_file() { PASS_FILE=3D"$1" =20 - python2 -c " -import crypt -password =3D open('$PASS_FILE', 'r').read().strip() -print(crypt.crypt(password, - crypt.mksalt(crypt.METHOD_SHA512)))" + perl -le ' + my @chars =3D ("A".."Z", "a".."z", "0".."9"); + my $salt; $salt .=3D $chars[rand @chars] for 1..16; + open(my $handle, "'"$PASS_FILE"'"); my $pass =3D <$handle>; chomp = $pass; + print crypt("$pass", "\$6\$$salt\$");' } =20 # yaml_var FILE VAR --=20 2.17.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list