buffindexed segfaults on broken overviews...

Katsuhiro Kondou kondou at nec.co.jp
Wed Jan 3 05:58:49 UTC 2001


In article <200101030414.f034EK028235 at vulpine.ao.net>,
	Dan Merillat <harik at chaos.ao.net> wrote;

} There's such a mix of return TRUE/FALSE in this function I'm not sure
} what it all means.  Katsuhiro, can you explain it and I'll send a patch
} to document it better?

That boolean means system failure at ovgroupmmap().  No problem
if TRUE, and something is wrong if FALSE.

} Anyway, this stops nnrpd from segfaulting on a few broken groups, but can
} still process valid articles in those groups.

I believe attached should fix your problem.
-- 
Katsuhiro Kondou

--- storage/buffindexed/buffindexed.c.orig	Wed Nov 22 17:44:26 2000
+++ storage/buffindexed/buffindexed.c	Wed Jan  3 14:43:56 2001
@@ -1504,8 +1504,10 @@
   caddr_t		addr;
   GIBLIST		*giblist;
 
-  if (high - low < 0)
+  if (high - low < 0) {
+    Gibcount = 0;
     return TRUE;
+  }
   Gibcount = ge->count;
   if (Gibcount == 0)
     return TRUE;



More information about the inn-workers mailing list