module courtroom

These are old archives. They are kept for historic purposes only.
Gavin
Posts: 3
Joined: Sat Jun 18, 2005 2:43 pm
Location: Johannesburg, South Africa

module courtroom

Post by Gavin »

i am strying to compile courtroom on Unreal 3.2.4 system, but gives me the following errors when i compile it:

courtroom.c3:1: warning: "IsSkoAdmin" redefined
In file included from courtroom.c:11:
../include/struct.h:665:1: warning: this is the location of the previous definition


Then when i try to load it, it says :

[09:04:35] -Inferno.FireServ.Za.Net- *** Notice -- unrealircd.conf:18: loadmodule src/modules/courtroom.so: failed to load: tmp/550BF7A3.courtroom.so: Undefined symbol "m_part".

Any ideas??
ReverendSho
Posts: 5
Joined: Sat Apr 30, 2005 4:52 am

I'm getting the same error, so you know you're not alone.

Post by ReverendSho »

I'm not sure what I'm doing wrong. I've gone to AngryWolf's site where I downloaded this fron, but I can't find anything to help. I'm trying to install the courtroom module, and when I rehash, it gives me an error. My box is a FreeBSD box and I run Unreal 3.2.4.

Oh, Gavin, here's how to fix that compiler error. I found it in another thread here:

courtroom.c3:1: warning: "IsSkoAdmin" redefined
In file included from courtroom.c:11:

Delete the line that says #define "IsSkoAdmin" from the module, it'll still compile fine. That doesn't fix the rehash error, that I get also, but it'll fix the compiler thing.

Error on re-hash:
[02:44] *** (s) Notice -- Got signal SIGHUP, reloading unrealircd.conf file
[02:44] *** (s) Notice -- Loading IRCd configuration ..
[02:44] *** (s) Notice -- unrealircd.conf:36: loadmodule src/modules/courtroom.so: failed to load: tmp/5AC693E5.courtroom.so: Undefined symbol "m_part"
[02:44] *** (s) Notice -- error: IRCd configuration failed to load

What is wrong with the module, or what can I do to get it to work? I've checked documentation, and could not find any more information on this problem.

Any assistance would be appreciated.
3-A IRC Network - alpha.3a-irc.net 6667-7000 / 6697 for SSL
"Keep your friends close, and your enemies away with the gline/zline commands."
Jason
Posts: 570
Joined: Mon Jun 14, 2004 5:09 pm

Post by Jason »

The lite version works fine. Its just the +U, not the /quarantine stuff.
Why the hell can't my signature be empty?
"Your message contains too few characters."
carlosagv
Posts: 16
Joined: Wed Feb 16, 2005 1:57 am

Post by carlosagv »

http://www.freewebtown.com/carlosagv/IR ... rtroom.zip

fixed version tested with freebsd 5.4 and windows
SpaceDoG
Posts: 301
Joined: Mon Feb 27, 2006 5:44 am
Contact:

Post by SpaceDoG »

Ok I just installed this on my server and discovered a bad bug. If you quarantine someone and the unquarantine them they are still +U. That caused an issue on my server where I did /qlist and it killed the IRCd.
mexx3k
Posts: 17
Joined: Sun Apr 10, 2005 8:54 pm
Location: Chaoz-IRC
Contact:

Post by mexx3k »

SpaceDoG wrote:That caused an issue on my server where I did /qlist and it killed the IRCd.
gut the same here ...

There are also problems when a server gets delinked and links back in ... the "+U" is still set on the user ...
SpaceDoG
Posts: 301
Joined: Mon Feb 27, 2006 5:44 am
Contact:

Post by SpaceDoG »

Is it possible for someone out there to fix this? I would but I have no clue what I'm doing.
chevyman2002
Posts: 62
Joined: Sun Nov 14, 2004 2:55 am
Location: Texas
Contact:

Re: module courtroom

Post by chevyman2002 »

