Remove boost signal handler: It's overdesigned for our use case and creates another...
[pingcheck] / TODO
1 Wish List
2 =======================================
3 - TCP ping: Open connection to configurable port (HTTP, SMTP etc.).
4
5 - IPv6 support. Remember to change the addressv4 to address, so both can work at
6   the same time.
7
8 - Make it configurable if an IP should be reached by IPv4only or IPv6only or
9   IPv6first, IPv4first.
10
11 - QoS-Flags of the ping packets should be configurable.
12
13 - Implement a factory method to create the Pingers objects. Something like:
14   smart_ptr<Pinger> pinger_ptr = PingerCreator::create(PingerCreator::Boost)
15
16 - Refactor the BoostPinger class, it is becoming a monster. Maybe split it in
17   two classes, receive and send.
18
19 - Unit Test with boost::test.
20
21 - Execute a libt2n call if XX hosts are down instead of a script.
22
23 - Make the configuration file reloadable (see bodyndns).
24
25 TODO
26 =======================================
27 Guilherme:
28 - fix config parser:
29
30 - If one of the "[host]" in the configuration file omit the "interval" entry,
31   the application uses the next "[host]"'s "interval" entry, instead of a 
32   default value. The problem is specific to the configuration read classes
33   that are not smart enough to verify which "[host]" have this entry and which
34   don't.
35   Example:
36      [host]
37      name=A
38      [host]
39      name=B
40      interval=1
41      [host]
42      name=C
43      interval=3
44   Thus, the tuples will be (A,1) , (B,3), (C,?), but A should have a default
45   value, instead of borrow B's value.
46
47 - Perform a better treatment of missing configuration items, actually the
48   application just crashes.
49
50 - Documentation of the functions (doxygen)
51
52 - Make the link down interval also configurable. Today it is possible just to
53   configure the amount of time the link must to be up to notify. Do another
54   configuration to allow the time of link down.
55
56 - The interval between each ping to the same host is 1 second later than in the
57   configuration file. For example, a ping configured to be performed each 5
58   seconds takes 6.
59
60 Tom:
61 - Thread shutdown
62 - Make the log level configurable.
63 - Incrementing sequence number (The sequence number is always 1)
64
65 - In boost-net-dns/network_array.hpp fix the type-punning to enforce better type
66   checking. Also allows the optimization -O2 on GCC with strict-aliasing warning.
67
68 Known Bugs
69 =======================================
70 No bugs :)