Patch for Cerebrus 1.0.3
[1/5] from: gchiu::compkarori::co::nz at: 17-Nov-2002 11:31
Hi Guys,
Would those running Cerebrus 1.0.3 like to try this patch.
It downloads a 17Kb patch file, applies it to Cerebrus.exe
and creates new-cerebrus.exe.
When new-cerebrus.exe is run, it should copy itself over
cerebrus.exe, and when cerebrus.exe is then run, it
deletes new-cerebrus.exe.
This update facility was supposed to be automatic in 1.0.3
but something broke :( I'm hoping it will work after
this.
1.0.4 adds a cache directory overcoming the problems when
a POP client can not alter the time out period.
Rebol [
file: %patch-file.r
author: "Graham Chiu"
date: 16-November-2002
purpose: {
patches the Cerebrus binary. Patch code based
upon Gabriele Santilli's code.
}
]
patch-File: func [
filename [file!] "cerebrus.exe"
patch [url! file!] "%patchfile.bin"
md5 [url! file!] "%patchfile.md5"
newmd5 [url! file!] "%newfile.md5"
/local original target
] [
calcMD5: func [ binData ] [
return enbase/base checksum/method binData 'md5
16
]
either error? try [
patch: read/binary patch
md5: read md5
newmd5: read newmd5
] [ print "Error reading files"]
[
either equal? md5 calcmd5 patch [
either error? try [ original: read/binary
filename ] [
print [ "file: " filename " not found!" ]
]
[
patch: to-binary decompress patch
clear skip original length? patch
target: original xor patch
either equal? newmd5 calcMD5 target [
write/binary to-file join "new-"
filename target
print rejoin [ "Success - Updated
version is now: " "new-" filename ]
] [
print [ "Patch failed. MD5 should
be: " newmd5 " but patched file is: " calcMD5 target ]
]
]
]
[ print "md5 mismatch on reading patch file"]
]
]
updateCerebrus: does [
patch-file %cerebrus.exe
http://guest:[guest--www--compkarori--com]/cerebrus/downloads/cerebrus103.bin
http://guest:[guest--www--compkarori--com]/cerebrus/downloads/cerebrus103.md5
http://guest:[guest--www--compkarori--com]/cerebrus/downloads/newcerebrus103.md5
]
--
Graham Chiu
[2/5] from: greggirwin:mindspring at: 17-Nov-2002 10:56
Hi Graham,
GC> Would those running Cerebrus 1.0.3 like to try this patch.
It worked fine once I didn't have Cerberus running (which I had
forgotten). I think, at least for me, I would like some kind of option
to have a little UI displayed so I know it's running, give me a place
to shut it down, etc. I haven't plugged it into my mail chain yet, so
maybe it does that already and I just haven't seen it working. In any
case, the patch seemed to work fine.
-- Gregg
[3/5] from: al:bri:xtra at: 18-Nov-2002 9:00
Hi, Graham.
I tried it after removing line breaks and adding "updateCerebrus" to the end
of the script. There was some problems. I clicked on new-cerebrus.exe and
new-cerebrus loaded into memory and I had to remove it from memory with the
task manager. Then I tried clicking on cerebrus.exe and that did the right
thing (I think!), and I've now got version 1.0.4 running.
Andrew Martin
ICQ: 26227169 http://valley.150m.com/
[4/5] from: gchiu:compkarori at: 18-Nov-2002 9:09
Hi Gregg,
>GC> Would those running Cerebrus 1.0.3 like to try this
>patch.
>
>It worked fine once I didn't have Cerberus running (which
>I had
>forgotten). I think, at least for me, I would like some
Hmm. It shouldn't matter if Cerebrus is running or not as
it just reads the binary and writes out the new binary. I
just tried it now, and it successfully created the
new-cerebrus.exe while it was still running.
Your feedback is somewhat reassuring as I was a bit
worried when the only report I got back was from Louis who
reported a MD5 mismatch. But in thinking about it, I may
have built him a special version and I didn't change the
version numbers :(
>kind of option
>to have a little UI displayed so I know it's running,
<<quoted lines omitted: 4>>
>working. In any
>case, the patch seemed to work fine.
You must be running it in GUI mode in which case you'll
never see the POPUPs appear since you will never call it
while it is not plugged into your email client :)
But yes, a persistent UI like a system tray icon would be
nice.
--
Graham Chiu
[5/5] from: gchiu:compkarori at: 18-Nov-2002 9:23
Hi Andrew,
>I tried it after removing line breaks and adding
>"updateCerebrus" to the end
Ahh, yes, I forgot to add that ...
>of the script. There was some problems. I clicked on
>new-cerebrus.exe and
<<quoted lines omitted: 3>>
>that did the right
>thing (I think!), and I've now got version 1.0.4 running.
New-cerebrus when it first starts up, copies itself over
cerebrus.exe, and so can be left running. But when you
next run cerebrus.exe it will delete new-cerebrus.exe for
you.
This should all be automagic from now *if* I've got it
right!
--
Graham Chiu
Notes
- Quoted lines have been omitted from some messages.
View the message alone to see the lines that have been omitted