Has anyone found a fix for this module? Or can someone provide an updated link as the previous one no longer works. I miss this module :(.
Your face looks like it was set on fire and put out with an axe ;x.
chevyman2002
Posts: 62
Joined: Sun Nov 14, 2004 2:55 am
Location: Texas
Contact:

Re: module courtroom

Post by chevyman2002 »

For anyone interested, I got bored tonight and decided to finally look more into it than before. I made the following two changes at line 832:

//(void) m_part(cptr, cptr, 3, parv);
do_cmd(cptr, cptr, "PART", 3, parv);

While i'm still in the midst of playing with it, it DOES appear to be working (compiles and loads properly). I'm sure there will be incidents of crashing and that this isn't the proper way to do it, but I really don't feel like searching through all the code tbh... maybe this will help someone out..
Your face looks like it was set on fire and put out with an axe ;x.
chevyman2002
Posts: 62
Joined: Sun Nov 14, 2004 2:55 am
Location: Texas
Contact:

Re: module courtroom

Post by chevyman2002 »

I've watched the views on this topic and can see that people are still interested in it, so I'm giving another response. I have changed the command from /quarantine to /suspend and made some syntax changes [nothing major]. Something i am noticing while testing this module on two linked servers is that it doesn't syncronize properly. I can 'suspend' a user accross the servers but sometimes when that user disconnects and you use /qlist to display active users who are 'suspended', it will crash that server (not the other server, thus far). If anyone has suggestions to speed the process of getting this module back on its feet, please let me know! I will gladly host a download for this module once completed (if stable).
Your face looks like it was set on fire and put out with an axe ;x.
Stealth
Head of Support
Posts: 2086
Joined: Tue Jun 15, 2004 8:50 pm
Location: Chino Hills, CA, US
Contact:

Re: module courtroom

Post by Stealth »

From the description of the problem it seems like the module is not properly cleaning up after itself when a user quits or is killed.
chevyman2002
Posts: 62
Joined: Sun Nov 14, 2004 2:55 am
Location: Texas
Contact:

Re: module courtroom

Post by chevyman2002 »

I appreciate you replying to this post, as old as it is. I will start off by admitting that I've never done modules for Unreal, ever. I don't understand where the problem would be. Granted, it would seem as if when the command /qlist is called and it searches for all users that have the 'Q' flag (usermode 'U'), one server says the user doesn't exist (the server they were on) and the other says the user does exist [the best I can tell] and causes the local server that had the /qlist command originate from to crash. I have created a download for the file as it sits as of the time of this post found here. Feel free [anyone] to check it out and see if there's anything you'd like to add/remove and most certainly if you see what may cause the problems listed above.

For the sake of saving people time, here's the functions respectively..

When the user quits [presumably]..

Code: Select all

static int cb_quit(aClient *sptr, char *comment)
{
	clear_qflag(sptr);
	return 0;
}
The called function 'clear_qflag()'

Code: Select all

static void clear_qflag(aClient *cptr)
{
	QFlag *q;

	if ((q = find_qflag(cptr)))
		del_qflag(q);
}
Which calls the functions..

Code: Select all

static QFlag *find_qflag(aClient *cptr)
{
	QFlag *q;

	for (q = QFlagsList; q; q = q->next)
		if (q->cptr == cptr)
			break;

	return q;
}

static inline void del_qflag(QFlag *q)
{
	DelListItem(q, QFlagsList);
	MyFree(q);
}
Does "DelListItem(q, QFlagsList);" delete it accross all linked servers?
Your face looks like it was set on fire and put out with an axe ;x.
Stealth
Head of Support
Posts: 2086
Joined: Tue Jun 15, 2004 8:50 pm
Location: Chino Hills, CA, US
Contact:

Re: module courtroom

Post by Stealth »

Each server should be responsible for deleting the user out of its own tables.
katsklaw
Posts: 1124
Joined: Sun Apr 18, 2004 5:06 pm
Contact:

Re: module courtroom

Post by katsklaw »

DelListItem doesn't need to propagate across the net because the QUIT and PART commands do and every ircd that has this module loaded should do their own DelListItem on their own data tables as stealth was saying.

Few Questions,

1> What's the TS difference on all the servers when this happens?
2> Is this module loaded on all servers?
3> Are we positive this module is compatible with the unreal version being used on? (seeing stuff like "courtroom.c3:1: warning: "IsSkoAdmin" redefined " makes me wonder since IsSkoAdmin is already defined in the ircd struct.) I can see this as a problem if the user in question is what the ircd regards as a IsSkoAdmin.
chevyman2002
Posts: 62
Joined: Sun Nov 14, 2004 2:55 am
Location: Texas
Contact:

Re: module courtroom

Post by chevyman2002 »

1) what is the best way to determine this??
2) yes
3) it is angrywolf's module originally written for 3.2-RC2.. i have only done light mods to this module, as i lack sufficient knowledge of the API and Unreal's structure.. if the current code is so fubar'd or incompatible, i may consider reading up on the documentation and other source code to attempt to fix it; otherwise, i'll probably just leave it alone and cut the losses.. it's just a nice module that quite a few people seem interested in having back once again..

let me know what your thoughts are, thanks!
Your face looks like it was set on fire and put out with an axe ;x.
Post Reply