openssl 3.3.2 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. checksums.yaml +4 -4
  2. data/CONTRIBUTING.md +3 -0
  3. data/History.md +85 -0
  4. data/README.md +12 -11
  5. data/ext/openssl/extconf.rb +30 -69
  6. data/ext/openssl/openssl_missing.h +0 -206
  7. data/ext/openssl/ossl.c +280 -301
  8. data/ext/openssl/ossl.h +15 -10
  9. data/ext/openssl/ossl_asn1.c +598 -406
  10. data/ext/openssl/ossl_asn1.h +15 -1
  11. data/ext/openssl/ossl_bio.c +3 -3
  12. data/ext/openssl/ossl_bn.c +286 -291
  13. data/ext/openssl/ossl_cipher.c +252 -203
  14. data/ext/openssl/ossl_cipher.h +10 -1
  15. data/ext/openssl/ossl_config.c +1 -6
  16. data/ext/openssl/ossl_digest.c +74 -43
  17. data/ext/openssl/ossl_digest.h +9 -1
  18. data/ext/openssl/ossl_engine.c +39 -103
  19. data/ext/openssl/ossl_hmac.c +30 -36
  20. data/ext/openssl/ossl_kdf.c +42 -53
  21. data/ext/openssl/ossl_ns_spki.c +31 -37
  22. data/ext/openssl/ossl_ocsp.c +214 -241
  23. data/ext/openssl/ossl_pkcs12.c +26 -26
  24. data/ext/openssl/ossl_pkcs7.c +175 -145
  25. data/ext/openssl/ossl_pkey.c +162 -178
  26. data/ext/openssl/ossl_pkey.h +99 -99
  27. data/ext/openssl/ossl_pkey_dh.c +31 -68
  28. data/ext/openssl/ossl_pkey_dsa.c +15 -54
  29. data/ext/openssl/ossl_pkey_ec.c +179 -237
  30. data/ext/openssl/ossl_pkey_rsa.c +56 -103
  31. data/ext/openssl/ossl_provider.c +0 -7
  32. data/ext/openssl/ossl_rand.c +7 -14
  33. data/ext/openssl/ossl_ssl.c +478 -353
  34. data/ext/openssl/ossl_ssl.h +8 -8
  35. data/ext/openssl/ossl_ssl_session.c +93 -97
  36. data/ext/openssl/ossl_ts.c +81 -127
  37. data/ext/openssl/ossl_x509.c +9 -28
  38. data/ext/openssl/ossl_x509attr.c +33 -54
  39. data/ext/openssl/ossl_x509cert.c +69 -100
  40. data/ext/openssl/ossl_x509crl.c +78 -89
  41. data/ext/openssl/ossl_x509ext.c +45 -66
  42. data/ext/openssl/ossl_x509name.c +63 -88
  43. data/ext/openssl/ossl_x509req.c +55 -62
  44. data/ext/openssl/ossl_x509revoked.c +27 -41
  45. data/ext/openssl/ossl_x509store.c +38 -56
  46. data/lib/openssl/buffering.rb +30 -24
  47. data/lib/openssl/digest.rb +1 -1
  48. data/lib/openssl/pkey.rb +71 -49
  49. data/lib/openssl/ssl.rb +12 -79
  50. data/lib/openssl/version.rb +2 -1
  51. data/lib/openssl/x509.rb +9 -0
  52. data/lib/openssl.rb +9 -6
  53. metadata +1 -3
  54. data/ext/openssl/openssl_missing.c +0 -40
  55. data/lib/openssl/asn1.rb +0 -188
@@ -31,11 +31,25 @@ VALUE asn1str_to_str(const ASN1_STRING *);
31
31
  VALUE asn1integer_to_num(const ASN1_INTEGER *);
32
32
  ASN1_INTEGER *num_to_asn1integer(VALUE, ASN1_INTEGER *);
33
33
 
34
+ /*
35
+ * ASN1_OBJECT conversions
36
+ */
37
+ ASN1_OBJECT *ossl_to_asn1obj(VALUE obj);
38
+ /*
39
+ * Returns the short name if available, the dotted decimal notation otherwise.
40
+ * This is the most common way to return ASN1_OBJECT to Ruby.
41
+ */
42
+ VALUE ossl_asn1obj_to_string(const ASN1_OBJECT *a1obj);
43
+ /*
44
+ * However, some places use long names instead. This is likely unintentional,
45
+ * but we keep the current behavior in existing methods.
46
+ */
47
+ VALUE ossl_asn1obj_to_string_long_name(const ASN1_OBJECT *a1obj);
48
+
34
49
  /*
35
50
  * ASN1 module
36
51
  */
37
52
  extern VALUE mASN1;
38
- extern VALUE eASN1Error;
39
53
 
40
54
  extern VALUE cASN1Data;
41
55
 
@@ -16,11 +16,11 @@ ossl_obj2bio(volatile VALUE *pobj)
16
16
  BIO *bio;
17
17
 
18
18
  if (RB_TYPE_P(obj, T_FILE))
19
- obj = rb_funcallv(obj, rb_intern("read"), 0, NULL);
19
+ obj = rb_funcallv(obj, rb_intern("read"), 0, NULL);
20
20
  StringValue(obj);
21
21
  bio = BIO_new_mem_buf(RSTRING_PTR(obj), RSTRING_LENINT(obj));
22
22
  if (!bio)
23
- ossl_raise(eOSSLError, "BIO_new_mem_buf");
23
+ ossl_raise(eOSSLError, "BIO_new_mem_buf");
24
24
  *pobj = obj;
25
25
  return bio;
26
26
  }
@@ -36,7 +36,7 @@ ossl_membio2str(BIO *bio)
36
36
  ret = ossl_str_new(buf->data, buf->length, &state);
37
37
  BIO_free(bio);
38
38
  if (state)
39
- rb_jump_tag(state);
39
+ rb_jump_tag(state);
40
40
 
41
41
  return ret;
42
42
  }