Commit graph

6 commits

Author SHA1 Message Date
Enno Gröper
ae7747db87 analyse: critical bug in the counting code
The problem is, that you simply count all lease occurrences in
dhcpd.leases, but only the last ones for each ip address are
valid.  The lease file is more like a logfile of what has been
done, than a real database.  To fix the counting issue, I'm using
a single hash (from uthash.h [1]) for the counting.  This way
only the last lease entry for each IP gets into my counting
structure.

When you remove the duplicates in prepare_data(), you don't have
the information anymore, if the active lease entry or the free
lease entry came last.  Simply deleting each ip from the touches
array, that is already in the leases array, gives you a big
chance to count wrong.  Another way of fixing this would be to
not only store the ips in your arrays, but a structure containing
the ip and a global lease entry counter.  Then you could delete
all entries except for the latest.

[1] http://uthash.sourceforge.net/

Reported-by: Huangy
Signed-off-by: Enno Gröper <groepeen@cms.hu-berlin.de>
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2012-05-02 19:57:45 +02:00
Sami Kerola
f3181bd1e4 docs: update TODO
Signed-off-by: Sami Kerola <sami.kerola@tomtom.com>
2011-12-15 10:06:31 +01:00
Sami Kerola
05cdc1bdee TODO: update bugs
Two bugs reported by anonymous.

Signed-off-by: Sami Kerola <sami.kerola@tomtom.com>
2011-12-14 09:52:28 +01:00
Sami Kerola
2747b0667b docs: TODO update
Feature requests added.

Signed-off-by: Sami Kerola <sami.kerola@tomtom.com>
2011-08-02 11:51:33 +02:00
Sami Kerola
4593ebd534 Rest of the automake file deletions.
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2011-01-21 19:32:18 +01:00
Sami Kerola
74aef1c34e Import from release candidate 2.13.
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2011-01-21 18:15:50 +01:00