> -----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
