This is the new home of the egghelp.org community forum.
All data has been migrated (including user logins/passwords) to a new phpBB version.


For more information, see this announcement post. Click the X in the top right-corner of this box to dismiss this message.

What happened to the "clock" command?

General support and discussion of Eggdrop bots.
Post Reply
L
Luminous
Op
Posts: 146
Joined: Fri Feb 12, 2010 1:00 pm

What happened to the "clock" command?

Post by Luminous »

I wake up this morning to see my bot spamming my dcc window with "Tcl error: invalid command name "clock"", but i didn't change anything? I search google and all I see are threads about people breaking clock... I didn't do that, didn't update, nothing's changed, and this is only happening on one bot. So, what's the deal? I try to do .tcl clock seconds in dcc and it says the same thing... did the clock command get replaced or something?

Edit: funnily, this is only happenin on one script out of many that uses clock. I disable it and the error vanishes... but using .tcl clock seconds still fails. And yet.... clearly my other scripts are using clock properly? Wtf? Eggdrop is just completely random nowadays... that makes absolutely no sense, in fact, it's impossible. Either the command is there, or it isn't, it can't be both...
n
nml375
Revered One
Posts: 2860
Joined: Fri Aug 04, 2006 2:09 pm

Post by nml375 »

Most likely, some script (or someone) issued a tcl-command similar to this:

Code: Select all

rename clock ""
This removes the command until the Tcl interpreter is restarted, thus you'll have to restart your eggdrop to restore the command.

You might also want to check whether you've got any scripts that rename any commands.
NML_375
L
Luminous
Op
Posts: 146
Joined: Fri Feb 12, 2010 1:00 pm

Post by Luminous »

No one has access other than me. And I sure never ran any such command as that. No script has been updated whatsoever. All I've done is add a special context command for someone, which just reads the last 10 lines of the logfile and a string match comparison to another script. Nothing should have overwritten "clock" anyway.

And a correction: my other bot is now doing this too, again, from nowhere. :\

I would update my bot if I wasn't 100% I'd have to rewrite every single script...

Btw: restarted my bots many times. The command simply is no longer a part of tcl, at all. :\ How would I add it back?
t
thommey
Halfop
Posts: 76
Joined: Tue Apr 01, 2008 2:59 pm

Post by thommey »

As of Tcl8.5 [clock] is written in Tcl and loaded on start of the Tcl interpreter (clock.tcl in the [info library] directory). Try recompiling eggdrop to adapt to your new version/paths of Tcl. If that fails verify your Tcl installation is working correctly (does [clock] work in tclsh?). Also post us what .status says about the Tcl library path, what files you can find there and what [info library] in both eggdrop and tclsh is.
(Use the tclsh being the same version as the Tcl version eggdrop links against, usually tclsh8.4 or tclsh8.5)
L
Luminous
Op
Posts: 146
Joined: Fri Feb 12, 2010 1:00 pm

Post by Luminous »

Well, that's just it, I haven't updated or changed my version of eggdrop, so I don't see why the paths would have changed. And I'm really not sure how to check all of that... I've never used tclsh. As for .status, that's always crashed my bots from the day I compiled them, so it's long since been disabled in the .conf.

All I know is that the version is 1.6.19, and I directories as follows in the .conf:

set mod-path "modules/"
set help-path "help/"
set text-path "text/"

As for any paths to tcl... I don't see any. I know that wasn't much help. :\
t
thommey
Halfop
Posts: 76
Joined: Tue Apr 01, 2008 2:59 pm

Post by thommey »

Your information is of no relevance unfortunately.
Just because *you* didn't change anything doesn't mean nothing has changed in your system - obviously something is different now so something has changed - feel free to blame solar flares if you insist. .status crashing your bot is something that shouldn't happen and is an indication for a serious error in your bot. With this kind of bug being present nothing your bot does would surprise me.
Please recompile eggdrop, I think it could fix your problem with Tcl (and .status I hope)
L
Luminous
Op
Posts: 146
Joined: Fri Feb 12, 2010 1:00 pm

Post by Luminous »

Yeah, at this point, it seems like something is not right in the tcl library... unfortunately, I have no access to that on this host.. I can ask that it be looked into though.

I can try a recompile, but I have tried that in the past to fix .status and had no luck.
p
pseudo
Halfop
Posts: 88
Joined: Mon Nov 23, 2009 4:52 am
Location: Bulgaria
Contact:

Post by pseudo »

Switch to the latest version before reporting problems.
L
Luminous
Op
Posts: 146
Joined: Fri Feb 12, 2010 1:00 pm

Post by Luminous »

I have before... if I do that, more things will be invalid.
p
pseudo
Halfop
Posts: 88
Joined: Mon Nov 23, 2009 4:52 am
Location: Bulgaria
Contact:

Post by pseudo »

Then your problem reports are invalid too...
n
nml375
Revered One
Posts: 2860
Joined: Fri Aug 04, 2006 2:09 pm

Post by nml375 »

Luminous,
Are you using any ipv6 or ssl patches? I roughly recall that the poorly written (aka buggy as hell) patches will break the .status command among other things..

That said, looking into the missing clock command is rather futile, if your eggdrop is not "sane" otherwize.

The eggheads dev-team prefers bug-reports based on the most recent version of eggdrop, as this issue might already have been reported and fixed - tracking it down over and over would be a frustrating waste of time. Since you say 1.6.20 experiences the same or similar issues, do a full bug report (using 1.6.20, see the BUG-REPORTS file in the doc/ directory).
NML_375
L
Luminous
Op
Posts: 146
Joined: Fri Feb 12, 2010 1:00 pm

Post by Luminous »

No, not using any patches.

This appears to be a shell related issue, involving core file size and grsec. Working on fixing it...
Post Reply