New TODO entries: goals for config branch
[pingcheck] / TODO
1 - Validate configuration input errors, adding validation for input values, with
2   more descriptive messages if the user enters wrong values.
3
4 - Allows input error handling for values which are not strictly required. The
5   goal is avoid the annoying requirement to put "port" and "interval" at every
6   single host.
7
8 - Refactor to provide smaller and more flexible classes, improving code
9   readability.
10
11 - Merge the Host classes in only one.
12
13 - Reuse the checksum from icmp packet in the TCP header.
14
15 - Implement a MessagePayload::encode1() to hide such statements
16   "Payload[13] | bit ? 0x08 : 0x0" and "Payload[13] & 0x04".
17
18 - IPv6 support. Remember to change the addressv4 to address, so both can work at
19   the same time.
20
21 - Make it configurable if an IP should be reached by IPv4only or IPv6only or
22   IPv6first, IPv4first.
23
24 - QoS-Flags of the ping packets should be configurable.
25
26 - Make the log level configurable.
27
28 - In boost-net-dns/network_array.hpp fix the type-punning to enforce better type
29   checking. Also allows the optimization -O2 on GCC with strict-aliasing warning.
30
31 - Make the configuration file reloadable (see bpdyndns).
32
33 - Unit Test with boost::test.
34
35 - Check performance with gprof