/[tcldrop]/tcldrop/modules/server/server.tcl
ViewVC logotype

Diff of /tcldrop/modules/server/server.tcl

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.7 by fireegl, Wed Jun 4 21:02:38 2003 UTC revision 1.8 by fireegl, Mon Oct 13 06:28:45 2003 UTC
# Line 39  namespace eval ::tcldrop::server { Line 39  namespace eval ::tcldrop::server {
39          # These are aliases for the queues, because we use integers to specify queues internally.          # These are aliases for the queues, because we use integers to specify queues internally.
40          variable QueueAliases          variable QueueAliases
41          array set QueueAliases [list quick 10 q 10 mode 15 m 15 server 50 serv 50 s 50 help 75 h 75]          array set QueueAliases [list quick 10 q 10 mode 15 m 15 server 50 serv 50 s 50 help 75 h 75]
42            variable TimerID
43            set TimerID 0
44          # Export all the commands that should be available to 3rd-party scripters:          # Export all the commands that should be available to 3rd-party scripters:
45          namespace export isbotnick jump putserv puthelp putquick queuesize clearqueue putqueue putnow server quit          namespace export isbotnick jump putserv puthelp putquick queuesize clearqueue putqueue putnow server quit
46          # Default server related settings (These are here in case the user doesn't provide them in his config):          # Default server related settings (These are here in case the user doesn't provide them in his config):
# Line 123  proc ::tcldrop::server::server {{serv {} Line 125  proc ::tcldrop::server::server {{serv {}
125                          set port ${default-port}                          set port ${default-port}
126                  }                  }
127          }          }
         set fail 1  
128          callevent connect-server          callevent connect-server
129            variable TimerID
130            catch { killutimer $TimerID }
131          set fail [catch { connect $serv $port -timeout ${server-timeout} -myaddr ${my-ip} -control ::tcldrop::server::Read -errors ::tcldrop::server::ConnectErrors -writable ::tcldrop::server::Write } idx]          set fail [catch { connect $serv $port -timeout ${server-timeout} -myaddr ${my-ip} -control ::tcldrop::server::Read -errors ::tcldrop::server::ConnectErrors -writable ::tcldrop::server::Write } idx]
132          if {!$fail} {          if {!$fail} {
133                  ::tcldrop::idx::ChInfo $idx [list handle (server) remote $serv hostname $serv port $port type SERVER other serv timestamp [set timestamp [unixtime]]]                  ::tcldrop::idx::ChInfo $idx [list handle (server) remote $serv hostname $serv port $port type SERVER other serv timestamp [set timestamp [unixtime]]]
# Line 133  proc ::tcldrop::server::server {{serv {} Line 136  proc ::tcldrop::server::server {{serv {}
136                  set server-online $timestamp                  set server-online $timestamp
137                  set server-idx $idx                  set server-idx $idx
138                  # The timeout here is so that we can try another server.                  # The timeout here is so that we can try another server.
139                  utimer [expr { ${server-timeout} + 1 }] [list ::tcldrop::server::ConnectTimeout $idx]                  set TimerID [utimer [expr { ${server-timeout} + 1 }] [list ::tcldrop::server::ConnectTimeout $idx]]
140          } else {          } else {
141                  utimer ${server-cycle-wait} [list ::tcldrop::server::server]                  set TimerID [utimer ${server-cycle-wait} [list ::tcldrop::server::server]]
142          }          }
143          return "$serv:$port"          return "$serv:$port"
144  }  }

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.8

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26