Hello community,

here is the log from the commit of package shim for openSUSE:Factory checked in 
at 2013-09-11 13:09:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/shim (Old)
 and      /work/SRC/openSUSE:Factory/.shim.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "shim"

Changes:
--------
--- /work/SRC/openSUSE:Factory/shim/shim.changes        2013-08-30 
11:49:19.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.shim.new/shim.changes   2013-09-11 
13:09:53.000000000 +0200
@@ -1,0 +2,13 @@
+Fri Sep  6 13:57:36 UTC 2013 - [email protected]
+
+- set timestamp of PE file to time of the binary the signature was
+  made for.
+- make sure cert.o get's rebuilt for each target
+
+-------------------------------------------------------------------
+Fri Sep  6 11:48:14 CEST 2013 - [email protected]
+
+- Update microsoft.asc: shim signed by UEFI signing service, based
+  on code from "Wed Aug 28 15:54:38 UTC 2013"
+
+-------------------------------------------------------------------

New:
----
  strip_signature.sh
  timestamp.pl

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ shim.spec ++++++
--- /var/tmp/diff_new_pack.A12SY7/_old  2013-09-11 13:09:54.000000000 +0200
+++ /var/tmp/diff_new_pack.A12SY7/_new  2013-09-11 13:09:54.000000000 +0200
@@ -37,6 +37,7 @@
 Source7:        show_hash.sh
 Source8:        show_signatures.sh
 Source9:        openSUSE-UEFI-CA-Certificate-4096.crt
+Source10:       timestamp.pl
 # PATCH-FIX-SUSE shim-suse-build.patch [email protected] -- Adjust Makefile for 
the build service
 Patch0:         shim-suse-build.patch
 # PATCH-FIX-UPSTREAM shim-fix-pointer-casting.patch [email protected] -- Fix a 
casting issue and the size of an empty vendor_cert or dbx_cert. 
@@ -146,10 +147,14 @@
     # make sure cast warnings don't trigger post build check
     make VENDOR_CERT_FILE=shim-$suffix.der shim.efi 2>/dev/null
     # make VENDOR_CERT_FILE=cert.der VENDOR_DBX_FILE=dbx
-    chmod 755 %{SOURCE6} %{SOURCE7}
+    chmod 755 %{SOURCE6} %{SOURCE7} %{SOURCE10}
     # alternative: verify signature
     #sbverify --cert MicCorThiParMarRoo_2010-10-05.pem shim-signed.efi
     head -1 %{SOURCE1} > hash1
+    cp shim.efi shim.efi.bak
+    # pe header contains timestamp and checksum. we need to
+    # restore that
+    %{SOURCE10} --set-from-file %{SOURCE1} shim.efi
     %{SOURCE7} shim.efi > hash2
     cat hash1 hash2
     if ! cmp -s hash1 hash2; then
@@ -159,13 +164,17 @@
            if [ "${prj%%:*}" = "openSUSE" ]; then
                    false
            fi
-           mv shim.efi shim-$suffix.efi
+           mv shim.efi.bak shim-$suffix.efi
+           rm shim.efi
     else
+           # attach signature
            %{SOURCE6} %{SOURCE1} shim.efi
            mv shim-signed.efi shim-$suffix.efi
            rm -f shim.efi
     fi
     rm -f shim.cer shim.crt
+    # make sure cert.o gets rebuilt
+    rm -f cert.o
 done
 
 ln -s shim-${suffixes[0]}.efi shim.efi

