Segfault due to non-reentrant GeoIP?
2010-02-09 by Enrico Scholz
Hi, with milter-greylist 4.2.3 on a CentOS5 platform I get segfaults[1] like | Error Traversing Database for ipnum = 3645194514 - Perhaps database is corrupt? | *** Segmentation fault | Register dump: This seems to happen when two hosts connect within a very short time. I think that GeoIP_id_by_name() is called for the second host while this function is still executed for the first one. As both are operating on the same 'geoip_handle' handle, this will corrupt internal state when geoip is not reentrant. Enrico Footnotes: [1] see https://bugzilla.redhat.com/show_bug.cgi?id=511849#c18