user and pass working

This commit is contained in:
Ward Wouts 2006-08-21 19:41:29 +00:00
parent 860fb9312d
commit a98b42d408
3 changed files with 65 additions and 28 deletions

View file

@ -84,6 +84,9 @@ class NNTP
def putline(line)
puts '*put* '+line+'\r\n' if @debuglevel > 1
if ! @socket
puts '*put* '+line+'\r\n'
end
@socket.send "#{line}\r\n", 0
end

View file

@ -110,8 +110,34 @@ def initialize(nntpservers, groupname, newsrc="~/.newsrc")
@group = groupname
@preselectpattern = Regexp.new('^')
@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 = {}
@serverlist.collect{|server|
@connections[server] = {}
@ -121,9 +147,11 @@ def initialize(nntpservers, groupname, newsrc="~/.newsrc")
# p Time.now
begin
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
resp = @connections[server]["nntp"].mode_reader
p resp
rescue TimeoutError, Errno::ECONNRESET
sleep 3
retry
@ -150,7 +178,7 @@ def reconnect(server)
sleep 3
#timeout(180) 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
resp = @connections[server]["nntp"].mode_reader
rescue SocketError, Errno::EINVAL, EOFError, Errno::ETIMEDOUT, TimeoutError, Errno::ECONNREFUSED

View file

@ -103,35 +103,41 @@ def save_file(dir, name, data)
nname.gsub!(/ï/, "\"i")
nname.gsub!(/ö/, "\"o")
nname.gsub!(/ü/, "\"u")
nname.gsub!(/<EFBFBD>/, "~n")
nname.gsub!(/#{151.chr}/, " ")
nname.gsub!(/#{243.chr}/, "L")
nname.gsub!(/#{247.chr}/, "S")
end
# shit that gets through...
nname.gsub!('#{146.chr}', "")
end
### nname.gsub!(/Ä/, "A"); nname.gsub!(/ä/, "a")
### nname.gsub!(/Á/, "A"); nname.gsub!(/á/, "a")
### nname.gsub!(/À/, "A"); nname.gsub!(/à/, "a")
### nname.gsub!(/Â/, "A"); nname.gsub!(/â/, "a")
###
### nname.gsub!(/Ë/, "E"); nname.gsub!(/ë/, "e")
### nname.gsub!(/É/, "E"); nname.gsub!(/é/, "e")
### nname.gsub!(/È/, "E"); nname.gsub!(/è/, "e")
### nname.gsub!(/Ê/, "E"); nname.gsub!(/ê/, "e")
###
### nname.gsub!(/Ï/, "I"); nname.gsub!(/ï/, "i")
### nname.gsub!(/Í/, "I"); nname.gsub!(/í/, "i")
### nname.gsub!(/Ì/, "I"); nname.gsub!(/ì/, "i")
### nname.gsub!(/Î/, "I"); nname.gsub!(/î/, "i")
###
### nname.gsub!(/Ö/, "O"); nname.gsub!(/ö/, "o")
### nname.gsub!(/Ó/, "O"); nname.gsub!(/ó/, "o")
### nname.gsub!(/Ò/, "O"); nname.gsub!(/ò/, "o")
### nname.gsub!(/Ô/, "O"); nname.gsub!(/ô/, "o")
###
### nname.gsub!(/Ú/, "U"); nname.gsub!(/ú/, "u")
### nname.gsub!(/Ü/, "U"); nname.gsub!(/ü/, "u")
### nname.gsub!(/Ù/, "U"); nname.gsub!(/ù/, "u")
### nname.gsub!(/Û/, "U"); nname.gsub!(/û/, "u")
###
nname.gsub!(/<EFBFBD>/, "A"); nname.gsub!(/<EFBFBD>/, "a")
nname.gsub!(/<EFBFBD>/, "A"); nname.gsub!(/<EFBFBD>/, "a")
nname.gsub!(/<EFBFBD>/, "A"); nname.gsub!(/<EFBFBD>/, "a")
nname.gsub!(/<EFBFBD>/, "A"); nname.gsub!(/<EFBFBD>/, "a")
nname.gsub!(/<EFBFBD>/, "E"); nname.gsub!(/<EFBFBD>/, "e")
nname.gsub!(/<EFBFBD>/, "E"); nname.gsub!(/<EFBFBD>/, "e")
nname.gsub!(/<EFBFBD>/, "E"); nname.gsub!(/<EFBFBD>/, "e")
nname.gsub!(/<EFBFBD>/, "E"); nname.gsub!(/<EFBFBD>/, "e")
nname.gsub!(/<EFBFBD>/, "I"); nname.gsub!(/<EFBFBD>/, "i")
nname.gsub!(/<EFBFBD>/, "I"); nname.gsub!(/<EFBFBD>/, "i")
nname.gsub!(/<EFBFBD>/, "I"); nname.gsub!(/<EFBFBD>/, "i")
nname.gsub!(/<EFBFBD>/, "I"); nname.gsub!(/<EFBFBD>/, "i")
nname.gsub!(/<EFBFBD>/, "O"); nname.gsub!(/<EFBFBD>/, "o")
nname.gsub!(/<EFBFBD>/, "O"); nname.gsub!(/<EFBFBD>/, "o")
nname.gsub!(/<EFBFBD>/, "O"); nname.gsub!(/<EFBFBD>/, "o")
nname.gsub!(/<EFBFBD>/, "O"); nname.gsub!(/<EFBFBD>/, "o")
nname.gsub!(/<EFBFBD>/, "U"); nname.gsub!(/<EFBFBD>/, "u")
nname.gsub!(/<EFBFBD>/, "U"); nname.gsub!(/<EFBFBD>/, "u")
nname.gsub!(/<EFBFBD>/, "U"); nname.gsub!(/<EFBFBD>/, "u")
nname.gsub!(/<EFBFBD>/, "U"); nname.gsub!(/<EFBFBD>/, "u")
nname.gsub!(/<EFBFBD>/, "S"); nname.gsub!(/<EFBFBD>/, "L")
### nname.gsub!('#{160.chr}', "")
### if nname.match(/([#{128.chr}-#{255.chr}])/)
### puts "replacing #{$1] with '*' in '#{nname}'"