++++++ extract_signature.sh ++++++
--- /var/tmp/diff_new_pack.A12SY7/_old  2013-09-11 13:09:54.000000000 +0200
+++ /var/tmp/diff_new_pack.A12SY7/_new  2013-09-11 13:09:54.000000000 +0200
@@ -20,4 +20,5 @@
 
 # wtf?
 (pesign -n "$nssdir" -h -P -i "$infile";
+${0%/*}/timestamp.pl "$infile";
 pesign -n "$nssdir" -a -f -e /dev/stdout -i "$infile")|cat

++++++ microsoft.asc ++++++
--- /var/tmp/diff_new_pack.A12SY7/_old  2013-09-11 13:09:54.000000000 +0200
+++ /var/tmp/diff_new_pack.A12SY7/_new  2013-09-11 13:09:54.000000000 +0200
@@ -1,8 +1,11 @@
-hash: cb340011afeb0d74c4a588b36ebaa441961608e8d2fa80dca8c13872c850796b
+hash: 9c259fcb301d5fc7397ed5759963e0ef6b36e42057fd73046e6bd08b149f751c
+# 2013-08-29 08:45:28
+timestamp: 521f0a28
+checksum: bd3e
 -----BEGIN AUTHENTICODE SIGNATURE-----
-MIIhPgYJKoZIhvcNAQcCoIIhLzCCISsCAQExDzANBglghkgBZQMEAgEFADBcBgor
+MIIhngYJKoZIhvcNAQcCoIIhjzCCIYsCAQExDzANBglghkgBZQMEAgEFADBcBgor
 BgEEAYI3AgEEoE4wTDAXBgorBgEEAYI3AgEPMAkDAQCgBKICgAAwMTANBglghkgB
-ZQMEAgEFAAQgyzQAEa/rDXTEpYizbrqkQZYWCOjS+oDcqME4cshQeWugggrpMIIE
+ZQMEAgEFAAQgnCWfyzAdX8c5ftV1mWPg72s25CBX/XMEbmvQixSfdRygggrpMIIE
 0TCCA7mgAwIBAgITMwAAAAgesX6cFfyDegABAAAACDANBgkqhkiG9w0BAQsFADCB
 gTELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1Jl
 ZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjErMCkGA1UEAxMi
@@ -61,121 +64,123 @@
 2q0sd1MeJTI3x2xScpWGsPE1YWoZ9bI7gVBWpjIt/qKJ+UKGJxhVoYLKWpv4MJhU
 FKZHliUvyCbkQZQaXAI/5ZbjhVs8Pj+7RxZyVeIlIrHZe+cDBiqj9x6QRsMADdYZ
 ieMONSdiA3EVpu/QJ6CgWTdg+DiUuOB4cPi6TIaHlPbgrgJF7mXCtqN+aRZ1B5Kb
-9aa8WYNYMYIVyDCCFcQCAQEwgZkwgYExCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpX
+9aa8WYNYMYIWKDCCFiQCAQEwgZkwgYExCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpX
 YXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQg
 Q29ycG9yYXRpb24xKzApBgNVBAMTIk1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBVRUZJ
-IENBIDIwMTECEzMAAAAIHrF+nBX8g3oAAQAAAAgwDQYJYIZIAWUDBAIBBQCggcow
-GQYJKoZIhvcNAQkDMQwGCisGAQQBgjcCAQQwHAYKKwYBBAGCNwIBCzEOMAwGCisG
-AQQBgjcCARUwLwYJKoZIhvcNAQkEMSIEIGVZb//6Ozv03LK+h0gc9rgbrHonOkZd
-0MfBd8nL3VbhMF4GCisGAQQBgjcCAQwxUDBOoBqAGABXAGkAbgBxAHUAYQBsACAA
-VABlAHMAdKEwgC5odHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vd2hkYy9oY2wvZGVm
-YXVsdC5tc3B4MA0GCSqGSIb3DQEBAQUABIIBAEUjL3FyotA8sfCYF1B24bGYtPZb
-dMlmr+6crsaQTI0iNFIqH7O7PrN082ScJHIOpGZtpuo6vblmDMGemdgN8Ad2mnju
-JNPKkvzlm/0XUDoUmx+Dbl6tKCpVyh7ZEz6mTAHV2RZUbzevkIR9oAanyaNNJZHc
-e0d6VdykdYtPZeK5sYzaO9slEHfg5d9B31AdqjU1aQPUxxZxbNOjNIFc6Ro7YR67
-3s0EgfEKKVZHmvVZ2ChICTA2Ln/ckXFiAy/lyBJlx0CmiifNPyVhlGn0ny8+5bBB
-L2CG5ZKLTLYMWZXRQzJgiZG+4uHLaycwR+E100rcLcZ07ooeS25Wx0Tgfe6hghMy
-MIITLgYKKwYBBAGCNwMDATGCEx4wghMaBgkqhkiG9w0BBwKgghMLMIITBwIBAzEP
-MA0GCWCGSAFlAwQCAQUAMIIBPQYLKoZIhvcNAQkQAQSgggEsBIIBKDCCASQCAQEG
-CisGAQQBhFkKAwEwMTANBglghkgBZQMEAgEFAAQgUrLZiye/Z1cUhRClMHxwiIy4
-gZcRB8Ml/65nTr8ulPICBlEBPu7EShgTMjAxMzAyMDkwMDEwNDguODg5WjAHAgEB
-gAIB9KCBuaSBtjCBszELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24x
-EDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlv
-bjENMAsGA1UECxMETU9QUjEnMCUGA1UECxMebkNpcGhlciBEU0UgRVNOOkJCRUMt
-MzBDQS0yREJFMSUwIwYDVQQDExxNaWNyb3NvZnQgVGltZS1TdGFtcCBTZXJ2aWNl
-oIIOxzCCBnEwggRZoAMCAQICCmEJgSoAAAAAAAIwDQYJKoZIhvcNAQELBQAwgYgx
-CzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRt
-b25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xMjAwBgNVBAMTKU1p
-Y3Jvc29mdCBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAyMDEwMB4XDTEwMDcw
-MTIxMzY1NVoXDTI1MDcwMTIxNDY1NVowfDELMAkGA1UEBhMCVVMxEzARBgNVBAgT
-Cldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29m
-dCBDb3Jwb3JhdGlvbjEmMCQGA1UEAxMdTWljcm9zb2Z0IFRpbWUtU3RhbXAgUENB
-IDIwMTAwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCpHQ28dxGKOiDs
-/BOX9fp/aZRrdFQQ1aUKAIKF++18aEssX8XD5WHCdrc+Zitb8BVTJwQxH0EbGpUd
-zgkTjnxhMFmxMEQP8WCIhFRDDNdNuDgIs0Ldk6zWczBXJoKjRQ3Q6vVHgc2/JGAy
-WGBG8lhHhjKEHnRhZ5FfgVSxz5NMksHEpl3RYRNuKMYa+YaAu99h/EbBJx0kZxJy
-GiGKr0tkiVBisV39dx898Fd1rL2KQk1AUdEPnAY+Z3/1ZsADlkR+79BL/W7lmsqx
-qPJ6Kgox8NpOBpG2iAg16HgcsOmZzTznL0S6p/TcZL2kAcEgCZN4zfy8wMlEXV4W
-nAEFTyJNAgMBAAGjggHmMIIB4jAQBgkrBgEEAYI3FQEEAwIBADAdBgNVHQ4EFgQU
-1WM6XIoxkPNDe3xGG8UzaFqFbVUwGQYJKwYBBAGCNxQCBAweCgBTAHUAYgBDAEEw
-CwYDVR0PBAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAU1fZWy4/o
-olxiaNE9lJBb186aGMQwVgYDVR0fBE8wTTBLoEmgR4ZFaHR0cDovL2NybC5taWNy
-b3NvZnQuY29tL3BraS9jcmwvcHJvZHVjdHMvTWljUm9vQ2VyQXV0XzIwMTAtMDYt
-MjMuY3JsMFoGCCsGAQUFBwEBBE4wTDBKBggrBgEFBQcwAoY+aHR0cDovL3d3dy5t
-aWNyb3NvZnQuY29tL3BraS9jZXJ0cy9NaWNSb29DZXJBdXRfMjAxMC0wNi0yMy5j
-cnQwgaAGA1UdIAEB/wSBlTCBkjCBjwYJKwYBBAGCNy4DMIGBMD0GCCsGAQUFBwIB
-FjFodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vUEtJL2RvY3MvQ1BTL2RlZmF1bHQu
-aHRtMEAGCCsGAQUFBwICMDQeMiAdAEwAZQBnAGEAbABfAFAAbwBsAGkAYwB5AF8A
-UwB0AGEAdABlAG0AZQBuAHQALiAdMA0GCSqGSIb3DQEBCwUAA4ICAQAH5ohRDeLG
-4Jg/gXEDPZ2joSFvs+umzPUxvs8F4qn++ldtGTCzwsVmyWrf9efweL3HqJ4l4/m8
-7WtUVwgrUYJEEvu5U4zM9GASinbMQEBBm9xcF/9c+V4XNZgkVkt070IQyK+/f8Z/
-8jd9Wj8c8pl5SpFSAK84Dxf1L3mBZdmptWvkx872ynoAb0swRCQiPM/tA6WWj1kp
-vLb9BOFwnzJKJ/1Vry/+tuWOM7tiX5rbV0Dp8c6ZZpCM/2pif93FSguRJuI57BlK
-cWOdeyFtw5yjojz6f32WapB4pm3S4Zz5Hfw42JT0xqUKloakvZ4argRCg7i1gJsi
-OCC1JeVk7Pf0v35jWSUPei45V3aicaoGig+JFrphpxHLmtgOR5qAxdDNp9DvfYPw
-4TtxCd9ddJgiCGHasFAeb73x4QDf5zEHpJM692VHeOj4qEir995yfmFrb3epgcun
-Caw5u+zGy9iCtHLNHfS4hQEegPsbiSpUObJb2sgNVZl6h3M7COaYLeqN4DMuEin1
-wC9UJyH3yKxO2ii4sanblrKnQqLJzxlBTeCG+SqaoxFmMNO7dDJL32N79ZmKLxvH
-Ia9Zta7cRDyXUHHXodLFVeNp3lfB0d4wwP3M5k37Db9dT+mdHhk4L7zPWAUu7w2g
-UDXa7wknHNWzfjUeCLraNtvTX4/edIhJEjCCBNEwggO5oAMCAQICCmEH6j4AAAAA
-ABAwDQYJKoZIhvcNAQELBQAwfDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hp
-bmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jw
-b3JhdGlvbjEmMCQGA1UEAxMdTWljcm9zb2Z0IFRpbWUtU3RhbXAgUENBIDIwMTAw
-HhcNMTIwMTA5MjEzNTM3WhcNMTMwNDA5MjE0NTM3WjCBszELMAkGA1UEBhMCVVMx
-EzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoT
-FU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjENMAsGA1UECxMETU9QUjEnMCUGA1UECxMe
-bkNpcGhlciBEU0UgRVNOOkJCRUMtMzBDQS0yREJFMSUwIwYDVQQDExxNaWNyb3Nv
-ZnQgVGltZS1TdGFtcCBTZXJ2aWNlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
-CgKCAQEArLKRs8Ez2L8FlySOHC3g7HEsvCifzy1JVeHvu/zjwUeMjKHpXrLzNxtM
-lcXvcRU+GocXarhoJaGzJQ405JHlqhitYI9UXw74r+pQ3XJlOyEFABlNPE6HPY7J
-SRcrTQKXH6XPndfvdKYzWrzNRcna9lrEd8/G7IZ6sBvr2JMYJ1sA2LxRMOMZO7ZN
-PW8ZEwH6q2qIXHyrAUPszTV3MocYl9I/q7UL8VUrElE4mNlXcFHXcpdanPIZMuqC
-K7r2shLy1YlcL8zrXktoX8q0CIDMKoge+nFmJoVgoIBBn6tBTj5JxH/YlWjRBaa8
-lRbWQENtJ6Xn2kiPB1Dy/m/hsJn0sQIDAQABo4IBGzCCARcwHQYDVR0OBBYEFBw+
-TiQkOFKmsJaLPYP6QBzUl3mAMB8GA1UdIwQYMBaAFNVjOlyKMZDzQ3t8RhvFM2ha
-hW1VMFYGA1UdHwRPME0wS6BJoEeGRWh0dHA6Ly9jcmwubWljcm9zb2Z0LmNvbS9w
-a2kvY3JsL3Byb2R1Y3RzL01pY1RpbVN0YVBDQV8yMDEwLTA3LTAxLmNybDBaBggr
-BgEFBQcBAQROMEwwSgYIKwYBBQUHMAKGPmh0dHA6Ly93d3cubWljcm9zb2Z0LmNv
-bS9wa2kvY2VydHMvTWljVGltU3RhUENBXzIwMTAtMDctMDEuY3J0MAwGA1UdEwEB
-/wQCMAAwEwYDVR0lBAwwCgYIKwYBBQUHAwgwDQYJKoZIhvcNAQELBQADggEBAIx4
-LOwvQWC+3K/ovFms3igerIdnL2iSbmkoKdUklRC3S2LU6FmnTwPzyY2nDeZk2AW8
-VEqGr62SXhWm6KJ0C6iU+gDItDYfCZsT19FQQd5TuoFwnDzqbtdFMnl2ykE4xVLp
-WvqXYkTms2oFJJ1Py6IH44wUtQkfWbIqacDBQGAL4zDsSLA7i6cYJbka/mGQbsv7
-lxb+Dav3Vxql4hhP/rC6arhdr/J+EAEmhUcgX8bSTPTirnJs2GVgS2mKZhUMEpMh
-ztXnrToJ8VSvwmh6R9SlWXW0wQNjc0SO+clpfJ3/MXhdKqAQBi7Kg0cLYw1Et9wP
-LKYMEGUUAdOuqnzPMQChggN5MIICYQIBATCB46GBuaSBtjCBszELMAkGA1UEBhMC
+IENBIDIwMTECEzMAAAAIHrF+nBX8g3oAAQAAAAgwDQYJYIZIAWUDBAIBBQCgggER
+MBkGCSqGSIb3DQEJAzEMBgorBgEEAYI3AgEEMBwGCisGAQQBgjcCAQsxDjAMBgor
+BgEEAYI3AgEVMC8GCSqGSIb3DQEJBDEiBCBS5Kww7Vp9GTSzYl0ETiSOSzPtmBUV
+zygB6+YZJOjQ/DCBpAYKKwYBBAGCNwIBDDGBlTCBkqBegFwAaAB0AHQAcAA6AC8A
+LwB3AHcAdwAuAG0AaQBjAHIAbwBzAG8AZgB0AC4AYwBvAG0ALwB3AGgAZABjAC8A
+aABjAGwALwBkAGUAZgBhAHUAbAB0AC4AbQBzAHAAeKEwgC5odHRwOi8vd3d3Lm1p
+Y3Jvc29mdC5jb20vd2hkYy9oY2wvZGVmYXVsdC5tc3B4MA0GCSqGSIb3DQEBAQUA
+BIIBALoEW5yyw2YtVS3lSj8F//twwjORHHvMF2jC805z5mqdAmsdUDfthKKofBLJ
+LIOylgbXW11Vax7ZfnZ2WHs9JBCrTVDjc5+sI34kpYA98lHAywYVfEfIrvHPAC6O
+JZXF0cV5Qqe3hjRGd3SGmQkzC6lecVD+3uBmfCnzfE2Rahfy8C3ugLuEutvCGY07
+RB4/sKz6bGoYjx+MIS2hk65Ieip5htZaYirn+5IBMHX3xrTxpIhomOmyL4CpeW7B
+48IUvekaQal+/ePEg/bnDzqUFJ2PdEH03fP0VsKS7z7nJdxfu2XP4wdx/KJin61d
+N0oWjcyKpy7wKHSFWrAMRAs5zW2hghNKMIITRgYKKwYBBAGCNwMDATGCEzYwghMy
+BgkqhkiG9w0BBwKgghMjMIITHwIBAzEPMA0GCWCGSAFlAwQCAQUAMIIBPQYLKoZI
+hvcNAQkQAQSgggEsBIIBKDCCASQCAQEGCisGAQQBhFkKAwEwMTANBglghkgBZQME
+AgEFAAQgDiEkqbSjOTIMfAFQV0jV58xTCE9vCJ2mmQQvVlsMEB8CBlIjIBHCFxgT
+MjAxMzA5MDYwNjM2NDYuNTkyWjAHAgEBgAIB9KCBuaSBtjCBszELMAkGA1UEBhMC
 VVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNV
 BAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjENMAsGA1UECxMETU9QUjEnMCUGA1UE
-CxMebkNpcGhlciBEU0UgRVNOOkJCRUMtMzBDQS0yREJFMSUwIwYDVQQDExxNaWNy
-b3NvZnQgVGltZS1TdGFtcCBTZXJ2aWNloiUKAQEwCQYFKw4DAhoFAAMVAMkjHgxV
-D5VtMurdbnMaFzgx80X/oIHCMIG/pIG8MIG5MQswCQYDVQQGEwJVUzETMBEGA1UE
-CBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9z
-b2Z0IENvcnBvcmF0aW9uMQ0wCwYDVQQLEwRNT1BSMScwJQYDVQQLEx5uQ2lwaGVy
-IE5UUyBFU046QjAyNy1DNkY4LTFEODgxKzApBgNVBAMTIk1pY3Jvc29mdCBUaW1l
-IFNvdXJjZSBNYXN0ZXIgQ2xvY2swDQYJKoZIhvcNAQEFBQACBQDUv21+MCIYDzIw
-MTMwMjA4MTIyNjM4WhgPMjAxMzAyMDkxMjI2MzhaMHcwPQYKKwYBBAGEWQoEATEv
-MC0wCgIFANS/bX4CAQAwCgIBAAICDhkCAf8wBwIBAAICF04wCgIFANTAvv4CAQAw
-NgYKKwYBBAGEWQoEAjEoMCYwDAYKKwYBBAGEWQoDAaAKMAgCAQACAxbjYKEKMAgC
-AQACAwehIDANBgkqhkiG9w0BAQUFAAOCAQEAzQCT6RScPYTOQuFjYFRfluWFOu+H
-mkaFnRv5AHpyepmEUC5MtCXudCSbDI8hKG9KtMD5ICy1hMrMKMFwXYcSfE0lveqP
-D/DJMNrrzEJcgDLnv8jkmvjdXhXo3K5NLM8ffxV5Wl8JVVU9Ldm28s0C39oVTOVD
-h+v+t8iccLZa4t7nGFu1fb7dtYCf9H44+/uxOi4xIMYslVbFRyxK6RVH6w4mtjeQ
-Gixih2JNGintVyA8AeTNdMwCl8X8TUh8/YYlWW1gZHgQzfGba1qNjPTTFsATd/eB
-WWyzGQo9ZXIglRKmyGF4orHWjX4Sq15E1rSraqUNBiXQAH4OSrEFhDoUojGCAuMw
-ggLfAgEBMIGKMHwxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAw
-DgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24x
-JjAkBgNVBAMTHU1pY3Jvc29mdCBUaW1lLVN0YW1wIFBDQSAyMDEwAgphB+o+AAAA
-AAAQMA0GCWCGSAFlAwQCAQUAoIIBKTAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQ
-AQQwLwYJKoZIhvcNAQkEMSIEIGOQwgAVf2pXul5+zbE/dgOk6M9oBkEUEqfheuWf
-6IH6MIHZBgsqhkiG9w0BCRACDDGByTCBxjCBwzCBqAQUySMeDFUPlW0y6t1ucxoX
-ODHzRf8wgY8wgYCkfjB8MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3Rv
-bjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0
-aW9uMSYwJAYDVQQDEx1NaWNyb3NvZnQgVGltZS1TdGFtcCBQQ0EgMjAxMAIKYQfq
-PgAAAAAAEDAWBBRflhFLlhbsbPjG85vpBBvIGRjAYzANBgkqhkiG9w0BAQsFAASC
-AQBjsNknQztyuopS9mEaJ1c1CCKUyjtDZZbajoOBYdpaeTmF6/HivmcxmA/qBdE9
-5Wk4ZSz4qFfRah5VwoiQFx37tgHPHoGFOZE7dZzpmj1IObv/cAnBS7Ez/Xx1HGte
-C4VuvXAq5Up1zmC0RCpAyN6f7C/XNOhN+9YQxCfs/MVdNM8340V6N95JIn62TAij
-UyxHOSstpwTqG042U0VfEvtk52wQottzWd0ra29wCG8cZAyTb4F+BUCzEEyDoOPr
-aHzGEOAGuwDeiG6SclVuuDxM9BUsPdWy1xUlQ74eGGB9lEMG9/sHX14VKH0q9kA3
-KNa/GX4NdMvMjP1DJzdisFTMAAAAAAAA
+CxMebkNpcGhlciBEU0UgRVNOOjMxQzUtMzBCQS03QzkxMSUwIwYDVQQDExxNaWNy
+b3NvZnQgVGltZS1TdGFtcCBTZXJ2aWNloIIOzTCCBnEwggRZoAMCAQICCmEJgSoA
+AAAAAAIwDQYJKoZIhvcNAQELBQAwgYgxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpX
+YXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQg
+Q29ycG9yYXRpb24xMjAwBgNVBAMTKU1pY3Jvc29mdCBSb290IENlcnRpZmljYXRl
+IEF1dGhvcml0eSAyMDEwMB4XDTEwMDcwMTIxMzY1NVoXDTI1MDcwMTIxNDY1NVow
+fDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1Jl
+ZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEmMCQGA1UEAxMd
+TWljcm9zb2Z0IFRpbWUtU3RhbXAgUENBIDIwMTAwggEiMA0GCSqGSIb3DQEBAQUA
+A4IBDwAwggEKAoIBAQCpHQ28dxGKOiDs/BOX9fp/aZRrdFQQ1aUKAIKF++18aEss
+X8XD5WHCdrc+Zitb8BVTJwQxH0EbGpUdzgkTjnxhMFmxMEQP8WCIhFRDDNdNuDgI
+s0Ldk6zWczBXJoKjRQ3Q6vVHgc2/JGAyWGBG8lhHhjKEHnRhZ5FfgVSxz5NMksHE
+pl3RYRNuKMYa+YaAu99h/EbBJx0kZxJyGiGKr0tkiVBisV39dx898Fd1rL2KQk1A
+UdEPnAY+Z3/1ZsADlkR+79BL/W7lmsqxqPJ6Kgox8NpOBpG2iAg16HgcsOmZzTzn
+L0S6p/TcZL2kAcEgCZN4zfy8wMlEXV4WnAEFTyJNAgMBAAGjggHmMIIB4jAQBgkr
+BgEEAYI3FQEEAwIBADAdBgNVHQ4EFgQU1WM6XIoxkPNDe3xGG8UzaFqFbVUwGQYJ
+KwYBBAGCNxQCBAweCgBTAHUAYgBDAEEwCwYDVR0PBAQDAgGGMA8GA1UdEwEB/wQF
+MAMBAf8wHwYDVR0jBBgwFoAU1fZWy4/oolxiaNE9lJBb186aGMQwVgYDVR0fBE8w
+TTBLoEmgR4ZFaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraS9jcmwvcHJvZHVj
+dHMvTWljUm9vQ2VyQXV0XzIwMTAtMDYtMjMuY3JsMFoGCCsGAQUFBwEBBE4wTDBK
+BggrBgEFBQcwAoY+aHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraS9jZXJ0cy9N
+aWNSb29DZXJBdXRfMjAxMC0wNi0yMy5jcnQwgaAGA1UdIAEB/wSBlTCBkjCBjwYJ
+KwYBBAGCNy4DMIGBMD0GCCsGAQUFBwIBFjFodHRwOi8vd3d3Lm1pY3Jvc29mdC5j
+b20vUEtJL2RvY3MvQ1BTL2RlZmF1bHQuaHRtMEAGCCsGAQUFBwICMDQeMiAdAEwA
+ZQBnAGEAbABfAFAAbwBsAGkAYwB5AF8AUwB0AGEAdABlAG0AZQBuAHQALiAdMA0G
+CSqGSIb3DQEBCwUAA4ICAQAH5ohRDeLG4Jg/gXEDPZ2joSFvs+umzPUxvs8F4qn+
++ldtGTCzwsVmyWrf9efweL3HqJ4l4/m87WtUVwgrUYJEEvu5U4zM9GASinbMQEBB
+m9xcF/9c+V4XNZgkVkt070IQyK+/f8Z/8jd9Wj8c8pl5SpFSAK84Dxf1L3mBZdmp
+tWvkx872ynoAb0swRCQiPM/tA6WWj1kpvLb9BOFwnzJKJ/1Vry/+tuWOM7tiX5rb
+V0Dp8c6ZZpCM/2pif93FSguRJuI57BlKcWOdeyFtw5yjojz6f32WapB4pm3S4Zz5
+Hfw42JT0xqUKloakvZ4argRCg7i1gJsiOCC1JeVk7Pf0v35jWSUPei45V3aicaoG
+ig+JFrphpxHLmtgOR5qAxdDNp9DvfYPw4TtxCd9ddJgiCGHasFAeb73x4QDf5zEH
+pJM692VHeOj4qEir995yfmFrb3epgcunCaw5u+zGy9iCtHLNHfS4hQEegPsbiSpU
+ObJb2sgNVZl6h3M7COaYLeqN4DMuEin1wC9UJyH3yKxO2ii4sanblrKnQqLJzxlB
+TeCG+SqaoxFmMNO7dDJL32N79ZmKLxvHIa9Zta7cRDyXUHHXodLFVeNp3lfB0d4w
+wP3M5k37Db9dT+mdHhk4L7zPWAUu7w2gUDXa7wknHNWzfjUeCLraNtvTX4/edIhJ
+EjCCBNowggPCoAMCAQICEzMAAAArcqou9km77NcAAAAAACswDQYJKoZIhvcNAQEL
+BQAwfDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcT
+B1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEmMCQGA1UE
+AxMdTWljcm9zb2Z0IFRpbWUtU3RhbXAgUENBIDIwMTAwHhcNMTMwMzI3MjAxMzE1
+WhcNMTQwNjI3MjAxMzE1WjCBszELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hp
+bmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jw
+b3JhdGlvbjENMAsGA1UECxMETU9QUjEnMCUGA1UECxMebkNpcGhlciBEU0UgRVNO
+OjMxQzUtMzBCQS03QzkxMSUwIwYDVQQDExxNaWNyb3NvZnQgVGltZS1TdGFtcCBT
+ZXJ2aWNlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3Z7t/Pp/HRcd
+iNXB0W8SSbw4GhHtLWNtGfzQrsfCr4860ca9qncVZBQnAheS3S9li6d0R3eXKCT4
+R0NqGMPybXzuf0wCRD5tRUGDbW1x7VlkmbZarrGCrzvkVOpq+kH1GKrdC9XJxH4Q
+7D5UfeN15Q1yCASFFg22aydaqGyCPaQ3HtPcFvw2xg5SqqiKDO7jtZZQLIYqvrMN
+b/VSKlS5JEgyDVIVPSfjgN1fgs4ufYURw2KBeoV6XwR+emmvk02j37DWsrZdbmZB
+7xO5mtltxSZwhKIHFVxrt+M0OSdzyqhH8zFpBXHtfAtD1tiZEwUIh0PYD6twcRya
+R4PSOQxo8wIDAQABo4IBGzCCARcwHQYDVR0OBBYEFACIYILy9WDlBpejP8vw4yXL
+FeAVMB8GA1UdIwQYMBaAFNVjOlyKMZDzQ3t8RhvFM2hahW1VMFYGA1UdHwRPME0w
+S6BJoEeGRWh0dHA6Ly9jcmwubWljcm9zb2Z0LmNvbS9wa2kvY3JsL3Byb2R1Y3Rz
+L01pY1RpbVN0YVBDQV8yMDEwLTA3LTAxLmNybDBaBggrBgEFBQcBAQROMEwwSgYI
+KwYBBQUHMAKGPmh0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2kvY2VydHMvTWlj
+VGltU3RhUENBXzIwMTAtMDctMDEuY3J0MAwGA1UdEwEB/wQCMAAwEwYDVR0lBAww
+CgYIKwYBBQUHAwgwDQYJKoZIhvcNAQELBQADggEBAAYWV+d5jEsbOPGOzJ7O1HVv
+nfxgluZnVZGGW2GsKzFJ8BSMZUnvetBXmjmffxanrjFXwJLrqfe5KvjJ7Y9gJpoO
+22KE2sT2YiDI/yEYXMnumnKLr8uTzEQ/aSr1XYLGWatOklFu5CkROP10duIBC8B0
++1Yn3EeJuNmlHHcDNXFYJsa0K94Ho0go0+ZAE/TbaxlUK67xzqmvLbPB1bbU1Tky
+BJ7qdw5X4kVMDZdFvBertWNkk6OgaebVqhtmQU/YQhW8SibyaP89PPZi7BPR3C/r
+UjHXwzgvqoYihQ4Yvij0OFzn6E/B8PYIcsnK12yTQMQEFd6JUzKCerQnogg1o7yh
+ggN2MIICXgIBATCB46GBuaSBtjCBszELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldh
+c2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBD
+b3Jwb3JhdGlvbjENMAsGA1UECxMETU9QUjEnMCUGA1UECxMebkNpcGhlciBEU0Ug
+RVNOOjMxQzUtMzBCQS03QzkxMSUwIwYDVQQDExxNaWNyb3NvZnQgVGltZS1TdGFt
+cCBTZXJ2aWNloiUKAQEwCQYFKw4DAhoFAAMVABdKA9rBDqP5NngZ5vhFNgZYAya8
+oIHCMIG/pIG8MIG5MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQ
+MA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9u
+MQ0wCwYDVQQLEwRNT1BSMScwJQYDVQQLEx5uQ2lwaGVyIE5UUyBFU046QjAyNy1D
+NkY4LTFEODgxKzApBgNVBAMTIk1pY3Jvc29mdCBUaW1lIFNvdXJjZSBNYXN0ZXIg
+Q2xvY2swDQYJKoZIhvcNAQEFBQACBQDV059dMCIYDzIwMTMwOTA2MDAyNTAxWhgP
+MjAxMzA5MDcwMDI1MDFaMHQwOgYKKwYBBAGEWQoEATEsMCowCgIFANXTn10CAQAw
+BwIBAAICG4EwBwIBAAICGBEwCgIFANXU8N0CAQAwNgYKKwYBBAGEWQoEAjEoMCYw
+DAYKKwYBBAGEWQoDAaAKMAgCAQACAxbjYKEKMAgCAQACAwehIDANBgkqhkiG9w0B
+AQUFAAOCAQEAYuLRkwuSnYRqZki8ezB3xEDkMmZTSMytyICNPC7M7l1iXfB08VH4
+hlygAtINFJ6xbCzPL15//Y7uCCOi/WszIzu4rn51HubH8bj7K4ZUIbxGhipWg3lc
+c8BfV5Y3keSRIJt4qeqaWsIQinTWF21UqNv7iX1zFZv1f+kFsFIBRaPDl7wOKJf8
+rCxNSh+z0JGG4WaOqbTuD6N+SYqjrkyyEuAjzWsKpi2wisYhpYfIwflGdm760dZS
+4OATdOPENnO+8WUuBYZO5Vags4OsY1cNiF8A1uHwkdRiEHPx0+civ6dvvDzXRrf0
+5XUoAWJC1+lf/fVBrX6DyQTdMS98DWJmdTGCAvUwggLxAgEBMIGTMHwxCzAJBgNV
+BAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4w
+HAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xJjAkBgNVBAMTHU1pY3Jvc29m
+dCBUaW1lLVN0YW1wIFBDQSAyMDEwAhMzAAAAK3KqLvZJu+zXAAAAAAArMA0GCWCG
+SAFlAwQCAQUAoIIBMjAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQAQQwLwYJKoZI
+hvcNAQkEMSIEIP5GubwVeFY2kQXbjAnUAgrRj7wm8/IfMpc9OkIWCExuMIHiBgsq
+hkiG9w0BCRACDDGB0jCBzzCBzDCBsQQUF0oD2sEOo/k2eBnm+EU2BlgDJrwwgZgw
+gYCkfjB8MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UE
+BxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSYwJAYD
+VQQDEx1NaWNyb3NvZnQgVGltZS1TdGFtcCBQQ0EgMjAxMAITMwAAACtyqi72Sbvs
+1wAAAAAAKzAWBBSjgipRxvpbBIh/WFsdP/4QrA7g/zANBgkqhkiG9w0BAQsFAASC
+AQCdOnqw8y/2V6d8wlUKMKpf6FgqQVc/FJKuQnnnMVxs39mG6TMWNoPoNRjP/Dcr
+xROr8Zlx6Bp0kQ0urYNquO6y9irkJwQa67ZtUHE29vYlotjDdVMuroJhoVZ3xDur
+56ff87c6XvvjfaY3iLGMuv5fkeL8ajQ5HQ4AZzYSH4eni9FknbK/VH4qNU0e/FH8
+l17VNNOnmonw0oS99AtiwInDGQo5Z9ngcQFs9O9yzHhDfm1cU6ByKU78wRAwjHeM
+ZPLScgBH2ZL5fcJKi8TxhGc9Xtg9fnOYg+KtX+vQmJ2of+XgwZjnPnTvJYSf6KRx
+FTeClTPncn4kysdsHNU7aaoUAAAAAAAA
 -----END AUTHENTICODE SIGNATURE-----

++++++ strip_signature.sh ++++++
#!/bin/bash
# attach ascii armored signature to a PE binary
set -e

infile="$1"
if [ -z "$infile" -o ! -e "$infile" ]; then
        echo "USAGE: $0 file.efi"
        exit 1
fi

outfile="${infile%.efi}-unsigned.efi"

nssdir=`mktemp -d`
cleanup()
{
        rm -r "$nssdir"
}
trap cleanup EXIT
echo > "$nssdir/pw"
certutil -f "$nssdir/pw" -d "$nssdir" -N

pesign -n "$nssdir" -r -i "$infile" -o "$outfile"
++++++ timestamp.pl ++++++
#!/usr/bin/perl -w
# Copyright (c) 2012,2013 SUSE Linux Products GmbH
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.

=head1 timestamp.pl

timestamp.pl - show or set pe timestamp in file

=head1 SYNOPSIS

timestamp.pl [OPTIONS] FILE...

=head1 OPTIONS

=over 4

=item B<--set-form-file=FILE>

parse timestamp and checksum from file

=item B<--help, -h>

print help

=back

=head1 DESCRIPTION

lorem ipsum ...

=cut

use strict;
use Getopt::Long;
Getopt::Long::Configure("no_ignore_case");
use POSIX qw/strftime/;

my %options;

sub usage($) {
        my $r = shift;
        eval "use Pod::Usage; pod2usage($r);";
        if ($@) {
                die "cannot display help, install perl(Pod::Usage)\n";
        }
}

GetOptions(
        \%options,
        "set-from-file=s",
        "verbose|v",
        "help|h",
) or usage(1);

usage(1) unless @ARGV;
usage(0) if ($options{'help'});

my $set_timestamp;
my $set_checksum;

if ($options{'set-from-file'}) {
        die "$options{'set-from-file'}: $!\n" unless open(my $fh, '<', 
$options{'set-from-file'});
        while (<$fh>) {
                chomp;
                if (/^timestamp: ([0-9a-f]+)/) {
                        $set_timestamp = pack('L', hex($1));
                        next;
                } elsif (/^checksum: ([0-9a-f]+)/) {
                        $set_checksum = pack('S', hex($1));
                        next;
                }
                last if $set_timestamp && $set_checksum;
        }
        close($fh);
        die "file didn't contain timestamp and checksum\n" unless 
$set_timestamp && $set_checksum;
}

sub do_show($)
{
        my $file = shift;
        die "$file: $!\n" unless open(my $fh, '<', $file);
        die "seek $file: $!\n" unless seek($fh, 136, 0);
        my $value;
        die "read $file: $!\n" unless read($fh, $value, 4);

        my $timestamp = unpack('L', $value);
        print strftime("# %Y-%m-%d %H:%M:%S\n", gmtime($timestamp));
        printf ("timestamp: %x\n", $timestamp);

        die "seek $file: $!\n" unless seek($fh, 216, 0);
        die "read $file: $!\n" unless read($fh, $value, 2);

        printf ("checksum: %x\n", unpack('S', $value));

        close($fh);
}

sub do_set($)
{
        my $file = shift;
        die "$file: $!\n" unless open(my $fh, '+<', $file);
        die "seek $file: $!\n" unless seek($fh, 136, 0);
        die "write $file: $!\n" unless print $fh $set_timestamp;

        die "seek $file: $!\n" unless seek($fh, 216, 0);
        die "read $file: $!\n" unless print $fh $set_checksum;
        close($fh);
}


for my $file (@ARGV) {
        if ($options{'set-from-file'}) {
                do_set($file);
        } else {
                do_show($file);
        }

}
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to