diff options
Diffstat (limited to 'common/compliance.c')
-rw-r--r-- | common/compliance.c | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/common/compliance.c b/common/compliance.c index d421b0371..faea384d9 100644 --- a/common/compliance.c +++ b/common/compliance.c @@ -40,6 +40,11 @@ static int initialized; static int module; + +/* The next variable and the code in get_compliance_cache should be + * removed after the software suite has been approved. */ +static int assumed_de_vs_compliance = -1; + /* This value is used by DSA and RSA checks in addition to the hard * coded length checks. It allows one to increase the required key length * using a config file. */ @@ -70,6 +75,19 @@ get_compliance_cache (enum gnupg_compliance_mode compliance, int for_rng) case CO_DE_VS: ptr = for_rng? &r_de_vs : &s_de_vs ; break; } + /* Remove this code after approval. */ + if (ptr && compliance == CO_DE_VS) + { + if (assumed_de_vs_compliance == -1) + { + const char *s = getenv ("GNUPG_ASSUME_COMPLIANCE"); + assumed_de_vs_compliance = (s && !strcmp (s, "de-vs")); + } + if (assumed_de_vs_compliance) + *ptr = 1; + } + + return ptr; } @@ -667,7 +685,7 @@ gnupg_status_compliance_flag (enum gnupg_compliance_mode compliance) case CO_PGP8: log_assert (!"no status code assigned for this compliance mode"); case CO_DE_VS: - return "23"; + return assumed_de_vs_compliance ? "2023" : "23"; } log_assert (!"invalid compliance mode"); } |