From 7eec2efa66b55eab51e20d0fcc606763081d0024 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Tue, 30 Jan 2007 20:16:28 +0000 Subject: [PATCH] Added LIBINTL to more Makefile targets. doc/ * com-certs.pem: Added the current root certifcates of D-Trust and S-Trust. g10/ * status.c (write_status_begin_signing): New. * sign.c (sign_file, sign_symencrypt_file): Call it. * textfilter.c (copy_clearsig_text): Call it. * call-agent.c (agent_scd_pksign): Pass --hash-rmd160 to SCD if required. * gpg.c (main): Let --no-use-agent and --gpg-agent-info print a warning. * misc.c (obsolete_option): New. --- AUTHORS | 2 + NEWS | 2 + THANKS | 3 +- doc/ChangeLog | 5 ++ doc/DETAILS | 2 +- doc/com-certs.pem | 145 ++++++++++++++++++++++++++++++++++++++++++++++ doc/gpg.texi | 8 ++- g10/ChangeLog | 17 ++++++ g10/call-agent.c | 4 +- g10/gpg.c | 16 ++++- g10/main.h | 2 + g10/misc.c | 17 ++++++ g10/pkclist.c | 12 ++++ g10/sign.c | 5 +- g10/status.c | 33 +++++++++++ g10/status.h | 3 + g10/textfilter.c | 2 +- kbx/ChangeLog | 5 ++ kbx/Makefile.am | 2 +- scd/ChangeLog | 5 ++ scd/Makefile.am | 3 +- sm/ChangeLog | 4 ++ sm/Makefile.am | 2 +- 23 files changed, 286 insertions(+), 13 deletions(-) diff --git a/AUTHORS b/AUTHORS index e5d9f1318..799a2aee6 100644 --- a/AUTHORS +++ b/AUTHORS @@ -17,6 +17,8 @@ Daniel Resare Translations [sv] Per Tunedal Translations [sv] Daniel Nylander Translations [sv] +Daiki Ueno Assigns Past and Future Changes. + David Shaw Assigns past and future changes. (all in keyserver/, a lot of changes in g10/ see the ChangeLog, diff --git a/NEWS b/NEWS index 16313fbc9..af8ecf3b3 100644 --- a/NEWS +++ b/NEWS @@ -13,6 +13,8 @@ Noteworthy changes in version 2.0.2 (unreleased) * A warning is displayed if a new passphrase is too short. New option --min-passphrase-len defaults to 8. + * The status code BEGIN_SIGNING now show the used hash algorithm. + Noteworthy changes in version 2.0.1 (2006-11-28) ------------------------------------------------ diff --git a/THANKS b/THANKS index 4e076e807..aa68f22f6 100644 --- a/THANKS +++ b/THANKS @@ -18,7 +18,8 @@ Anthony Mulcahy anthony at kcn.ne.jp Ariel T Glenn ariel at columbia.edu ARIGA Seiji ariga at os.rim.or.jp Bernhard Herzog bh at intevation.de -Bernhard Reiter bernhard de intevation.de +Bernhard Reiter bernhard at intevation.de +Billy Halsey bshalsey at paxoo.com Bob Dunlop bob at xyzzy.org.uk Bob Mathews bobmathews at mindspring.com Bodo Moeller Bodo_Moeller at public.uni-hamburg.de diff --git a/doc/ChangeLog b/doc/ChangeLog index 173991ca8..826ea3d16 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,8 @@ +2007-01-30 Werner Koch + + * com-certs.pem: Added the current root certifcates of D-Trust and + S-Trust. + 2007-01-18 David Shaw * gpg.texi, specify-user-id.texi: Only some of the mentions of diff --git a/doc/DETAILS b/doc/DETAILS index cf497571f..5dda75191 100644 --- a/doc/DETAILS +++ b/doc/DETAILS @@ -316,7 +316,7 @@ more arguments in future versions. TRUST_ULTIMATE For good signatures one of these status lines are emitted to indicate how trustworthy the signature is. The error token - values are currently only emiited by gpgsm. + values are currently only emitted by gpgsm. PKA_TRUST_GOOD PKA_TRUST_BAD diff --git a/doc/com-certs.pem b/doc/com-certs.pem index a05f07235..60394fd3a 100644 --- a/doc/com-certs.pem +++ b/doc/com-certs.pem @@ -197,3 +197,148 @@ BiskAwMBAgUAA4GBADnITH+fLD0qsWcAncwPztzTAnqUw9O0+yvfmxvEU0zcJRuF Tl8DK+/aKp4SwVhRJZlWxenHzkjWynsUXBUv878gizllRpA7265REyHQki4NnxAi OGxEVGe/NbGeU88Pgnk7alhtdA/Ty8/WX9a3U/0G4pLaJppxGSm+ypQZ0XOY -----END CERTIFICATE----- + + + +Issuer ...: /CN=D-TRUST Qualified Root CA 1 2006:PN/O=D-Trust GmbH/C=DE +Serial ...: 00B95F +Subject ..: /CN=D-TRUST Qualified Root CA 1 2006:PN/O=D-Trust GmbH/C=DE + aka ..: info@d-trust.net + aka ..: (uri http://www.d-trust.net) + +-----BEGIN CERTIFICATE----- +MIIFCjCCA/KgAwIBAgIDALlfMA0GCSqGSIb3DQEBBQUAMFIxCzAJBgNVBAYTAkRF +MRUwEwYDVQQKDAxELVRydXN0IEdtYkgxLDAqBgNVBAMMI0QtVFJVU1QgUXVhbGlm +aWVkIFJvb3QgQ0EgMSAyMDA2OlBOMB4XDTA2MDQyNzEyNDA1NFoXDTExMDQyNzEy +NDA1NFowUjELMAkGA1UEBhMCREUxFTATBgNVBAoMDEQtVHJ1c3QgR21iSDEsMCoG +A1UEAwwjRC1UUlVTVCBRdWFsaWZpZWQgUm9vdCBDQSAxIDIwMDY6UE4wggEkMA0G +CSqGSIb3DQEBAQUAA4IBEQAwggEMAoIBAQCPACqp8H/KTbDBUM8BTiRzsfCJmN5G +Uxv8x3wsYLMtZ8meq04vEun2OneNeKZ2LxJy3UchUWitYP9pLPt9M8yt0pyuOXOQ +5r2RPAM46OlfStoPbZ+lCxpZbNcQGLM+/OcQU9GoCNWWkDSctwIN8T4mUf7vSzuT +jM4n5NHW7Y8bANhH7lh2fwkfIk7PxsxFw9amptlqzDqbBPz8/SdBUFt0G8t52Niw +lcYHWDV2YH4Qs1SAxOsyG0O8hpYKiKIwRHxPu5ZD3bMgDJXA3d+9zXlrLlmL0YFC +tvlPxmvqUhmMsL4vGEj/xWivULCTVOz6KcJ9edWwK9JxyO/KmGyDLwKxAgUApBVt +/aOCAeUwggHhMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJr+c6YCNnohJ6M3 +fhSzwwTq2CkWMDMGCCsGAQUFBwEBBCcwJTAjBggrBgEFBQcwAYYXaHR0cDovL29j +c3AuZC10cnVzdC5uZXQwFwYDVR0gBBAwDjAMBgorBgEEAaU0Ah4BMDMGA1UdEQQs +MCqBEGluZm9AZC10cnVzdC5uZXSGFmh0dHA6Ly93d3cuZC10cnVzdC5uZXQwGAYI +KwYBBQUHAQMEDDAKMAgGBgQAjkYBATAOBgNVHQ8BAf8EBAMCAQYwggEABgNVHR8E +gfgwgfUwgfKgge+ggeyGgaVsZGFwOi8vZGlyZWN0b3J5LmQtdHJ1c3QubmV0L0NO +PUQtVFJVU1QlMjBRdWFsaWZpZWQlMjBSb290JTIwQ0ElMjAxJTIwMjAwNiUzQVBO +LE89RC1UcnVzdCUyMEdtYkgsQz1ERT9jZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0 +P2Jhc2U/b2JqZWN0Q2xhc3M9Y3JsRGlzdHJpYnV0aW9uUG9pbnSGQmh0dHA6Ly93 +d3cuZC10cnVzdC5uZXQvY3JsL2QtdHJ1c3RfcXVhbGlmaWVkX3Jvb3RfY2FfMV8y +MDA2X3BuLmNybDANBgkqhkiG9w0BAQUFAAOCAQEABsVNHg5zVMB+A4swJ8/vW+RV +mW8KZiJb5AVytFzBeZkkF2+DXFMtursZ0sICIcRCSsNyAQcqHqzcgnDWCHASlu4o +Em3TeBsmWo8r/uGpbFVAOhjq2VOFwjjIr3TC7zmMoLE+WGBRSuZh4/5wnxQ+NNbY +8HHE52UPI6VyV7RZeE0IZfbjkejw8WpvNtRfc6NxOCxf1LYibiCUaYs+EBDD+eod +lWwpmHwPSj4GCzR9wBdbWML/GQZ6iFVOuEmApm2B11KEn4hvKtRMEp1CdHIn8Jwx +51E89XcjJOIitO0lUozimqvlUb0lEynXe1/CUOhAsiAnLvq0GbnjFN6+9GRnqg== +-----END CERTIFICATE----- + +Issuer ...: /CN=D-TRUST Qualified Root CA 2 2006:PN/O=D-Trust GmbH/C=DE +Serial ...: 00B960 +Subject ..: /CN=D-TRUST Qualified Root CA 2 2006:PN/O=D-Trust GmbH/C=DE + aka ..: info@d-trust.net + aka ..: (uri http://www.d-trust.net) + +-----BEGIN CERTIFICATE----- +MIIFBjCCA+6gAwIBAgIDALlgMA0GCSqGSIb3DQEBBQUAMFIxCzAJBgNVBAYTAkRF +MRUwEwYDVQQKDAxELVRydXN0IEdtYkgxLDAqBgNVBAMMI0QtVFJVU1QgUXVhbGlm +aWVkIFJvb3QgQ0EgMiAyMDA2OlBOMB4XDTA2MDQyNzEyNDA1NFoXDTExMDQyNzEy +NDA1NFowUjELMAkGA1UEBhMCREUxFTATBgNVBAoMDEQtVHJ1c3QgR21iSDEsMCoG +A1UEAwwjRC1UUlVTVCBRdWFsaWZpZWQgUm9vdCBDQSAyIDIwMDY6UE4wggEkMA0G +CSqGSIb3DQEBAQUAA4IBEQAwggEMAoIBAQC9p9EZM645WSti4m3Lp/m5Cu2PCeAf +DYMsN2UQab5SAD94wc0xB68rhD0QiyXT1bhqnHKGhdsmmNwVbFLWyFWVc69+5pbx +jkEa1Z5oYbftpLZlqblas/iPG1C546c/O5JUHehrpyJziTaIqvDm0hMCarEGrd4i +hdwP7XsLNLeHFVdpVMWKUIJjUud18Wyr6MVRGs85YTme2gPki8JZMjeOteTA8dnY +unohiJM1rs8YQiYgIfQJV5oBd7OWZQLSuoh5tddYnP4KDFZUCCsC1OkBD+MnVlcv +IEfrDDuWdvFgOdS8FB5l4E3D0eYPpn536EDpWeGuCnn8joQPdiMwwGL7AgUAuaHl +M6OCAeEwggHdMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFILMyG0qJl9Aqmsa +DhPJE4d+Xp/JMDMGCCsGAQUFBwEBBCcwJTAjBggrBgEFBQcwAYYXaHR0cDovL29j +c3AuZC10cnVzdC5uZXQwFwYDVR0gBBAwDjAMBgorBgEEAaU0Ah4BMDMGA1UdEQQs +MCqBEGluZm9AZC10cnVzdC5uZXSGFmh0dHA6Ly93d3cuZC10cnVzdC5uZXQwGAYI +KwYBBQUHAQMEDDAKMAgGBgQAjkYBATAOBgNVHQ8BAf8EBAMCAQYwgf0GA1UdHwSB +9TCB8jCB76CB7KCB6YaBpWxkYXA6Ly9kaXJlY3RvcnkuZC10cnVzdC5uZXQvQ049 +RC1UUlVTVCUyMFF1YWxpZmllZCUyMFJvb3QlMjBDQSUyMDIlMjAyMDA2JTNBUE4s +Tz1ELVRydXN0JTIwR21iSCxDPURFP2NlcnRpZmljYXRlcmV2b2NhdGlvbmxpc3Q/ +YmFzZT9vYmplY3RDbGFzcz1jcmxEaXN0cmlidXRpb25Qb2ludIY/aHR0cDovL3d3 +dy5kLXRydXN0Lm5ldC9jcmwvZC10cnVzdF9xdWFsaWZpZWRfcm9vdF9jYV8yXzIw +MDYuY3JsMA0GCSqGSIb3DQEBBQUAA4IBAQB/TeSQASSUVjLVpTMB+S2bEYZWL04N +5UO5sIdV5MQFxmbmQNam4odnkOx/GjHy0uuf14Pz7lztlLh4EMvEZbvoQ8wRsrrl +vMjWBUSnhTMPhohj4gUCEJDBq50qi0057Jos9DF4iLaFgiWBER+FeSHD8uEy6WGG +UrQ9fw8wRa+CRUeZldtZ25VSR++wxBuX3bkF/hRBuSk9PzT6jZojZDWKsqhPGo0W +dK4V81hS4Zri3b3gSD/3iOAJ4EO8jdyeSVomw/u1UOapVFnWhpN7H6Nwekij66eO +4WNzbeTNgJtkdOlzW2AcsWe3mS43BE286z7l/DzDs8JK36va/TRHb29p +-----END CERTIFICATE----- + + +Issuer ...: /CN=S-TRUST Qualified Root CA 2006-001:PN + /O=Deutscher Sparkassen Verlag GmbH/L=Stuttgart + /ST=Baden-Wuerttemberg (BW)/C=DE +Serial ...: 00DF749F80AA51F0EDC0CB1FC183E97EE2 +Subject ..: /CN=S-TRUST Qualified Root CA 2006-001:PN + /O=Deutscher Sparkassen Verlag GmbH/L=Stuttgart + /ST=Baden-Wuerttemberg (BW)/C=DE + +-----BEGIN CERTIFICATE----- +MIIETDCCAzSgAwIBAgIRAN90n4CqUfDtwMsfwYPpfuIwDQYJKoZIhvcNAQEFBQAw +gZ4xCzAJBgNVBAYTAkRFMSAwHgYDVQQIExdCYWRlbi1XdWVydHRlbWJlcmcgKEJX +KTESMBAGA1UEBxMJU3R1dHRnYXJ0MSkwJwYDVQQKEyBEZXV0c2NoZXIgU3Bhcmth +c3NlbiBWZXJsYWcgR21iSDEuMCwGA1UEAxMlUy1UUlVTVCBRdWFsaWZpZWQgUm9v +dCBDQSAyMDA2LTAwMTpQTjAeFw0wNjAxMDEwMDAwMDBaFw0xMDEyMzAyMzU5NTla +MIGeMQswCQYDVQQGEwJERTEgMB4GA1UECBMXQmFkZW4tV3VlcnR0ZW1iZXJnIChC +VykxEjAQBgNVBAcTCVN0dXR0Z2FydDEpMCcGA1UEChMgRGV1dHNjaGVyIFNwYXJr +YXNzZW4gVmVybGFnIEdtYkgxLjAsBgNVBAMTJVMtVFJVU1QgUXVhbGlmaWVkIFJv +b3QgQ0EgMjAwNi0wMDE6UE4wggEkMA0GCSqGSIb3DQEBAQUAA4IBEQAwggEMAoIB +AQCCp5M7qIP3WgNNE9t4kxFLb2HdwE2pivcWfEjFh9AJcwZIaD781+OhuNxhMEil +C+B9N3bYgLMj7r/LbIFwRVmUf9E64kBDrY/wLAlXLpiicOiKE7rS1tcOAdD69s7I +5jaBXCz/eQo20QLsp11/btwYos9PlfptLqHjS8AUwUaMyolqmWqaxLD33ZfoQswP +FpyFFzAnRondt/5WUt244kpqgTlwP4o9J1AZamK5o/kKEXl8hDT6CulFoK51cX/J +C9lEA10mwchVfv+9cel9b2ryPXg3hPf1XFFR+l90/ZYlreaSKz5+LluI6a/ALtYl +hqJpvndXm6YZDzKKtxT3LZ1DAgUA8A8a46OBgDB+MBIGA1UdEwEB/wQIMAYBAf8C +AQEwDgYDVR0PAQH/BAQDAgEGMBgGCCsGAQUFBwEDBAwwCjAIBgYEAI5GAQEwHQYD +VR0OBBYEFKhXJN3CR/Jkirm68N+VHxcd09zBMB8GA1UdIwQYMBaAFKhXJN3CR/Jk +irm68N+VHxcd09zBMA0GCSqGSIb3DQEBBQUAA4IBAQBB8UGGU179RK9v5SglLn8m +AdBrwG5B4x0nlI3Ayj+GuP9R8ALcMEBwcFgSZTav7N8ERKa8VlCRNria7Fvf3kOu ++f67smpShBvEkrHy+ThvezBUtLfSSd1HzvaPnfwu86DMVnTIOkEcl0KLrpc/ZjEt +u81iHuiHBemf6gWdTCApiJ+CN4tARi3irvWcjhz/IIcA/ZwAaCW22Z1ysDklCIPS +9OnX9ki1f73PR+kdo4G7Dfo7TbuvV5Kzeh54sZ77A5utdvKer4ZHBmn9CGmk4VeI +BWdFlE7Fispzm+jZCduF0TcazvP/tYontx71GQnHRwLfiY4xnuzXEoSNXoaHzhzO +-----END CERTIFICATE----- + +Issuer ...: /CN=S-TRUST Qualified Root CA 2007-001:PN + /O=Deutscher Sparkassen Verlag GmbH/L=Stuttgart + /ST=Baden-Wuerttemberg (BW)/C=DE +Serial ...: 00BC098E0402E92956B8D7DE74977E26F7 +Subject ..: /CN=S-TRUST Qualified Root CA 2007-001:PN + /O=Deutscher Sparkassen Verlag GmbH/L=Stuttgart + /ST=Baden-Wuerttemberg (BW)/C=DE + +# Currently disabled because latest SVN versions of libgcrypt and +# libksba a required to use this certificate. +#-----BEGIN CERTIFICATE----- +#MIIESzCCAzOgAwIBAgIRALwJjgQC6SlWuNfedJd+JvcwDQYJKoZIhvcNAQELBQAw +#gZ4xCzAJBgNVBAYTAkRFMSAwHgYDVQQIExdCYWRlbi1XdWVydHRlbWJlcmcgKEJX +#KTESMBAGA1UEBxMJU3R1dHRnYXJ0MSkwJwYDVQQKEyBEZXV0c2NoZXIgU3Bhcmth +#c3NlbiBWZXJsYWcgR21iSDEuMCwGA1UEAxMlUy1UUlVTVCBRdWFsaWZpZWQgUm9v +#dCBDQSAyMDA3LTAwMTpQTjAeFw0wNzAxMDEwMDAwMDBaFw0xMTEyMzAyMzU5NTla +#MIGeMQswCQYDVQQGEwJERTEgMB4GA1UECBMXQmFkZW4tV3VlcnR0ZW1iZXJnIChC +#VykxEjAQBgNVBAcTCVN0dXR0Z2FydDEpMCcGA1UEChMgRGV1dHNjaGVyIFNwYXJr +#YXNzZW4gVmVybGFnIEdtYkgxLjAsBgNVBAMTJVMtVFJVU1QgUXVhbGlmaWVkIFJv +#b3QgQ0EgMjAwNy0wMDE6UE4wggEjMA0GCSqGSIb3DQEBAQUAA4IBEAAwggELAoIB +#AQCnJdNNiDQLKpPIfHTC3ifleXWTf96hLfvP58q41fuywQ+rXju453yjPgr/ej5i +#RgYPyJnSc498wyu/XtPLIC3gQvowfiI8WmSj/eEToHUhrLIAtx1VXSi/Rugt3E1Y +#uYGkPn/gnrkk+RtPJQuBl1NRxKEVi7rg1Ch5RJvWsUTOmxgeWlr8qZnPoLkA2y6N +#lhL6LP3Th+OQIH4RFFfazNYWpH4Cg6I5nzyieHaR6LrGk0L7GfDKdZG4Eqan3JvI +#ilrFHzzCm7qudd+31jcRamReqZqJ0wzBmY1LNAzDyCAC3Y+YWEz8crhDW3mK/wFY +#H0RHHeow06RMTEVwls+FrhWfAgRAAACBo4GAMH4wEgYDVR0TAQH/BAgwBgEB/wIB +#ATAOBgNVHQ8BAf8EBAMCAQYwGAYIKwYBBQUHAQMEDDAKMAgGBgQAjkYBATAdBgNV +#HQ4EFgQUPAujGBtjPCldr0A+EM4YCZSIX1cwHwYDVR0jBBgwFoAUPAujGBtjPCld +#r0A+EM4YCZSIX1cwDQYJKoZIhvcNAQELBQADggEBAJ1pVXXcVb9m0yRPjvE4Rvko +#tdjIm29YnY13ILCrPqjfgtpSlId6NHPhykGLkw3ratNlWQp3rmen/8EqQJa0rsPD +#CiB20ilLb1CmF8/SViJ26C+K0ayzk8s2v7S/m7/Tx9Dgd2PXWwy2XjeGG/2SkISH +#5CtSjbm8U+xTh5SQMgK1MX/bDiNJebDOO0N2lxAjtcGmw7K6OTWS7KnFfjzv6fKK +#L7Ed2Gpd2gBkbuJVe/wX2mDP2P4rpcCEkXrDoWbi9WWc+eP5fCgE4Nj7/VhnbPf6 +#DJCvmUG571uf1oukFaoeeyzpw2q28Ly1KR8DNPw+B/3PzJUIjXYzPGyUjv3aPew= +#-----END CERTIFICATE----- diff --git a/doc/gpg.texi b/doc/gpg.texi index db78819c4..0c029c2a5 100644 --- a/doc/gpg.texi +++ b/doc/gpg.texi @@ -1455,9 +1455,15 @@ passphrase. @option{--no-use-agent} disables this option. @end ifset @item --gpg-agent-info +@ifclear gpgone +This is dummy option. It has no effect when used with @command{gpg2}. +@end ifclear +@ifset gpgone Override the value of the environment variable @samp{GPG_AGENT_INFO}. This is only used when @option{--use-agent} has -been given +been given. Given that this option is not anymore used by +@command{gpg2}, it should be avoided if possible. +@end gpgone @item --lock-once Lock the databases the first time a lock is requested diff --git a/g10/ChangeLog b/g10/ChangeLog index 69e43614f..e5bc8e837 100644 --- a/g10/ChangeLog +++ b/g10/ChangeLog @@ -1,3 +1,20 @@ +2007-01-30 Werner Koch + + * status.c (write_status_begin_signing): New. + * sign.c (sign_file, sign_symencrypt_file): Call it. + * textfilter.c (copy_clearsig_text): Call it. + + * call-agent.c (agent_scd_pksign): Pass --hash-rmd160 to SCD if + required. + + * gpg.c (main): Let --no-use-agent and --gpg-agent-info print a + warning. + * misc.c (obsolete_option): New. + +2007-01-29 Werner Koch + + * pkclist.c (do_we_trust_pre): Issue a user-id-hint status code. + 2007-01-15 Werner Koch * parse-packet.c (read_protected_v3_mpi): Make sure to stop diff --git a/g10/call-agent.c b/g10/call-agent.c index 30b46fa99..b5e76fdbf 100644 --- a/g10/call-agent.c +++ b/g10/call-agent.c @@ -668,7 +668,9 @@ agent_scd_pksign (const char *serialno, int hashalgo, snprintf (line, DIM(line)-1, "SCD PKAUTH %s", serialno); else #endif - snprintf (line, DIM(line)-1, "SCD PKSIGN %s", serialno); + snprintf (line, DIM(line)-1, "SCD PKSIGN %s%s", + hashalgo == GCRY_MD_RMD160? "--hash=rmd160 " : "", + serialno); line[DIM(line)-1] = 0; rc = assuan_transact (agent_ctx, line, membuf_data_cb, &data, NULL, NULL, NULL, NULL); diff --git a/g10/gpg.c b/g10/gpg.c index 05ea39039..e8e83c2c5 100644 --- a/g10/gpg.c +++ b/g10/gpg.c @@ -2134,10 +2134,20 @@ main (int argc, char **argv ) opt.list_options|=LIST_SHOW_UNUSABLE_SUBKEYS; break; - case oBatch: opt.batch = 1; nogreeting = 1; break; + case oBatch: + opt.batch = 1; + nogreeting = 1; + break; + case oUseAgent: /* Dummy. */ - case oNoUseAgent: /* Dummy. */ break; - case oGpgAgentInfo: opt.gpg_agent_info = pargs.r.ret_str; break; + break; + case oNoUseAgent: + obsolete_option (configname, configlineno, "--no-use-agent"); + break; + case oGpgAgentInfo: + obsolete_option (configname, configlineno, "--gpg-agent-info"); + break; + case oAnswerYes: opt.answer_yes = 1; break; case oAnswerNo: opt.answer_no = 1; break; case oKeyring: append_to_strlist( &nrings, pargs.r.ret_str); break; diff --git a/g10/main.h b/g10/main.h index 478e56de9..1860853da 100644 --- a/g10/main.h +++ b/g10/main.h @@ -105,6 +105,8 @@ char *pct_expando(const char *string,struct expando_args *args); void deprecated_warning(const char *configname,unsigned int configlineno, const char *option,const char *repl1,const char *repl2); void deprecated_command (const char *name); +void obsolete_option (const char *configname, unsigned int configlineno, + const char *name); int string_to_cipher_algo (const char *string); int string_to_digest_algo (const char *string); diff --git a/g10/misc.c b/g10/misc.c index bf32228c3..50bb6af13 100644 --- a/g10/misc.c +++ b/g10/misc.c @@ -469,6 +469,10 @@ openpgp_pk_algo_usage ( int algo ) int openpgp_md_test_algo( int algo ) { + /* Note: If the list of actual supported OpenPGP algorithms changes, + make sure that our hard coded values at + print_status_begin_signing() gets updated. */ + if (algo < 0 || algo > 110) return gpg_error (GPG_ERR_DIGEST_ALGO); return gcry_md_test_algo (algo); @@ -737,6 +741,19 @@ deprecated_command (const char *name) } +void +obsolete_option (const char *configname, unsigned int configlineno, + const char *name) +{ + if(configname) + log_info (_("%s:%u: obsolete option \"%s\" - it has no effect\n"), + configname, configlineno, name); + else + log_info (_("WARNING: \"%s\" is an obsolete option - it has no effect\n"), + name); +} + + /* * Wrapper around gcry_cipher_map_name to provide a fallback using the * "Sn" syntax as used by the preference strings. diff --git a/g10/pkclist.c b/g10/pkclist.c index 6588802ad..82abe3f0d 100644 --- a/g10/pkclist.c +++ b/g10/pkclist.c @@ -464,6 +464,18 @@ do_we_trust_pre( PKT_public_key *pk, unsigned int trustlevel ) tty_printf("\n"); + + if (is_status_enabled ()) + { + u32 kid[2]; + char *hint_str; + + keyid_from_pk (pk, kid); + hint_str = get_long_user_id_string ( kid ); + write_status_text ( STATUS_USERID_HINT, hint_str ); + xfree (hint_str); + } + if( cpr_get_answer_is_yes("untrusted_key.override", _("Use this key anyway? (y/N) ")) ) rc = 1; diff --git a/g10/sign.c b/g10/sign.c index 8ae9c0b28..062fa9f48 100644 --- a/g10/sign.c +++ b/g10/sign.c @@ -503,6 +503,7 @@ only_old_style( SK_LIST sk_list ) } + static void print_status_sig_created ( PKT_secret_key *sk, PKT_signature *sig, int what ) { @@ -983,7 +984,7 @@ sign_file( strlist_t filenames, int detached, strlist_t locusr, goto leave; } - write_status (STATUS_BEGIN_SIGNING); + write_status_begin_signing (mfx.md); /* Setup the inner packet. */ if( detached ) { @@ -1361,7 +1362,7 @@ sign_symencrypt_file (const char *fname, strlist_t locusr) goto leave; } - write_status (STATUS_BEGIN_SIGNING); + write_status_begin_signing (mfx.md); /* Pipe data through all filters; i.e. write the signed stuff */ /*(current filters: zip - encrypt - armor)*/ diff --git a/g10/status.c b/g10/status.c index b0d0cd74c..83a28cda4 100644 --- a/g10/status.c +++ b/g10/status.c @@ -323,6 +323,39 @@ write_status_buffer ( int no, const char *buffer, size_t len, int wrap ) } +/* Print the BEGIN_SIGNING status message. If MD is not NULL it is + used retrieve the hash algorithms used for the message. */ +void +write_status_begin_signing (gcry_md_hd_t md) +{ + if (md) + { + char buf[100]; + size_t buflen; + int i; + + /* We use a hard coded list of possible algorithms. Using other + algorithms than specified by OpenPGP does not make sense + anyway. We do this out of performance reasons: Walking all + the 110 allowed Ids is not a good idea given the way the + check is implemented in libgcrypt. Recall that the only use + of this status code is to create the micalg algorithm for + PGP/MIME. */ + buflen = 0; + for (i=1; i <= 11; i++) + if (i < 4 || i > 7) + if ( gcry_md_is_enabled (md, i) && buflen < DIM(buf) ) + { + snprintf (buf+buflen, DIM(buf) - buflen - 1, + "%sH%d", buflen? " ":"",i); + buflen += strlen (buf+buflen); + } + write_status_text ( STATUS_BEGIN_SIGNING, buf ); + } + else + write_status ( STATUS_BEGIN_SIGNING ); +} + static int myread(int fd, void *buf, size_t count) diff --git a/g10/status.h b/g10/status.h index b5dbe7480..6fad17a46 100644 --- a/g10/status.h +++ b/g10/status.h @@ -131,6 +131,9 @@ void write_status_buffer ( int no, void write_status_text_and_buffer ( int no, const char *text, const char *buffer, size_t len, int wrap ); +void write_status_begin_signing (gcry_md_hd_t md); + + int cpr_enabled(void); char *cpr_get( const char *keyword, const char *prompt ); char *cpr_get_no_help( const char *keyword, const char *prompt ); diff --git a/g10/textfilter.c b/g10/textfilter.c index daa57de0a..dc34aa244 100644 --- a/g10/textfilter.c +++ b/g10/textfilter.c @@ -178,7 +178,7 @@ copy_clearsig_text( IOBUF out, IOBUF inp, gcry_md_hd_t md, if( !escape_dash ) escape_from = 0; - write_status (STATUS_BEGIN_SIGNING); + write_status_begin_signing (md); for(;;) { maxlen = MAX_LINELEN; diff --git a/kbx/ChangeLog b/kbx/ChangeLog index bb1a38aa3..e83c265b3 100644 --- a/kbx/ChangeLog +++ b/kbx/ChangeLog @@ -1,3 +1,8 @@ +2007-01-25 Werner Koch + + * Makefile.am (kbxutil_LDADD): Added LIBICONV. Noted by Billy + Halsey. + 2006-11-15 Werner Koch * kbxutil.c (dump_openpgp_key): Cast printf argument. diff --git a/kbx/Makefile.am b/kbx/Makefile.am index 2d9223bfe..92dd1e439 100644 --- a/kbx/Makefile.am +++ b/kbx/Makefile.am @@ -48,6 +48,6 @@ libkeybox_a_SOURCES = $(common_sources) kbxutil_SOURCES = kbxutil.c $(common_sources) kbxutil_LDADD = ../jnlib/libjnlib.a ../gl/libgnu.a \ $(KSBA_LIBS) $(LIBGCRYPT_LIBS) \ - -lgpg-error $(LIBINTL) ../common/libcommon.a + -lgpg-error $(LIBINTL) ../common/libcommon.a $(LIBICONV) $(PROGRAMS) : ../jnlib/libjnlib.a ../gl/libgnu.a ../common/libcommon.a diff --git a/scd/ChangeLog b/scd/ChangeLog index 6d71dc110..9c6900117 100644 --- a/scd/ChangeLog +++ b/scd/ChangeLog @@ -1,3 +1,8 @@ +2007-01-25 Werner Koch + + * Makefile.am (scdaemon_LDADD): Added LIBICONV. Noted by Billy + Halsey. + 2006-12-21 Werner Koch * app-openpgp.c (verify_chv2): Factored most code out into... diff --git a/scd/Makefile.am b/scd/Makefile.am index 405a611a5..448211623 100644 --- a/scd/Makefile.am +++ b/scd/Makefile.am @@ -46,7 +46,8 @@ scdaemon_SOURCES = \ scdaemon_LDADD = ../jnlib/libjnlib.a ../common/libcommonpth.a ../gl/libgnu.a \ $(LIBGCRYPT_LIBS) $(KSBA_LIBS) $(LIBASSUAN_PTH_LIBS) $(PTH_LIBS) \ - $(LIBUSB_LIBS) $(GPG_ERROR_LIBS) $(LIBINTL) $(DL_LIBS) $(NETLIBS) + $(LIBUSB_LIBS) $(GPG_ERROR_LIBS) \ + $(LIBINTL) $(DL_LIBS) $(NETLIBS) $(LIBICONV) # Removed for now: We need to decide whether it makes sense to # continue it at all, given that gpg has now all required diff --git a/sm/ChangeLog b/sm/ChangeLog index f249c73af..a364e3b48 100644 --- a/sm/ChangeLog +++ b/sm/ChangeLog @@ -1,3 +1,7 @@ +2007-01-25 Werner Koch + + * Makefile.am (gpgsm_LDADD): Add LIBICONV. Noted by Billy Halsey. + 2007-01-05 Werner Koch * certchain.c (unknown_criticals): Add subjectAltName. diff --git a/sm/Makefile.am b/sm/Makefile.am index 75c49886d..0fce48a40 100644 --- a/sm/Makefile.am +++ b/sm/Makefile.am @@ -58,7 +58,7 @@ common_libs = ../jnlib/libjnlib.a ../kbx/libkeybox.a \ gpgsm_LDADD = $(common_libs) \ $(LIBGCRYPT_LIBS) $(KSBA_LIBS) $(LIBASSUAN_LIBS) \ - $(GPG_ERROR_LIBS) $(LIBINTL) $(ZLIBS) + $(GPG_ERROR_LIBS) $(LIBINTL) $(ZLIBS) $(LIBICONV) # Make sure that all libs are build before we use them. This is # important for things like make -j2.