PDA

View Full Version : Patch for 2/15



purple
02-16-2005, 06:09 PM
Ok, here's my first take at a patch for supporting the live changes on 2/15.

Changes:
- Compression on the net protocol
- All opcodes changed again (Thanks ieatacid and Doodman for help with these)
- Struct changes
- Buffs now go up to 25

This patch is against latest CVS. Please if you're having autoconf/automake/libtool problems, take it to the help forum. If you're having actual problems with seq that seem to be caused by this patch, bring it here. Also, if you're still seeing Fragment buffer overflow warnings, say so. I'm hoping the compression will help out with this, but who knows.

Note that this doesn't include maps, so when maps don't show in new zones, it's not my bag, baby.

Attached: 02152005.patch.gz.txt (gzipped patch, remove .txt)

I<3EQ
02-16-2005, 06:51 PM
Thanks, purple! Patched cleanly, configured and compiled file, and works great using the same environment as the last build. :)

Mikey
02-16-2005, 07:23 PM
I got the same packet buffer overflow error as before. I sent the console and global.log to the same email as before.

blvan
02-16-2005, 09:04 PM
Thanks, purple! Patched cleanly, configured and compiled file, and works great using the same environment as the last build. :)


Thanks as well purple, that was some fast work.
alas, I didnt have such an easy time as 'I<3EQ'. downloaded a new CVS and can't get past 'make -f Makefile.dist all'.
I've done searches on it and there are some things I need to do, but did you do something, because I had it working from last round of patches (after removing doxygen stuff)?

Again thanks, just curious as to why it compiled fine before, but not now..

PS. if I should have thrown this in Help Desk spank me with a noodle, and move it please.

PPS. running Fedora Core 3

gruntsters
02-16-2005, 09:26 PM
What is the latest cvs? and where is it at?
latest I show on sourceforge is pre_v5_0_dev2

or rpm that is ShowEQ-5.0,0.16.rpm

both of these are a few months old

nm, found it. I see now you are changing pre_v5_0_beta each time !

bonkersbobcat
02-16-2005, 09:41 PM
What is the latest cvs? and where is it at?
latest I show on sourceforge is pre_v5_0_dev2

or rpm that is ShowEQ-5.0,0.16.rpm

both of these are a few months old

nm, found it. I see now you are changing pre_v5_0_beta each time !

Please ask these questions in the help forum, and don't forget to search first.

tanner
02-16-2005, 11:18 PM
Rolled purples patch into a .deb, hopefully this will let others help out.

FAQ contains details on how to install or upgrade.

Format: 1.7
Date: Wed, 16 Feb 2005 22:43:35 -0600
Source: showeq
Binary: showeq-dev showeq showeq-doc
Architecture: source i386 all
Version: 5.0.0.17-0.2
Distribution: unstable
Urgency: low
Maintainer: Bob Tanner <[email protected]>
Changed-By: Robert J. Tanner <[email protected]>
Description:
showeq - realtime packet analyzer for Everquest
showeq-dev - development tools for ShowEQ
showeq-doc - documentation for showeq
Changes:
showeq (5.0.0.17-0.2) unstable; urgency=low
.
* 15-Feb-2005 patch from purple
* Details here: http://www.showeq.net/forums/showpost.php?p=38195&postcount=1
Files:
009521b77fafe39f219cd55181ce5a86 727 net optional showeq_5.0.0.17-0.2.dsc
1d4a85fa2cff2563558927a95424c4ee 971402 net optional showeq_5.0.0.17-0.2.tar.gz
ffc098804367f592a33b3b07d448181a 74266 doc optional showeq-doc_5.0.0.17-0.2_all.deb
300a5c88b10884f57987c18e5b012268 6602186 net optional showeq_5.0.0.17-0.2_i386.deb
b0e6282bbdf859133ae6261a0e0889dd 80338 net optional showeq-dev_5.0.0.17-0.2_i386.deb

CeleSEQ
02-17-2005, 11:39 AM
I've released an RPM and SRPM as well. The RPM should install and run ok on Fedora Core 2 or 3, and the SRPM should build on FC2/3 and RHEL3. Older versions of Redhat may be able to build the SRPM as well.

Downloads are available at:

http://gibbled.com/seq

This is a blind build, I have not personally tested that it works, I just applied purple's patch (which applied cleanly so I'm fairly confident) then I built the RPMs from there. I'm not active in eq anymore, and even if I was, I'm not at home today. As per purple's other thread, there may still be some issues.

Enjoy.

gruntsters
02-17-2005, 04:45 PM
CeleSEQ,
You are da bomb ! I will download this tonight.

