Commit graph

70 commits

Author SHA1 Message Date
gotoyuzo
932075e82e * ext/openssl/ossl_ssl.c (ossl_ssl_read): should check for error
status by SSL_get_error().

* ext/openssl/ossl_ssl.c (ossl_ssl_write): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5278 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-24 07:29:40 +00:00
usa
8e43498222 * ext/openssl/ossl_pkcs12.c (ossl_pkcs12_initialize): first argument
of rb_protect should take an argument of VALUE.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5190 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-15 00:30:12 +00:00
gotoyuzo
ab2e1c141f * ext/openssl/ossl_pkcs12.[ch]: new files. add OpenSSL::PKCS12.
* ext/openssl/ossl_ossl.[ch]: ditto.

* ext/openssl/MANIFEST: add ossl_pkcs12.[ch].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5172 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-11 12:29:08 +00:00
gotoyuzo
7cc4f065fa no need to care SSL_ERROR_NONE and SSL_ERROR_WANT_X509_LOOKUP.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5128 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-06 14:33:52 +00:00
gotoyuzo
70daacc533 * ext/openssl/ossl_ssl.c (ossl_start_ssl): new function to wrap
SSL_connect and SSL_accept; if SSL_connect (or SSL_accept) returned
  but not finished the handshake process, we should retry it.

* ext/openssl/ossl_ssl.c (ossl_ssl_connect): call ossl_start_ssl.

* ext/openssl/ossl_ssl.c (ossl_ssl_accept): ditto.

* ext/openssl/ossl_ssl.c (ossl_ssl_read): allow signal traps.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5127 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-06 13:59:31 +00:00
gotoyuzo
7d6e215393 * ext/openssl/ossl_asn1.c (asn1time_to_time): should check that
the underlying value of ASN1_TIME isn't NULL.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5099 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-04 00:21:31 +00:00
gotoyuzo
abbffef10c * /ext/openssl/ossl_x509ext.c (ossl_x509extfactory_create_ext):
refine error message.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4961 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-15 13:19:17 +00:00
gotoyuzo
a3845916c0 * ext/openssl/ossl_x509req.c (ossl_x509req_to_der): add function for
X509::Request#to_der.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4949 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-13 07:48:20 +00:00
gotoyuzo
ed2a386f58 * ext/openssl/ossl.c (ossl_x509_sk2ary, ossl_x509crl_sk2ary): add
functions to convert STACK into Array.

* ext/openssl/ossl.h: add prototypes.

* ext/openssl/ossl_pkcs7.c (ossl_pkcs7_set_certificates,
  ossl_pkcs7_get_certificates, ossl_pkcs7_get_crls,
  ossl_pkcs7_set_crls): add functions for PKCS7#certificates=
  PKCS7#certificates, PKCS7#crls= and PKCS7#crls.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4940 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-11 21:20:20 +00:00
gotoyuzo
09306bcead * lib/ext/openssl/ossl_conf.c (ossl_config_get_value): return nil
if the specified value doesn't exist.

* lib/ext/openssl/ossl_conf.c (ossl_config_get_section): return
  a empty hash if the specified section doesn't exist.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-10 18:31:36 +00:00
