From owner-freebsd-bugs@FreeBSD.ORG Sat Sep 1 13:37:58 2012 Return-Path: Delivered-To: freebsd-bugs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8BC8C106566C; Sat, 1 Sep 2012 13:37:58 +0000 (UTC) (envelope-from apyhalov@gmail.com) Received: from mail-ey0-f182.google.com (mail-ey0-f182.google.com [209.85.215.182]) by mx1.freebsd.org (Postfix) with ESMTP id E49218FC17; Sat, 1 Sep 2012 13:37:57 +0000 (UTC) Received: by eaak11 with SMTP id k11so1213641eaa.13 for ; Sat, 01 Sep 2012 06:37:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=gLMbJqIv90pRxa8EIIQnNiu29MTMakmACncLjZ7KSWo=; b=imNdqHUP2vIxftxrApDMQWAHzf1vn6TqT+GPv1p4yMRfsDHPlMqo2QfqJ9rinTm9pH VznogdpXCvrCirZRxiqElE4VYRBZwLOO03hQ33anzJekizaDomu4hQKHLXbCCKJEoaCX y60pfe43gEmi+Wo3TKP5AMRxoYDsDRv7pituFSm2aoXQJaM2nq92ZBbdOwcUyR08iqJY eL0Vfza6nDauAwTQcTCQMYg55TJfui7mP+CqfWYQEbk1Q/YMqvp8aVKbfX5vQJeXYfYn lzn2+AV2RzKTrjiLNrEjs+p+BKhvEQs6/ciad+FQsPIz1PpyDszT59lTmH7oCQGSliX/ nsxA== MIME-Version: 1.0 Received: by 10.14.179.200 with SMTP id h48mr14913807eem.12.1346506671455; Sat, 01 Sep 2012 06:37:51 -0700 (PDT) Received: by 10.14.129.130 with HTTP; Sat, 1 Sep 2012 06:37:51 -0700 (PDT) In-Reply-To: References: Date: Sat, 1 Sep 2012 17:37:51 +0400 Message-ID: From: Alexander Pyhalov To: bug-followup@freebsd.org, pepper@reppep.com, freebsd-bugs@freebsd.org Content-Type: multipart/mixed; boundary=047d7b603f74d6feeb04c8a403cb X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: Subject: Re: bin/170278: [request] Add --check option to md5(1) X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Sep 2012 13:37:58 -0000 --047d7b603f74d6feeb04c8a403cb Content-Type: text/plain; charset=ISO-8859-1 Hello. I''ve modified patch for md5.c, so now md5/sha256/etc handles input files containing checksums in two formats: ALGORITHM(path_to_file) = checksum and checksum path_to_file. It seems, this patch (which at least applies to md5.c in 8.3) needs testing. -- Best regards, Alexander Pyhalov --047d7b603f74d6feeb04c8a403cb Content-Type: text/plain; charset=US-ASCII; name="patch.txt" Content-Disposition: attachment; filename="patch.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_h6kr99d31 LS0tIC91c3Ivc3JjL3NiaW4vbWQ1L21kNS5jCTIwMTItMDYtMDYgMjE6NDI6MTAuOTAxMjA4MTAx ICswNDAwCisrKyBtZDUuYwkyMDEyLTA5LTAxIDE3OjI3OjQ5Ljk1NzY1NTIyNSArMDQwMApAQCAt MjAsMTAgKzIwLDEzIEBACiAjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CiBfX0ZCU0RJRCgiJEZyZWVC U0QkIik7CiAKKyNpbmNsdWRlIDxzeXMvcGFyYW0uaD4KICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4K ICNpbmNsdWRlIDxzeXMvdGltZS5oPgogI2luY2x1ZGUgPHN5cy9yZXNvdXJjZS5oPgorI2luY2x1 ZGUgPGN0eXBlLmg+CiAjaW5jbHVkZSA8ZXJyLmg+CisjaW5jbHVkZSA8Z2V0b3B0Lmg+CiAjaW5j bHVkZSA8bWQ1Lmg+CiAjaW5jbHVkZSA8cmlwZW1kLmg+CiAjaW5jbHVkZSA8c2hhLmg+CkBAIC00 MSw2ICs0NCw3IEBACiAjZGVmaW5lIFRFU1RfQkxPQ0tfQ09VTlQgMTAwMDAwCiAjZGVmaW5lIE1E VEVTVENPVU5UIDgKIAoraW50IGZmbGFnOwogaW50IHFmbGFnOwogaW50IHJmbGFnOwogaW50IHNm bGFnOwpAQCAtNzMsNiArNzcsOCBAQAogc3RhdGljIHZvaWQgTURUZXN0U3VpdGUoQWxnb3JpdGht X3QgKik7CiBzdGF0aWMgdm9pZCBNREZpbHRlcihBbGdvcml0aG1fdCAqLCBpbnQpOwogc3RhdGlj IHZvaWQgdXNhZ2UoQWxnb3JpdGhtX3QgKik7CitzdGF0aWMgdm9pZCBQcm9jZXNzQ2hlY2tBZ2Fp bnN0RmlsZShjaGFyICpmaWxlbmFtZSwgaW50ICpmYWlsZWQsIGludCBkaWdlc3QpOworc3RhdGlj IHZvaWQgc3RydG91cHBlcihjaGFyICpzKTsKIAogdHlwZWRlZiB1bmlvbiB7CiAJTUQ1X0NUWCBt ZDU7CkBAIC04NSw2ICs5MSwxMyBAQAogCVNIQTI1Nl9ESUdFU1RfTEVOR1RILCBSSVBFTUQxNjBf RElHRVNUX0xFTkdUSCkqMisxICovCiAjZGVmaW5lIEhFWF9ESUdFU1RfTEVOR1RIIDY1CiAKKy8q IG1heGltdW0gbGVuZ3RoIG9mIHN0cmluZyBpbiBjb250cm9sc3VtIGZpbGUgLSBkaWdlc3QgcGx1 cyBmaWxlIHBhdGgKKwlwbHVzIHNvbWUgZGlsaW1pdGVycyAqLworI2RlZmluZSBNQVhfU1RSSU5H X0xFTkdUSCAoSEVYX0RJR0VTVF9MRU5HVEgrTUFYUEFUSExFTis2NCkKKworLyogbWF4aW11bSBs ZW5ndGggb2YgYWxnb3JpdGhtIG5hbWUgKi8KKyNkZWZpbmUgTUFYX0FMR19MRU5HVEggMTAKKwog LyogYWxnb3JpdGhtIGZ1bmN0aW9uIHRhYmxlICovCiAKIHN0cnVjdCBBbGdvcml0aG1fdCBBbGdv cml0aG1bXSA9IHsKQEAgLTEyNiw2ICsxMzksOSBAQAogCWludAlmYWlsZWQ7CiAgCXVuc2lnbmVk CWRpZ2VzdDsKICAJY29uc3QgY2hhcioJcHJvZ25hbWU7CisJc3RydWN0IG9wdGlvbiBsb25nb3B0 c1tdID0geyAKKwkJeyAiY2hlY2siLG5vX2FyZ3VtZW50LE5VTEwsJ2YnfQorICAgICAgICB9Owog CiAgCWlmICgocHJvZ25hbWUgPSBzdHJyY2hyKGFyZ3ZbMF0sICcvJykpID09IE5VTEwpCiAgCQlw cm9nbmFtZSA9IGFyZ3ZbMF07CkBAIC0xNDIsMTEgKzE1OCwxNCBAQAogCWZhaWxlZCA9IDA7CiAJ Y2hlY2tBZ2FpbnN0ID0gTlVMTDsKIAljaGVja3NGYWlsZWQgPSAwOwotCXdoaWxlICgoY2ggPSBn ZXRvcHQoYXJnYywgYXJndiwgImM6cHFyczp0eCIpKSAhPSAtMSkKKwl3aGlsZSAoKGNoID0gZ2V0 b3B0X2xvbmcoYXJnYywgYXJndiwgImM6cGZxcnM6dHgiLGxvbmdvcHRzLE5VTEwpKSAhPSAtMSkK IAkJc3dpdGNoIChjaCkgewogCQljYXNlICdjJzoKIAkJCWNoZWNrQWdhaW5zdCA9IG9wdGFyZzsK IAkJCWJyZWFrOworCQljYXNlICdmJzoKKwkJCWZmbGFnID0gMTsKKwkJCWJyZWFrOwogCQljYXNl ICdwJzoKIAkJCU1ERmlsdGVyKCZBbGdvcml0aG1bZGlnZXN0XSwgMSk7CiAJCQlicmVhazsKQEAg LTE3NCwyOSArMTkzLDM1IEBACiAKIAlpZiAoKmFyZ3YpIHsKIAkJZG8gewotCQkJcCA9IEFsZ29y aXRobVtkaWdlc3RdLkZpbGUoKmFyZ3YsIGJ1Zik7Ci0JCQlpZiAoIXApIHsKLQkJCQl3YXJuKCIl cyIsICphcmd2KTsKLQkJCQlmYWlsZWQrKzsKKyAJCQlpZiAoZmZsYWcpeworCQkJCVByb2Nlc3ND aGVja0FnYWluc3RGaWxlKCphcmd2LCZmYWlsZWQsZGlnZXN0KTsKIAkJCX0gZWxzZSB7Ci0JCQkJ aWYgKHFmbGFnKQotCQkJCQlwcmludGYoIiVzIiwgcCk7Ci0JCQkJZWxzZSBpZiAocmZsYWcpCi0J CQkJCXByaW50ZigiJXMgJXMiLCBwLCAqYXJndik7Ci0JCQkJZWxzZQotCQkJCQlwcmludGYoIiVz ICglcykgPSAlcyIsCi0JCQkJCSAgICBBbGdvcml0aG1bZGlnZXN0XS5uYW1lLCAqYXJndiwgcCk7 Ci0JCQkJaWYgKGNoZWNrQWdhaW5zdCAmJiBzdHJjbXAoY2hlY2tBZ2FpbnN0LHApKQotCQkJCXsK LQkJCQkJY2hlY2tzRmFpbGVkKys7Ci0JCQkJCWlmICghcWZsYWcpCi0JCQkJCQlwcmludGYoIiBb IEZhaWxlZCBdIik7CisJCQkJcCA9IEFsZ29yaXRobVtkaWdlc3RdLkZpbGUoKmFyZ3YsIGJ1Zik7 CisJCQkJaWYgKCFwKSB7CisJCQkJCXdhcm4oIiVzIiwgKmFyZ3YpOworCQkJCQlmYWlsZWQrKzsK KwkJCQl9IGVsc2UgeworCQkJCQlpZiAocWZsYWcpCisJCQkJCQlwcmludGYoIiVzIiwgcCk7CisJ CQkJCWVsc2UgaWYgKHJmbGFnKQorCQkJCQkJcHJpbnRmKCIlcyAlcyIsIHAsICphcmd2KTsKKwkJ CQkJZWxzZQorCQkJCQkJcHJpbnRmKCIlcyAoJXMpID0gJXMiLAorCQkJCQkJCUFsZ29yaXRobVtk aWdlc3RdLm5hbWUsICphcmd2LCBwKTsKKwkJCQkJaWYgKGNoZWNrQWdhaW5zdCAmJiBzdHJjbXAo Y2hlY2tBZ2FpbnN0LHApKQorCQkJCQl7CisJCQkJCQljaGVja3NGYWlsZWQrKzsKKwkJCQkJCWlm ICghcWZsYWcpCisJCQkJCQkJcHJpbnRmKCIgWyBGYWlsZWQgXSIpOworCQkJCQl9CisJCQkJCXBy aW50ZigiXG4iKTsKIAkJCQl9Ci0JCQkJcHJpbnRmKCJcbiIpOwogCQkJfQogCQl9IHdoaWxlICgq Kythcmd2KTsKLQl9IGVsc2UgaWYgKCFzZmxhZyAmJiAob3B0aW5kID09IDEgfHwgcWZsYWcgfHwg cmZsYWcpKQorCX0gZWxzZSBpZiAoIWZmbGFnICYmICFzZmxhZyAmJiAob3B0aW5kID09IDEgfHwg cWZsYWcgfHwgcmZsYWcpKQogCQlNREZpbHRlcigmQWxnb3JpdGhtW2RpZ2VzdF0sIDApOworCWVs c2UgaWYgKGZmbGFnKQorCQlQcm9jZXNzQ2hlY2tBZ2FpbnN0RmlsZShOVUxMLCZmYWlsZWQsZGln ZXN0KTsKIAogCWlmIChmYWlsZWQgIT0gMCkKIAkJcmV0dXJuICgxKTsKQEAgLTIwNSw2ICsyMzAs MTM1IEBACiAKIAlyZXR1cm4gKDApOwogfQorCisvKgorICogUmVhZHMgYSBmaWxlIHdpdGggY29u dHJvbCBzdW1zIGFuZCBmaWxlbmFtZXMgYW5kIGNoZWNrcyB0aGVtCisgKi8KK3N0YXRpYyB2b2lk CitQcm9jZXNzQ2hlY2tBZ2FpbnN0RmlsZShjaGFyICpmaWxlbmFtZSwgaW50ICpmYWlsZWQsIGlu dCBkaWdlc3QpeworCWNoYXIgICAgYnVmW0hFWF9ESUdFU1RfTEVOR1RIXTsKKwljaGFyICAgIGNo ZWNrQWdhaW5zdEN1cltIRVhfRElHRVNUX0xFTkdUSF07CisgIAljaGFyIAlzdHJhcltNQVhfU1RS SU5HX0xFTkdUSCsxXTsKKwljaGFyCSpjdXI7CisJY2hhcgkqc3RyOworCWNoYXIJY3VyZm5hbWVb TUFYUEFUSExFTisxXTsKKwljaGFyCWFsZ1tNQVhfQUxHX0xFTkdUSCsxXTsKKwljaGFyIAkqcDsK KwlGSUxFIAkqZmw7CisJaW50IGZpcnN0LG5leHQsZXEsbGVuLHBhcnNlZDsKKworCWlmKGZpbGVu YW1lKQorCQlmbD1mb3BlbihmaWxlbmFtZSwiciIpOworCWVsc2UgeworCQlmbD1zdGRpbjsKKwl9 CisJaWYoZmwpeworCQlzdHI9JnN0cmFyWzBdOworCQliemVybyhzdHIsTUFYX1NUUklOR19MRU5H VEgpOworCQl3aGlsZShmZ2V0cyhzdHIsTUFYX1NUUklOR19MRU5HVEgsZmwpKXsKKwkJCXBhcnNl ZD0wOworCQkJYnplcm8oY2hlY2tBZ2FpbnN0Q3VyLEhFWF9ESUdFU1RfTEVOR1RIKTsKKyAgICAg ICAgICAgICAgICAgICAgICAgIGJ6ZXJvKGN1cmZuYW1lLE1BWFBBVEhMRU4pOworCQkJYnplcm8o YWxnLE1BWF9BTEdfTEVOR1RIKTsKKworCQkJd2hpbGUoaXNzcGFjZSgqc3RyKSYmICpzdHIhPSdc MCcpCisJCQkJc3RyKys7CisJCQlmaXJzdD1zdHJjc3BuKHN0ciwiKCIpOworCQkJaWYoZmlyc3Qp IHsKKwkJCQljdXI9JnN0cltmaXJzdF07CisKKwkJCQluZXh0PXN0cmxlbihzdHIpOworCQkJCXdo aWxlKG5leHQ+Zmlyc3QgJiYgc3RyW25leHRdIT0nKScpCisJCQkJICBuZXh0LS07CisJCQkJCisJ CQkJaWYoZmlyc3QmJm5leHQgJiYgbmV4dD5maXJzdCAmJiBuZXh0LWZpcnN0PD1NQVhQQVRITEVO KXsKKwkJCQkgIHN0cm5jcHkoY3VyZm5hbWUsJnN0cltmaXJzdCsxXSxuZXh0LWZpcnN0KTsKKwkJ CQkgIGN1cmZuYW1lW25leHQtZmlyc3QtMV09J1wwJzsKKwkJCQkgIHdoaWxlKGZpcnN0PjAgJiYg aXNzcGFjZShzdHJbZmlyc3QtMV0pKQorCQkJCQlmaXJzdC0tOworICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGlmKGZpcnN0PD1NQVhfQUxHX0xFTkdUSCl7CisJCQkJCXN0cm5jcHko YWxnLHN0cixmaXJzdCk7CisJCQkJCXN0cnRvdXBwZXIoYWxnKTsKKwkJCQkJZXE9c3RyY3Nwbigm c3RyW25leHRdLCI9Iik7CisJCQkJCWVxKys7CisJCQkJCXdoaWxlKGlzc3BhY2Uoc3RyW2VxK25l eHRdKSAmJiBzdHJbZXErbmV4dF0hPSdcMCcpCisJCQkJCQllcSsrOworCQkJCQlsZW49c3RybGVu KHN0cik7CisJCQkJCXdoaWxlKGlzc3BhY2Uoc3RyW2xlbl0pJiYgbGVuPm5leHQpCisJCQkJCQls ZW4tLTsKKwkJCQkJaWYobGVuLW5leHQtZXE8PUhFWF9ESUdFU1RfTEVOR1RIKXsKKwkJCQkJCXN0 cm5jcHkoY2hlY2tBZ2FpbnN0Q3VyLCZzdHJbZXErbmV4dF0sbGVuLWVxLW5leHQpOworCQkJCQkJ Y2hlY2tBZ2FpbnN0Q3VyW2xlbi1lcS1uZXh0LTFdPSdcMCc7CisJCQkJCQlwYXJzZWQ9MTsKKwkJ CQkJfQorCQkJCQkKKwkJCQkJIAorIAkJCQkgIH0KKworCQkJCX0gCisJCQkJCQorCQkJfSAKKwkJ CWlmKCFwYXJzZWQpIHsKKwkJCQlmaXJzdD1zdHJjc3BuKHN0ciwiXHQgIik7CisJCQkJaWYoZmly c3QgJiYgZmlyc3Q8PUhFWF9ESUdFU1RfTEVOR1RIKXsKKwkJCQkJc3RybmNweShjaGVja0FnYWlu c3RDdXIsc3RyLGZpcnN0KTsKKwkJCQkJY2hlY2tBZ2FpbnN0Q3VyW2ZpcnN0XT0nXDAnOworCisJ CQkJCXN0cj0mKHN0cltmaXJzdF0pOworCQkJCQl3aGlsZShpc3NwYWNlKCpzdHIpJiYqc3RyIT0n XDAnKQorICAgICAgICAJCSAgICAgICAJICAgICAgICAgCXN0cisrOworCQkJCQlsZW49c3RybGVu KHN0cik7CisJCQkJCWlmKGxlbj5NQVhQQVRITEVOKQorCQkJCQkJbGVuPU1BWFBBVEhMRU47CisJ CQkJCXN0cm5jcHkoY3VyZm5hbWUsc3RyLGxlbik7CisJCQkJCWN1cmZuYW1lW2xlbi0xXT0nXDAn OworCQkJCQlzdHJuY3B5KGFsZyxBbGdvcml0aG1bZGlnZXN0XS5uYW1lLE1BWF9BTEdfTEVOR1RI KTsKKwkJCQkJcGFyc2VkPTE7CisJCQkJfQorCQkJfQorCQkJaWYocGFyc2VkICYmICFzdHJuY21w KGFsZyxBbGdvcml0aG1bZGlnZXN0XS5uYW1lLE1BWF9BTEdfTEVOR1RIKSkgeworCQkJCXAgPSBB bGdvcml0aG1bZGlnZXN0XS5GaWxlKGN1cmZuYW1lLCBidWYpOworCQkJCWlmICghcCkgewkKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3YXJuKCIlcyIsIGN1cmZuYW1l KTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAlmYWlsZWQrKzsKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKKwkJCQkJaWYgKHFmbGFnKQor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmludGYoIiVz IiwgcCk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAo cmZsYWcpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBw cmludGYoIiVzICVzIiwgcCwgY3VyZm5hbWUpOworICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHByaW50ZigiJXMgKCVzKSA9ICVzIiwKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxnb3JpdGhtW2RpZ2VzdF0ubmFtZSwg Y3VyZm5hbWUsIHApOworCQkJCQlpZiAoc3RyY21wKGNoZWNrQWdhaW5zdEN1cixwKSkgeworIAkJ ICAgICAgIAkgICAgICAgICAgICAgICAgICAgY2hlY2tzRmFpbGVkKys7CisgICAgICAgICAgICAg ICAgCQkgICAgICAgICAgIGlmICghcWZsYWcpCisgICAgICAgICAgICAgICAgICAgICAgICAJCSAg ICAgICBwcmludGYoIiBbIEZhaWxlZCBdIik7CisgICAgICAgICAgICAgICAgICAgICAgICAJCX0K KwkJCQkJcHV0Y2hhcignXG4nKTsKKwkJCQl9CisJCQl9IGVsc2UgeworCQkJCSgqZmFpbGVkKSsr OworCQkJfQorCQkJYnplcm8oc3RyLE1BWF9TVFJJTkdfTEVOR1RIKTsKKyAgICAgICAgICAgICAg ICB9CisJCWZjbG9zZShmbCk7CisJfSBlbHNlIHsKKwkJKCpmYWlsZWQpKys7CisJfQorfQorCisv KgorICogIENvbnZlcnQgc3RyaW5ncyB0byB1cHBlciBjYXNlIAorICovCitzdGF0aWMgdm9pZAor c3RydG91cHBlcihjaGFyICpzKXsKKwlpbnQgaTsKKwkJCisJaWYocyl7CisJCWZvcihpPTA7c1tp XSE9J1wwJztpKyspCisJCQlzW2ldPXRvdXBwZXIoc1tpXSk7CisJfQorfQogLyoKICAqIERpZ2Vz dHMgYSBzdHJpbmcgYW5kIHByaW50cyB0aGUgcmVzdWx0LgogICovCg== --047d7b603f74d6feeb04c8a403cb--