user and pass working
This commit is contained in:
parent
860fb9312d
commit
a98b42d408
3 changed files with 65 additions and 28 deletions
|
|
@ -84,6 +84,9 @@ class NNTP
|
||||||
|
|
||||||
def putline(line)
|
def putline(line)
|
||||||
puts '*put* '+line+'\r\n' if @debuglevel > 1
|
puts '*put* '+line+'\r\n' if @debuglevel > 1
|
||||||
|
if ! @socket
|
||||||
|
puts '*put* '+line+'\r\n'
|
||||||
|
end
|
||||||
@socket.send "#{line}\r\n", 0
|
@socket.send "#{line}\r\n", 0
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -110,8 +110,34 @@ def initialize(nntpservers, groupname, newsrc="~/.newsrc")
|
||||||
@group = groupname
|
@group = groupname
|
||||||
@preselectpattern = Regexp.new('^')
|
@preselectpattern = Regexp.new('^')
|
||||||
@cache_buf = {}
|
@cache_buf = {}
|
||||||
|
@serverlist = []
|
||||||
|
@serverpasses = {}
|
||||||
|
|
||||||
|
tmplist = nntpservers.split('|')
|
||||||
|
tmplist.each{ |server|
|
||||||
|
if server.match(/([^@]*)@(.*)/)
|
||||||
|
userpass = $1
|
||||||
|
server = $2
|
||||||
|
@serverlist.push(server)
|
||||||
|
@serverpasses[server] = {}
|
||||||
|
if userpass.match(/([^:]*):(.*)/)
|
||||||
|
@serverpasses[server]['user'] = $1
|
||||||
|
@serverpasses[server]['pass'] = $2
|
||||||
|
else
|
||||||
|
@serverpasses[server]['user'] = userpass
|
||||||
|
@serverpasses[server]['pass'] = nil
|
||||||
|
end
|
||||||
|
else
|
||||||
|
@serverlist.push(server)
|
||||||
|
@serverpasses[server] = {}
|
||||||
|
@serverpasses[server]['user'] = nil
|
||||||
|
@serverpasses[server]['pass'] = nil
|
||||||
|
end
|
||||||
|
}
|
||||||
|
p @serverlist
|
||||||
|
p @serverpasses
|
||||||
|
#@serverlist = nntpservers.split('|')
|
||||||
|
|
||||||
@serverlist = nntpservers.split('|')
|
|
||||||
@connections = {}
|
@connections = {}
|
||||||
@serverlist.collect{|server|
|
@serverlist.collect{|server|
|
||||||
@connections[server] = {}
|
@connections[server] = {}
|
||||||
|
|
@ -121,9 +147,11 @@ def initialize(nntpservers, groupname, newsrc="~/.newsrc")
|
||||||
# p Time.now
|
# p Time.now
|
||||||
begin
|
begin
|
||||||
timeout(60) do
|
timeout(60) do
|
||||||
@connections[server]["nntp"] = Net::KANNTP.new(server)
|
p "connecting"
|
||||||
|
@connections[server]["nntp"] = Net::KANNTP.new(server, 119, @serverpasses[server]['user'], @serverpasses[server]['pass'])
|
||||||
end
|
end
|
||||||
resp = @connections[server]["nntp"].mode_reader
|
resp = @connections[server]["nntp"].mode_reader
|
||||||
|
p resp
|
||||||
rescue TimeoutError, Errno::ECONNRESET
|
rescue TimeoutError, Errno::ECONNRESET
|
||||||
sleep 3
|
sleep 3
|
||||||
retry
|
retry
|
||||||
|
|
@ -150,7 +178,7 @@ def reconnect(server)
|
||||||
sleep 3
|
sleep 3
|
||||||
#timeout(180) do
|
#timeout(180) do
|
||||||
timeout(60) do
|
timeout(60) do
|
||||||
@connections[server]["nntp"] = Net::KANNTP.new(server)
|
@connections[server]["nntp"] = Net::KANNTP.new(server, 119, @serverpasses[server]['user'], @serverpasses[server]['pass'])
|
||||||
end
|
end
|
||||||
resp = @connections[server]["nntp"].mode_reader
|
resp = @connections[server]["nntp"].mode_reader
|
||||||
rescue SocketError, Errno::EINVAL, EOFError, Errno::ETIMEDOUT, TimeoutError, Errno::ECONNREFUSED
|
rescue SocketError, Errno::EINVAL, EOFError, Errno::ETIMEDOUT, TimeoutError, Errno::ECONNREFUSED
|
||||||
|
|
|
||||||
|
|
@ -103,35 +103,41 @@ def save_file(dir, name, data)
|
||||||
nname.gsub!(/ï/, "\"i")
|
nname.gsub!(/ï/, "\"i")
|
||||||
nname.gsub!(/ö/, "\"o")
|
nname.gsub!(/ö/, "\"o")
|
||||||
nname.gsub!(/ü/, "\"u")
|
nname.gsub!(/ü/, "\"u")
|
||||||
|
nname.gsub!(/<EFBFBD>/, "~n")
|
||||||
|
nname.gsub!(/#{151.chr}/, " ")
|
||||||
|
nname.gsub!(/#{243.chr}/, "L")
|
||||||
|
nname.gsub!(/#{247.chr}/, "S")
|
||||||
end
|
end
|
||||||
# shit that gets through...
|
# shit that gets through...
|
||||||
nname.gsub!('#{146.chr}', "")
|
nname.gsub!('#{146.chr}', "")
|
||||||
end
|
end
|
||||||
### nname.gsub!(/Ä/, "A"); nname.gsub!(/ä/, "a")
|
nname.gsub!(/<EFBFBD>/, "A"); nname.gsub!(/<EFBFBD>/, "a")
|
||||||
### nname.gsub!(/Á/, "A"); nname.gsub!(/á/, "a")
|
nname.gsub!(/<EFBFBD>/, "A"); nname.gsub!(/<EFBFBD>/, "a")
|
||||||
### nname.gsub!(/À/, "A"); nname.gsub!(/à/, "a")
|
nname.gsub!(/<EFBFBD>/, "A"); nname.gsub!(/<EFBFBD>/, "a")
|
||||||
### nname.gsub!(/Â/, "A"); nname.gsub!(/â/, "a")
|
nname.gsub!(/<EFBFBD>/, "A"); nname.gsub!(/<EFBFBD>/, "a")
|
||||||
###
|
|
||||||
### nname.gsub!(/Ë/, "E"); nname.gsub!(/ë/, "e")
|
nname.gsub!(/<EFBFBD>/, "E"); nname.gsub!(/<EFBFBD>/, "e")
|
||||||
### nname.gsub!(/É/, "E"); nname.gsub!(/é/, "e")
|
nname.gsub!(/<EFBFBD>/, "E"); nname.gsub!(/<EFBFBD>/, "e")
|
||||||
### nname.gsub!(/È/, "E"); nname.gsub!(/è/, "e")
|
nname.gsub!(/<EFBFBD>/, "E"); nname.gsub!(/<EFBFBD>/, "e")
|
||||||
### nname.gsub!(/Ê/, "E"); nname.gsub!(/ê/, "e")
|
nname.gsub!(/<EFBFBD>/, "E"); nname.gsub!(/<EFBFBD>/, "e")
|
||||||
###
|
|
||||||
### nname.gsub!(/Ï/, "I"); nname.gsub!(/ï/, "i")
|
nname.gsub!(/<EFBFBD>/, "I"); nname.gsub!(/<EFBFBD>/, "i")
|
||||||
### nname.gsub!(/Í/, "I"); nname.gsub!(/í/, "i")
|
nname.gsub!(/<EFBFBD>/, "I"); nname.gsub!(/<EFBFBD>/, "i")
|
||||||
### nname.gsub!(/Ì/, "I"); nname.gsub!(/ì/, "i")
|
nname.gsub!(/<EFBFBD>/, "I"); nname.gsub!(/<EFBFBD>/, "i")
|
||||||
### nname.gsub!(/Î/, "I"); nname.gsub!(/î/, "i")
|
nname.gsub!(/<EFBFBD>/, "I"); nname.gsub!(/<EFBFBD>/, "i")
|
||||||
###
|
|
||||||
### nname.gsub!(/Ö/, "O"); nname.gsub!(/ö/, "o")
|
nname.gsub!(/<EFBFBD>/, "O"); nname.gsub!(/<EFBFBD>/, "o")
|
||||||
### nname.gsub!(/Ó/, "O"); nname.gsub!(/ó/, "o")
|
nname.gsub!(/<EFBFBD>/, "O"); nname.gsub!(/<EFBFBD>/, "o")
|
||||||
### nname.gsub!(/Ò/, "O"); nname.gsub!(/ò/, "o")
|
nname.gsub!(/<EFBFBD>/, "O"); nname.gsub!(/<EFBFBD>/, "o")
|
||||||
### nname.gsub!(/Ô/, "O"); nname.gsub!(/ô/, "o")
|
nname.gsub!(/<EFBFBD>/, "O"); nname.gsub!(/<EFBFBD>/, "o")
|
||||||
###
|
|
||||||
### nname.gsub!(/Ú/, "U"); nname.gsub!(/ú/, "u")
|
nname.gsub!(/<EFBFBD>/, "U"); nname.gsub!(/<EFBFBD>/, "u")
|
||||||
### nname.gsub!(/Ü/, "U"); nname.gsub!(/ü/, "u")
|
nname.gsub!(/<EFBFBD>/, "U"); nname.gsub!(/<EFBFBD>/, "u")
|
||||||
### nname.gsub!(/Ù/, "U"); nname.gsub!(/ù/, "u")
|
nname.gsub!(/<EFBFBD>/, "U"); nname.gsub!(/<EFBFBD>/, "u")
|
||||||
### nname.gsub!(/Û/, "U"); nname.gsub!(/û/, "u")
|
nname.gsub!(/<EFBFBD>/, "U"); nname.gsub!(/<EFBFBD>/, "u")
|
||||||
###
|
|
||||||
|
nname.gsub!(/<EFBFBD>/, "S"); nname.gsub!(/<EFBFBD>/, "L")
|
||||||
|
|
||||||
### nname.gsub!('#{160.chr}', "")
|
### nname.gsub!('#{160.chr}', "")
|
||||||
### if nname.match(/([#{128.chr}-#{255.chr}])/)
|
### if nname.match(/([#{128.chr}-#{255.chr}])/)
|
||||||
### puts "replacing #{$1] with '*' in '#{nname}'"
|
### puts "replacing #{$1] with '*' in '#{nname}'"
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue