[IRCServices] EnableAnopeWorkaround doesn't work with db imported
from anope-1.7.18 using enc_old
Pierre Fagrell
pierre at fagrell.net
Thu Oct 11 12:36:11 PDT 2007
Andrew Church skrev:
>> Hi
>>
>> I'm currently running anope-1.7.18 which was earlier upgraded from an older version with the broken md5 encryption.
>> In order to use the old db in the new anope I use the enc_old option and that works fine.
>>
>> No I want to migrate this database to ircservices but I can't get it to recognize the passwords. I made two example users for a test:
>
> Thanks for this report. Can you please try applying the patch below to
> your Services source code (save this message to a file and give the command
> "patch -p0 <file" in the ircservices-5.1.0 directory, where "file" is the
> path of the file you saved the message to), then recompiling and running
> the converter again?
>
> --Andrew Church
> achurch at achurch.org
> http://achurch.org/
>
> Index: tools/convert-epona.c
> ===================================================================
> RCS file: /var/local/cvsroot/ircservices/tools/convert-epona.c,v
> retrieving revision 2.40
> diff -u -r2.40 convert-epona.c
> --- tools/convert-epona.c 10 Oct 2007 05:57:31 -0000 2.40
> +++ tools/convert-epona.c 11 Oct 2007 18:03:00 -0000
> @@ -116,6 +116,8 @@
> ngi->os_priv = NP_SERVADMIN;
> else if (tmp32 & 0x00001000) /* NI_SERVICES_OPER */
> ngi->os_priv = NP_SERVOPER;
> + if (tmp32 & 0x00004000)
> + ngi->pass.cipher = sstrdup("md5");
> if (tmp32 & 0x00080000)
> ngi->flags |= NF_NOOP;
> SAFE(read_int16(&tmp16, f));
> @@ -485,6 +487,8 @@
> ci->flags |= CF_SECURE;
> if (tmp32 & 0x00000080)
> ci->flags |= CF_VERBOTEN;
> + if (tmp32 & 0x00000100)
> + ci->pass.cipher = sstrdup("md5");
> if (tmp32 & 0x00000200)
> ci->flags |= CF_NOEXPIRE;
> if (tmp32 & 0x00000800)
> ------------------------------------------------------------------
> To unsubscribe or change your subscription options, visit:
> http://lists.ircservices.za.net/mailman/listinfo/ircservices
Thankyou for the patch, the patching goes fine, but it won't compile:
ircd at poller:~/ircservices-5.1.0$ patch -p0 <patchfil
Hmm... Looks like a unified diff to me...
The text leading up to this was:
--------------------------
|Index: tools/convert-epona.c
|===================================================================
|RCS file: /var/local/cvsroot/ircservices/tools/convert-epona.c,v
|retrieving revision 2.40
|diff -u -r2.40 convert-epona.c
|--- tools/convert-epona.c 10 Oct 2007 05:57:31 -0000 2.40
|+++ tools/convert-epona.c 11 Oct 2007 18:03:00 -0000
--------------------------
Patching file tools/convert-epona.c using Plan A...
Hunk #1 succeeded at 116.
Hunk #2 succeeded at 487.
done
I'm running under freebsd 6.2 using gmake 3.80:
gcc -DSTATIC_MODULES -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -I.. -DCONVERT_DB -c convert-epona.c -o convert-epona.o
convert-epona.c: In function `epona_load_chan':
convert-epona.c:491: error: structure has no member named `pass'
gmake[1]: *** [convert-epona.o] Error 1
gmake[1]: Leaving directory `/usr/home/ircd/ircservices-5.1.0/tools'
gmake: *** [tools] Error 2
//Pierre Fagrell