cidr do malloc the return buffers of strtok, but it's wrong because that func returns a ptr _into_ the space of the buffer passed. Obviously it try to do some free(), but they are wrong so we get SIGSEGV. I patched the source in the correct way. Reproducible: Always Steps to Reproduce: 1. emerge cidr 2. cidr 172.16.0.1/17 3. sigsegv Actual Results: you get a segmentation violation error. as i said like 2^32 times. Expected Results: do not segfault and exit correctly.
Created attachment 16995 [details] the patched source the correct code, i post that on bugs.gentoo.org because the homepage of the author is down.
Thanks for reporting. I recommend running "diff -u old_file new_file" next time, though :-) Did you already send email to the author?
i would make diff -u the next time, but the changes are reduced to like.. 4 lines of code, so i submitted the enire patched file. thanks man