diff options
Diffstat (limited to 'ruby_1_8_5/ext/openssl/lib/net/ftptls.rb')
-rw-r--r-- | ruby_1_8_5/ext/openssl/lib/net/ftptls.rb | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/ruby_1_8_5/ext/openssl/lib/net/ftptls.rb b/ruby_1_8_5/ext/openssl/lib/net/ftptls.rb new file mode 100644 index 0000000000..43cc136bf6 --- /dev/null +++ b/ruby_1_8_5/ext/openssl/lib/net/ftptls.rb @@ -0,0 +1,43 @@ +=begin += $RCSfile: ftptls.rb,v $ -- SSL/TLS enhancement for Net::HTTP. + += Info + 'OpenSSL for Ruby 2' project + Copyright (C) 2003 Blaz Grilc <farmer@gmx.co.uk> + All rights reserved. + += Licence + This program is licenced under the same licence as Ruby. + (See the file 'LICENCE'.) + += Requirements + += Version + $Id: ftptls.rb,v 1.1 2003/07/23 16:11:30 gotoyuzo Exp $ + += Notes + Tested on FreeBSD 5-CURRENT and 4-STABLE + - ruby 1.6.8 (2003-01-17) [i386-freebsd5] + - OpenSSL 0.9.7a Feb 19 2003 + - ruby-openssl-0.2.0.p0 + tested on ftp server: glftpd 1.30 +=end + +require 'socket' +require 'openssl' +require 'net/ftp' + +module Net + class FTPTLS < FTP + def login(user = "anonymous", passwd = nil, acct = nil) + ctx = OpenSSL::SSL::SSLContext.new('SSLv23') + ctx.key = nil + ctx.cert = nil + voidcmd("AUTH TLS") + @sock = OpenSSL::SSL::SSLSocket.new(@sock, ctx) + @sock.connect + super(user, passwd, acct) + voidcmd("PBSZ 0") + end + end +end |