gotoyuzo
d193b90d54 * lib/webrick/https.rb (HTTPRequest#parse): set @client_cert_chain.
* lib/webrick/https.rb (HTTPRequest#meta_vars): create
  SSL_CLIENT_CERT_CHAIN_n from @client_cert_chain.

* ext/openssl/ossl_ssl.c (ossl_ssl_get_peer_cert_chain): return nil
  if no cert-chain was given.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4897 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-04 23:48:13 +00:00
gotoyuzo
fc133b8997 * ext/openssl/ossl_ssl.c (ossl_ssl_peer_cert_chain): add new method
SSLSocket#peer_cert_chain.

* ext/openssl/ossl_x509req.c (GetX509ReqPtr): new function
  which returns underlying X509_REQ.

* ext/openssl/ossl_x509ext.c (ossl_x509extfactory_set_issuer_cert,
  ossl_x509extfactory_set_subject_cert, ossl_x509extfactory_set_crl,
  ossl_x509extfactory_set_subject_req, ossl_x509extfactory_set_config):
  use underlying C struct without duplication not to leak momory.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4884 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-01 09:24:55 +00:00
gotoyuzo
2e0b6e28ad * ext/openssl/lib/openssl/buffering.rb (Buffering#initialize):
add new method to inherit @sync from @io.sync.

* ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): no need to
  set sync flag explicitly.

* ext/openssl/ossl_ssl.c (ossl_sslctx_initialize): call super.

* ext/openssl/ossl_ssl.c (ossl_sslctx_setup): set extra chain
  certificates in @extra_chain_cert.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4859 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-29 17:27:59 +00:00
gotoyuzo
80549d5f17 * ext/openssl/ossl_x509name.c (ossl_x509name_initialize): add
optional argument to specify the DirectoryString type
  (ASN1::UTF8STRING by default). RFC3280 deprecates PrintableString
  for DirectoryString, and strongly requires to use UTF8String for
  all certificates issued after December, 31 2003.

* ext/openssl/lib/openssl/x509.rb (X509::Name::parse): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4733 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-09 16:20:22 +00:00
gotoyuzo
0dd4fde745 * ext/openssl/ossl_asn1.c (ossl_asn1_get_asn1type): use appropriate
free function for ASN1_OBJECT.

* ext/openssl/ossl_asn1.c (ossl_asn1obj_get_sn): add new function for
  ASN1::ObjectId#sn; it returns short name text representation of OID.

* ext/openssl/ossl_asn1.c (ossl_asn1obj_get_ln): add new function for
  ASN1::ObjectId#ln; it returns long name text representation of OID.

* ext/openssl/ossl_asn1.c (ossl_asn1obj_get_oid): add new function for
  ASN1::ObjectId#oid; it returns numerical representation of OID.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-06 16:55:00 +00:00
gotoyuzo
f58812a7e2 * lib/ext/openssl/extconf.rb: add check for some engine functions
unavailable in OpenSSL-0.9.6.

* lib/ext/openssl/ossl_engine.c: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4698 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-05 13:58:02 +00:00
gotoyuzo
d0dd2997f3 * ext/openssl/ossl_asn1.h: global symbols should be declared
as external.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4683 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-04 18:45:53 +00:00
matz
415283ac95 * marshal.c (w_object): instance variable dump do not cause error
for objects that cannot be dumped, if they traversed from
  marshal_dump.  they are just ignored.

* gc.c (Init_stack): cast "space" (doble value) into unsigned
  int.  should run on PowerPC.

* eval.c (rb_eval): should not execute else part if any exception
  is caught. [ruby-dev:21482]

* parse.y (f_args): should allow unparenthesized block argument.

* parse.y (f_rest_arg): should allow unparenthesized rest
  argument.

* lib/irb/ruby-lex.rb (RubyLex::identify_identifier): support
  'class ::Foo' syntax. [ruby-talk:83514]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4680 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-04 17:51:11 +00:00
gotoyuzo
7d18f560f5 * ext/openssl/extconf.rb: add check for X509V3_set_nconf.
* ext/openssl/ossl_x509ext.c (ossl_x509extfactory_set_config):
  cannot implement if X509V3_set_nconf doesn't exist.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4666 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-03 19:29:13 +00:00
gotoyuzo
9d04d1df14 ossl_asn1.h was included twice.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4665 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-03 17:59:44 +00:00
gotoyuzo
5af0a758d4 * ext/openssl/ossl_asn1.c: add DER encoder and decoder.
* ext/openssl/ossl_asn1.h: add OpenSSL::ASN1 module.

* ext/openssl/ossl.c (Init_openssl): call Init_ossl_asn1.

* ext/openssl/ossl.h: include ossl_asn1.h.

* ext/openssl/extconf.rb: check if X509_ATTRIBUTE has field "single".

* ext/openssl/ossl_x509attr.c (ossl_x509attr_set_value): accept
  DER encoded data argument.

* ext/openssl/ossl_x509attr.c (ossl_x509attr_get_value): return
  DER encoded data in OpenSSL::ASN1 types.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4660 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-03 08:58:01 +00:00
gotoyuzo
56db4c8fb0 ENGINE_load_public_key takes four arguments since OpenSSL-0.9.7
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4656 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-02 14:26:43 +00:00
gotoyuzo
08ba967d26 ENGINE_load_private_key takes four arguments since OpenSSL-0.9.7
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4655 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-02 13:56:05 +00:00
gotoyuzo
d77b606edd * ext/openssl/ossl_engine.c: add a new module OpenSSL::Engine.
it supports OpenSSL hardware cryptographic engine interface.

* ext/openssl/ossl_engine.h: ditto.

* ext/openssl/MANIFEST: add ossl_engine.c and ossl_engine.h.

* ext/openssl/extconf.rb: add check for openssl/engine.h.

* ext/openssl/ossl.c: call Init_ossl_engine().

* ext/openssl/ossl.h: include openssl/engine.h.

* ext/openssl/ossl_pkey_{rsa,dsa,dh}.c: check if underlying
  EVP_PKEY referes engine.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4652 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-02 08:47:11 +00:00
usa
3a9772f651 * ext/openssl/ossl.c (ossl_buf2str): fix type of 1st argument for
rb_protect.

	* ext/openssl/ossl_hmac.c (ossl_hmac_digest): should return meaningful
	  value.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4597 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-25 08:49:36 +00:00
nobu
5747a6c480 * ext/win32ole/win32ole.c, ext/openssl/ossl_pkey_dsa.c,
ext/openssl/ossl_pkey_rsa.c, ext/bigdecimal/bigdecimal.h: must
  not use C++ or C99 style comment yet.  (ruby-bugs:PR#1184)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4594 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-24 22:55:33 +00:00
gotoyuzo
ca8be43f0e * ext/openssl/ossl_ocsp.c (ossl_ocspreq_initialize): the argument
should be a String.

* ext/openssl/ossl_ocsp.c (ossl_ocspres_initialize): ditt.

* ext/openssl/ossl_x509attr.c (ossl_x509attr_initialize): ditto.

* ext/openssl/ossl_x509ext.c (ossl_x509ext_initialize): ditto.

* ext/openssl/ossl_x509ext.c (ossl_x509ext_set_value): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4582 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-20 19:18:22 +00:00
gotoyuzo
45ca1d0754 should check retuen value of rb_protect.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-17 09:40:17 +00:00
gotoyuzo
ad143475b9 fix command line in 'dep'.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4559 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-17 09:09:31 +00:00
gotoyuzo
30103702c3 * ext/openssl: all files are reviewed to simplify and avoid memory leak.
* ext/openssl/extconf.rb: add check for assert.h.

* ext/openssl/ossl.c (ossl_buf2str): new function to convert
  C buffer to String and free buffer.

* ext/openssl/ossl.c (ossl_x509_ary2sk): new function to convert
  Array of OpenSSL::X509 to STACK_OF(X509) with exception safe.

* ext/openssl/ossl.c (ossl_to_der, ossl_to_der_if_possible): new
  functions to convert object to DER string.

* ext/openssl/ossl.h: ditto.

* ext/openssl/ossl_bio.c (ossl_membio2str): new function to convert
  BIO to String object and free BIO.

* ext/openssl/ossl_bio.h: ditto.

* ext/openssl/ossl_pkcs7.c (ossl_pkcs7_to_der): add for "to_der".

* ext/openssl/ossl_x509name.c (ossl_x509name_to_der): ditto.

* ext/openssl/ossl_x509ext.c (ossl_x509ext_to_der): ditto.

* ext/openssl/ossl_x509ext.c (create_ext_from_array): removed
  and reimplement in openssl/x509.rb.

* ext/openssl/ossl_x509attr.c: reimplemented and disable some
  method temporarily. this class doesn't work fine without ASN.1
  data support;-) I'll rewrite in near future.

* ext/openssl/lib/openssl/x509.c (X509::Attribute): get rid off
  unused code.

* ext/openssl/lib/openssl/x509.c (X509::ExtensionFactory): refine all.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-17 09:05:02 +00:00
michal
bd96b4c8cc OpenSSL update
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4552 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-12 13:46:48 +00:00
gotoyuzo
fb65eed72e * ext/openssl/ossl.h: define OSSL_NO_CONF_API for win32 platform.
libeay32.dll doesn't export functions defined in conf_api.h.
  this workaround is to avoid link error.

* ext/openssl/ossl_config.c (ossl_config_initialize): ditto.

* ext/openssl/ossl_config.c (ossl_config_add_value): ditto.

* ext/openssl/ossl_config.c (set_conf_section_i): should check
  if the argument is Array.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4544 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-10 13:58:31 +00:00
usa
3587c1c725 * eval.c (win32_get_exception_list): avoid VC7 warning.
[ruby-win32:577]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4542 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-10 13:43:27 +00:00
gotoyuzo
9edcc5e99a * ext/openssl/ossl_config.rb: avoid compile error in OpenSSL-0.9.6.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4538 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-08 20:19:01 +00:00
eban
4b98d17022 * ext/openssl/ossl_config.c (ext/openssl/ossl_config.c): typofix (ossl_raise).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4533 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-08 11:02:35 +00:00
gotoyuzo
78ff3833fb * ext/openssl/ossl.h: include openssl/conf.h and openssl/conf_api.h.
* ext/openssl/ossl_config.c: refine all with backward compatibility.

* ext/openssl/ossl_config.h: export GetConfigPtr() and DupConfigPtr().

* ext/openssl/ossl_x509.c: added new constants under X509 module.
  DEFAULT_CERT_AREA, DEFAULT_CERT_DIR, DEFAULT_CERT_FILE,
  DEFAULT_CERT_DIR_ENV, DEFAULT_CERT_FILE_ENV and DEFAULT_PRIVATE_DIR.

* ext/openssl/ossl_x509ext.c (ossl_x509extfactory_free): don't free
  the members of the struct. it's left to GC.

* ext/openssl/ossl_x509ext.c (ossl_x509_set_config): add for config=.

* ext/openssl/ossl_x509ext.c (Xossl_x509extfactory_initialize):
  add attr readers: issuer_certificate, subject_certificate,
  subject_request, crl and config.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4531 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-08 10:31:38 +00:00
gotoyuzo
40fce3e7ee * ext/openssl/ruby_missing.c: rid of unnecessary backward
compatibility stuff.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-06 08:56:57 +00:00
gotoyuzo
256d273e69 * ext/openssl/ruby_missing.c: rid of unnecessary backward
compatibility stuff. and remove DEFINE_ALLOC_WRAPPER from
  all sources.

* ext/openssl/ossl_x509ext.c (X509::Extension.new): new method.

* ext/openssl/ossl_x509ext.c (X509::Extension#oid=): new method.

* ext/openssl/ossl_x509ext.c (X509::Extension#value=): new method.

* ext/openssl/ossl_x509ext.c (X509::Extension#critical=): new method.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-06 08:56:09 +00:00
gotoyuzo
d9f38cbee8 * ext/openssl/lib/openssl/x509.rb: new method X509::Name::parse.
* ext/openssl/ossl_digest.c: add ossl_digest_new().

* ext/openssl/ossl_digest.h: ditto.

* ext/openssl/ossl_cipher.c: add ossl_cipher_new().

* ext/openssl/ossl_cipher.h: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4511 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-05 09:08:40 +00:00
nahi
0d1896a88f * MANIFEST: add and remove entries for the previous ext/openssl/sample move.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4495 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-04 10:59:15 +00:00
nahi
a6663a94e5 * ext/io/wait/.cvsignore: added.
* ext/openssl/.cvsignore: added.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4493 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-04 10:39:29 +00:00
nahi
5f84c80fc5 * sample/openssl: added. Sample of standard distribution library should be
locate in sample/{module_name}/*.

* ext/openssl/sample/*: removed.  move to sample/openssl/*.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4492 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-04 10:31:29 +00:00
gotoyuzo
28e962d92c * ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): warning
for skipping server verification.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4482 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-02 11:41:33 +00:00
gotoyuzo
65652ecdb5 * lib/webrick/ssl.rb: new file; SSL/TLS enhancement for GenericServer.
* lib/webrick/https.rb: SSLSocket handling is moved to webrick/ssl.rb.

* lib/webrick/compat.rb (File::fnmatch): remove old migration code.

* lib/webrick/httpserver.rb (HTTPServer#run): ditto.

* lib/webrick/server.rb (GenericServer#listen): the body of this
  method is pull out as Utils::create_lisnteners.

* lib/webrick/utils.rb (Utils::create_lisnteners): new method.

* lib/webrick/server.rb (GenericServer#start): should not
  through unknown errors. and refine comments.

* ext/openssl/lib/openssl/ssl.rb (SSLServer#accept): should close
  socket if SSLSocket raises error.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-19 06:00:36 +00:00
gotoyuzo
ba64282cdc * ext/openssl/ossl_ssl.c: sync_close is moved to SSLSocket as
a builtin.

* ext/openssl/lib/openssl/buffering.rb (Buffering#close): ditto.

* ext/openssl/lib/openssl/buffering.rb (Buffering#puts): should
  add a return to the tails of each line.

* ext/openssl/lib/openssl/ssl.rb: new class OpenSSL::SSL::SSLServer.

* ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): use sync_close.

* ext/openssl/sample/echo_svr.rb: use SSLServer.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4407 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-18 22:49:48 +00:00
nobu
c7b5c0489b * ext/openssl/extconf.rb (HAVE_VA_ARGS_MACRO): need to compile.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-17 14:40:00 +00:00
gotoyuzo
39c4886fe7 * ext/openssl/lib/openssl/ssl.rb (SSLSocket#sync_close=): add a
method to specify if the underlying IO will be closed in
  SSLSocket#close.

* ext/openssl/lib/openssl/buffering.rb: add forwarders to
  setsockopt, getsockopt and fcntl.

* ext/openssl/lib/net/protocols.rb: enable sync for SSLSocket.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4400 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-17 08:22:45 +00:00
nobu
8695612caf * marshal.c (w_symbol, w_object): get rid of warnings.
* re.c (rb_memsearch): ditto.

* time.c (time_dump): ditto.

* ext/extmk.rb (extmake): not continue making when extconf.rb
  failed.

* ext/openssl/extconf.rb: check __VA_ARGS__ macro more precisely.

* ext/openssl/ossl.h: remove version.h dependency.

* ext/openssl/ruby_missing.h: ditto.

* lib/mkmf.rb (pkg_config): use --libs output except with
  only-L for other options.  [ruby-list:38099]

* lib/mkmf.rb (create_makefile): separate rule for static
  library from shared object.

* win32/Makefile.sub, bcc32/Makefile.sub, wince/Makefile.sub:
  define exec_prefix and libdir.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4396 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-16 14:58:34 +00:00
gotoyuzo
923044bba2 * ext/openssl/lib/openssl/buffering.rb: increase BLOCK_SIZE
from 1k to 16k bytes. [ruby-talk:78603]

* ext/openssl/ossl_ssl.c (ossl_sslctx_s_alloc): enable
  partial write to allow interruption in SSLSocket#sysread.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4363 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-10 01:54:05 +00:00
nobu
63f5a7164b * lib/mkmf.rb (pkg_config): get configuration by pkg-config. [new]
* ext/openssl/extconf.rb: use pkg_config.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4284 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-02 05:54:00 +00:00