BlackShadow
02-17-2005, 06:08 PM
I never cared much about RPMs, but where do the sources end up when I do a rpm -i filename.rpm?

icyman
02-17-2005, 07:08 PM
I've had a single segmentation fault now. Running it with gdb now; hopefully I will see something. No core was dumped, and ulimit is unlimited for root on this box, so that is a bit curious. Gentoo if anyone cares & knows off the top of their head if there was something I forgot to set to get a core to dump (my first Gentoo install).

Meanwhile, when I get it again, I'll provide my command-line, setup and a stack trace, which I guess is the best I can do atm. Hopefully -g enough for good debug output, (maybe I should have tossed a -ggdb3 in there .. hmm).


][cyman

*edit 1:
Ok, didn't take too long. I have console output going, maybe it was an unknown spell or something.


Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 16384 (LWP 3926)]
0xb747fb03 in strlen () from /lib/libc.so.6
(gdb) bt
#0 0xb747fb03 in strlen () from /lib/libc.so.6
#1 0xb7456785 in vfprintf () from /lib/libc.so.6
#2 0xb7473710 in vsnprintf () from /lib/libc.so.6
#3 0x081bbf20 in vtable for EQPacketStream ()
#4 0xbfffcc3c in ?? ()
#5 0xbfffac00 in ?? ()
(gdb)


command line:

/usr/local/bin/showeq --itemdb-disable -i eth0 --ip-address=192.168.1.3

Only thing special about my setup, is that I run on a switch. So, I use ettercap to provide the packets to my EQ box. Command line for that is:


/usr/bin/ettercap -Tq -i eth0 -M arp:remote /192.168.1.3/ /192.168.1.1/

I can't think of anything else relevent to this.

*edit2: rebuilding with -ggdb3, will see if I can get some more detail out of this.

*edit3: ok, aborting the above & doing what you recommended below purple.
*edit3a: running now, waiting for seg fault.
*edit3b: still not reproducing & I am heading to bed -- will try again tomorrow evening, sorry :(

Zeus001
02-17-2005, 07:51 PM
Didnt expect this to be fixed so soon - runs very smooth again, thanks for all that work!

purple
02-17-2005, 07:56 PM
Icyman, can you reconfigure showeq with ./configure --enable-debug && make && make install and then reget me that backtrace? That just looks like a dumb error.

tanner
02-17-2005, 10:23 PM
Time to put this into seq?

Generic Feedback-Wizard
http://www.kde-apps.org/content/show.php?content=20360

purple
02-17-2005, 10:49 PM
I'd imagine if you post a patch, it would get into cvs. That's worked well for me so far.

Can someone who knows more about C++ than I do translate that backtrace? Vtable is the virtual function table? Does that backtrace mean I'm clobbering the stack somewhere or something?

CeleSEQ
02-18-2005, 02:12 AM
I never cared much about RPMs, but where do the sources end up when I do a rpm -i filename.rpm?
If you do an rpm -i filename.src.rpm (note, you need the source RPM, aka SRPM) then it will install the source and spec file for you in the location defined as the SOURCES location for your build system. By default on RedHat and Fedora systems, that will be /usr/src/redhat/SOURCES. In there you will find the primary source plus any applicable patches. The patches are applied in order at build time as configured in the file /usr/src/redhat/SPECS/showeq.spec

To build an SRPM on a recentish distro, install it, then go to your SPECS directory, inspect the SRPM, and do an rpmbuild -bb showeq.spec. (rpmbuild is newer rpm terminology, if you're on ancient versions, it might be rpm -bb or something along that line.) It will expand the source, patch it, configure it, build it and put the binary rpm in your RPMS directory. In the case of my rpms, and a default build environment then you'll find the finished product in /usr/src/redhat/RPMS/i386/

Enjoy.

BlackShadow
02-18-2005, 07:00 AM
Got errors when I tried the rpmbuild thingy, it went on for a long time and compiled, but in the end I got:
RPM build errors:
Bad exit status from /var/tmp/rpm-tmp.92510 (%build)

Anyway, when I went back to your site I saw you actually had a normal tarball there, so grabbed that one instead and it felt more like "home" and worked like a charm.

Thanks!

purple
02-18-2005, 09:00 AM
Also, people who can reproduce this seqfault, if you could turn on zone.log and pm me the last 4 or 5 decoded packets from ~/.showeq/logs/zone.log from right after you crash that may help track this down. Especially if it is rare.

EMT99a
02-18-2005, 09:22 PM
I know I'm gonna get flamed for this, and I'm sorry in advance, but how the hell do I apply this patch? Do I just cut/paste into a file and recompile or what? Also which file?

Sorry, but I'm about 3 months old into Linux and still learning...