Module: FileTransfer::FTserver
- Defined in:
- lib/filetransfer/ftserver.rb
Class Method Summary collapse
- .genfileid(length) ⇒ Object
- .handle_client(initdata, client) ⇒ Object
- .handle_file_submission(initdata, client) ⇒ Object
Class Method Details
.genfileid(length) ⇒ Object
23 24 25 |
# File 'lib/filetransfer/ftserver.rb', line 23 def self.genfileid(length) ((('a'..'z').to_a+('A'..'Z').to_a+(0..9).to_a*3).shuffle*((length.to_f/82.0).ceil))[0...length].join end |
.handle_client(initdata, client) ⇒ Object
3 4 5 6 7 8 9 10 11 |
# File 'lib/filetransfer/ftserver.rb', line 3 def self.handle_client(initdata, client) filename = initdata[1] filesize = initdata[2] fileid = initdata[3] sock_domain, remote_port, remote_hostname, remote_ip = client.peeraddr Notifier.file_transfer_notification(filename: filename, source: remote_hostname, filesize: filesize, accept_link: "http://#{remote_ip}:8021/#{fileid}") client.close end |
.handle_file_submission(initdata, client) ⇒ Object
13 14 15 16 17 18 19 20 21 |
# File 'lib/filetransfer/ftserver.rb', line 13 def self.handle_file_submission(initdata, client) filename = initdata[1] filepath = initdata[2].gsub("`", " ") fileid = self.genfileid(6) $active_transfers[?/ + fileid] = {name: filename, path: filepath} client.puts fileid client.close end |