summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortb <>2018-02-20 17:42:32 +0000
committertb <>2018-02-20 17:42:32 +0000
commite6e87dba22757a3b4937ac796bb40b817e71a3d3 (patch)
treea9c77d344bf6cc7fd02191dd8496dd6a627e3235
parentdfa181abfd37625e8fcbe30907b6fd5f37c2df2d (diff)
downloadopenbsd-e6e87dba22757a3b4937ac796bb40b817e71a3d3.tar.gz
openbsd-e6e87dba22757a3b4937ac796bb40b817e71a3d3.tar.bz2
openbsd-e6e87dba22757a3b4937ac796bb40b817e71a3d3.zip
Provide RSA_{clear,set,test}_flasg()
ok jsing
-rw-r--r--src/lib/libcrypto/Symbols.list3
-rw-r--r--src/lib/libcrypto/rsa/rsa.h5
-rw-r--r--src/lib/libcrypto/rsa/rsa_lib.c20
3 files changed, 26 insertions, 2 deletions
diff --git a/src/lib/libcrypto/Symbols.list b/src/lib/libcrypto/Symbols.list
index 5a5df4702b..a6137ca95d 100644
--- a/src/lib/libcrypto/Symbols.list
+++ b/src/lib/libcrypto/Symbols.list
@@ -2228,6 +2228,7 @@ RSA_bits
2228RSA_blinding_off 2228RSA_blinding_off
2229RSA_blinding_on 2229RSA_blinding_on
2230RSA_check_key 2230RSA_check_key
2231RSA_clear_flags
2231RSA_flags 2232RSA_flags
2232RSA_free 2233RSA_free
2233RSA_generate_key 2234RSA_generate_key
@@ -2238,6 +2239,7 @@ RSA_get0_key
2238RSA_get_default_method 2239RSA_get_default_method
2239RSA_get_ex_data 2240RSA_get_ex_data
2240RSA_get_ex_new_index 2241RSA_get_ex_new_index
2242RSA_get_flags
2241RSA_get_method 2243RSA_get_method
2242RSA_new 2244RSA_new
2243RSA_new_method 2245RSA_new_method
@@ -2264,6 +2266,7 @@ RSA_set0_factors
2264RSA_set0_key 2266RSA_set0_key
2265RSA_set_default_method 2267RSA_set_default_method
2266RSA_set_ex_data 2268RSA_set_ex_data
2269RSA_set_flags
2267RSA_set_method 2270RSA_set_method
2268RSA_setup_blinding 2271RSA_setup_blinding
2269RSA_sign 2272RSA_sign
diff --git a/src/lib/libcrypto/rsa/rsa.h b/src/lib/libcrypto/rsa/rsa.h
index b131359e8c..65a643f4c6 100644
--- a/src/lib/libcrypto/rsa/rsa.h
+++ b/src/lib/libcrypto/rsa/rsa.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: rsa.h,v 1.36 2018/02/18 12:57:14 tb Exp $ */ 1/* $OpenBSD: rsa.h,v 1.37 2018/02/20 17:42:32 tb Exp $ */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
@@ -404,6 +404,9 @@ void RSA_get0_crt_params(const RSA *r, const BIGNUM **dmp1, const BIGNUM **dmq1,
404int RSA_set0_crt_params(RSA *r, BIGNUM *dmp1, BIGNUM *dmq1, BIGNUM *iqmp); 404int RSA_set0_crt_params(RSA *r, BIGNUM *dmp1, BIGNUM *dmq1, BIGNUM *iqmp);
405void RSA_get0_factors(const RSA *r, const BIGNUM **p, const BIGNUM **q); 405void RSA_get0_factors(const RSA *r, const BIGNUM **p, const BIGNUM **q);
406int RSA_set0_factors(RSA *r, BIGNUM *p, BIGNUM *q); 406int RSA_set0_factors(RSA *r, BIGNUM *p, BIGNUM *q);
407void RSA_clear_flags(RSA *r, int flags);
408int RSA_test_flags(const RSA *r, int flags);
409void RSA_set_flags(RSA *r, int flags);
407 410
408RSA *RSAPublicKey_dup(RSA *rsa); 411RSA *RSAPublicKey_dup(RSA *rsa);
409RSA *RSAPrivateKey_dup(RSA *rsa); 412RSA *RSAPrivateKey_dup(RSA *rsa);
diff --git a/src/lib/libcrypto/rsa/rsa_lib.c b/src/lib/libcrypto/rsa/rsa_lib.c
index 426c52f24a..544846f825 100644
--- a/src/lib/libcrypto/rsa/rsa_lib.c
+++ b/src/lib/libcrypto/rsa/rsa_lib.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: rsa_lib.c,v 1.35 2018/02/18 12:57:14 tb Exp $ */ 1/* $OpenBSD: rsa_lib.c,v 1.36 2018/02/20 17:42:32 tb Exp $ */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
@@ -352,3 +352,21 @@ RSA_set0_factors(RSA *r, BIGNUM *p, BIGNUM *q)
352 352
353 return 1; 353 return 1;
354} 354}
355
356void
357RSA_clear_flags(RSA *r, int flags)
358{
359 r->flags &= ~flags;
360}
361
362int
363RSA_test_flags(const RSA *r, int flags)
364{
365 return r->flags & flags;
366}
367
368void
369RSA_set_flags(RSA *r, int flags)
370{
371 r->flags |= flags;
372}