> -----Original Message-----
> From: Gilles CHAUVIN
> Sent: Wednesday, August 28, 2002 3:03 AM
> 
> Ok, so... I'll try to explain this (with my wonderful english ;).

I didn't know that english isn't your primary language until I read
that comment. Your english is excellent!

> Looking at the ML archives gives at least two other posts that talk
> about this problem (that's the two posts I can remember talking about
> this, maybe there are others):
> http://marc.theaimsgroup.com/?l=squidguard&m=102008640828326&w=2
> http://marc.theaimsgroup.com/?l=squidguard&m=102636248825888&w=2

Let's take a quick look at those two (listed above):

2002-04-29 Poster #1 mentions that he is running:
squidGuard 1.2.0
Berkeley DB 2.7.7
[Here's a clip from Poster #1's web site: "In spite of what the
documentation says, Squidguard 1.20 requires version 3.29 of the
Berkely db."]

2002-07-11 Poster #2 does not mention the program versions he is
running, but he did post the following day that replacing the
'porn' destination group with an 'adult' group solved the problem.

> Doing a "strace" when you launch squidGuard for a database update gives
> something like:

I really appreciate your taking the time to document all of this! I'll
try to summarize my comments with ==> bullet points along the way.

> open("/var/squidGuard/hacking/domains.diffq`", O_RDONLY) = -1 ENOENT
> (No such file or directory)

It does appear that squidGuard has tried to open <domains.diffq`>. 
==> We never tell SG which directories contain .diff files and which
ones do not contain .diff files.
==> SG never complains about the directories that do not contain
.diff files.
==> At some point prior to this error, SG looked for
/hacking/domains.diff and saw that it existed, and then began the
update process (which produced the error).

> Now, assuming I don't know anything about C programming 

I've read more C code in the past 24 hours than the rest of my life
all added together. (I don't know C either.)

> It says "including the '\0' character". So, in the above line you have
> to change "5" by "6" to let room for the ending '\0 (NUL)' character.

==> If the problem was indeed that len(".diff\0")=6 (and not 5), *all*
of the .diff updates would have failed, not just one or two, right?

Based on my comments above, I don't think what you changed
eliminated the problem; I think you may have masked the problem.

==> The vast majority of users are not having the problem, so there
must be some thing(s) unique about the installations that are having
the problem. One difference between your installation and mine is 
that I am running Berkeley DB 3.29, and you are running 3.3.1.1.

==> You are running Berkeley DB 3.3.1.1. Have you applied the 2
patches listed here: <http://www.sleepycat.com/update/index.html>?

==> Continuing with the fact that you are running Berkeley DB 3.3.1.1.
This user page <http://www.maynidea.com/squidguard/faq-plus.html> says
"In spite of what the documentation says, Squidguard 1.20 requires
version 3.29 of the Berkely db." and "With 3.3.x, it craps out every
time." 

==> If you upgraded to DB 3.x, did you delete all of the .db files
and recreate them?

I don't know what the answer is, but I'm willing to help zero-in on 
the specific environment that creates the problem. Let me know what
you think.

Rick Matthews

Reply via email to