| View previous topic :: View next topic |
| Author |
Message |
Alchera Revered One

Joined: 11 Aug 2003 Posts: 3344 Location: Ballarat Victoria, Australia
|
Posted: Tue Nov 14, 2006 7:51 pm Post subject: |
|
|
| soraver wrote: | so, where can i find this linknet+s.diff?
there's a 404 there, and eggdrop still doesnt support the +S mode :S |
Look at the date on that post? You expect after two years it would still be valid?
Try Google? _________________ Add [SOLVED] to the thread title if your issue has been.
Search | FAQ | RTM |
|
| Back to top |
|
 |
soraver Voice
Joined: 27 Aug 2005 Posts: 5
|
Posted: Wed Nov 15, 2006 7:57 am Post subject: |
|
|
thanks for the fast reply,
i did google it... a lot!
try yourself if u believe i didnt...
i asked here because its the only place i found a good solution... and because dollar might still be around. |
|
| Back to top |
|
 |
Alchera Revered One

Joined: 11 Aug 2003 Posts: 3344 Location: Ballarat Victoria, Australia
|
Posted: Wed Nov 15, 2006 8:16 am Post subject: |
|
|
Try looking at dollar's details as there might be a contact address. _________________ Add [SOLVED] to the thread title if your issue has been.
Search | FAQ | RTM |
|
| Back to top |
|
 |
soraver Voice
Joined: 27 Aug 2005 Posts: 5
|
Posted: Wed Nov 15, 2006 8:47 am Post subject: |
|
|
thats a good idea i sent him a pm....
i hope he'll see it... :s |
|
| Back to top |
|
 |
demond Revered One

Joined: 12 Jun 2004 Posts: 3073 Location: San Francisco, CA
|
Posted: Thu Nov 16, 2006 6:04 am Post subject: |
|
|
in eggdrop, there is only one feasible way of handling non-standard irc modes - with [bind raw] scripts, and such samples have already been provided on these forums - search for "hardcoded modes", "bind raw", "proc foo" _________________ connection, sharing, dcc problems? click <here>
before asking for scripting help, read <this>
use [code] tag when posting logs, code |
|
| Back to top |
|
 |
soraver Voice
Joined: 27 Aug 2005 Posts: 5
|
Posted: Wed Nov 22, 2006 6:46 am Post subject: |
|
|
anyway,
i tried to code a tcl script for checking and forcing +S mode based on this one: http://forum.egghelp.org/viewtopic.php?p=22738#22738
I got bored of it not working and of my non-existant programming skills so here it is for everybody who wants to do the same thing... I'm off it now...
Just posting it to help others, i dont expect any debugging at all.
| Code: |
set ssl_timer 60
set chanlistS "#chan1 #chan2"
timer $ssl_timer ssl_test
proc ssl_test {} {
global chanlistS ssl_timer chanmodes
foreach chan $chanlistS {
if {[botisop $chan]} {
if {[string match *S* $chanmodes($chan)] == "0"} {
pushmode $chan +S
flushmode $chan
putlog "SSL: set +S on $chan"
}
}
}
timer $ssl_timer ssl_test
}
bind dcc n sslstart ssl_start
proc ssl_start {nick uhost arg} {
global ssl_timer
timer $ssl_timer ssl_test
}
putlog "LinkNet +S mode support added"
bind dcc n sslstart2 ssl_start2
proc ssl_start2 {nick uhost arg} {
ssl_test
}
bind raw - 324 testmodes
proc testmodes {from key arg} {
global chanmodes
list $arg
set chan [lindex $arg 1]
set modes [lindex $arg 2]
set chanmodes($chan) $modes
}
bind raw - MODE changemodes
proc changemodes {from key arg} {
global chanmodes
list $arg
set chan [lindex $arg 0]
set modes [lindex $arg 1]
if {$chanmodes($chan)} {
set chanmodes($chan) [replacemodes $chanmodes($chan) $modes]
} else {
set chanmodes($chan) [replacemodes [getchanmode $chan] $modes]
}
}
proc replacemodes {oldmodes newmodes} {
set newmodes [string trim [string trim $newmodes o] v]
set all [string length $newmodes]
set plus [string first + $newmodes]
set plusl [string last + $newmodes]
set minus [string first - $newmodes]
set minusl [string last - $newmodes]
set outmodes $oldmodes
if {$all > 1} {
if {$plus==0 && $minus>0} {
set x 1
while {$x<$minus} {
append outmodes [string index $newmodes $x ]
incr x
}
set x [expr $minus + 1]
while {$x<=$all} {
set outmodes [string trim $newmodes $x]
incr x
}
} elseif {$minus==0 && $plus>0} {
set x 1
while {$x<$plus} {
append outmodes [string index $newmodes $x ]
incr x
}
set x [expr $plus + 1]
while {$x<=$all} {
set outmodes [string trim $newmodes $x]
incr x
}
} elseif {$plus==0 && $minus==-1} {
append outmodes $plusl
} elseif {$minus==0 && $plus==-1} {
set x 1
while {$x<=$all} {
set outmodes [string trim $newmodes $x]
incr x
}
} else { putlog "something smells dirty... have u farted at the channel modes?" }
} else { putlog "something smells dirty... have u farted at the channel modes?" }
return $outmodes
}
|
|
|
| Back to top |
|
 |
|