aboutsummaryrefslogtreecommitdiffstats
path: root/pingu_host.c
Commit message (Collapse)AuthorAgeFilesLines
* move soures to src subdirNatanael Copa2013-08-221-165/+0
|
* pingu_host: bring interface down instantly if interface disapearsNatanael Copa2012-06-121-0/+8
| | | | | | | | | We need execute the down hook in case interface goes down if we have gre tunnels bound to an interface. If for example ppp0 disapears (pppd restart) and comes back before pingu notices it, the gre interface will not be bound to anything. So we force the "down" event instantly if we detect that the iface is gone.
* pingu: cleanup various structures on shutdownNatanael Copa2012-03-061-0/+16
|
* pingu_adm: implement host-status and gateway-statusNatanael Copa2011-10-121-1/+3
|
* pingu_host: use ONLINE/OFFLINE in log messageNatanael Copa2011-10-111-2/+4
|
* pingu_host.c: wait a sec before we send first burstNatanael Copa2011-10-111-1/+1
| | | | This is so we get time to detect routes from kernel
* pingu_iface: support binding multiple ping hosts to same ifaceNatanael Copa2011-10-071-23/+23
| | | | | | | Add config option for executing actions when interface gateway goes up/down. Add config option for required hosts up per interface (defaults to 1)
* pingu_host: end status dump with a '\n' instead of '\0'Natanael Copa2011-09-211-1/+1
|
* pingu_adm: implement initial admin socketNatanael Copa2011-09-211-0/+11
| | | | only supported command so far is "status"
* pingu_ping: cleanup. Use constant to indicate if we ignore error or notNatanael Copa2011-09-091-1/+1
| | | | This makes code cleaner and easier to read.
* pingu_host: cleanup. use constant to indicate host online/offlineNatanael Copa2011-09-091-3/+3
| | | | This is to make code cleaner and easier to read.
* pingu_netlink: do not add dead routes to multipathNatanael Copa2011-09-091-0/+9
| | | | | We don't was add a multipath via an interface that a pinghost has set as DOWN.
* pingu: implement new config formatNatanael Copa2011-08-051-191/+29
| | | | | | | | | | | | | | | | | | | | | New format allows users to define interfaces and ping hosts separately. This means we can run pingu in routing-only mode to set up and manage route tables for multi-isp. We allow the user config a preferred alternate route table for each interface. If not configured, pingu will pick one. Example interface definition looks like: interface eth0 { route-table 10 } Example host definition looks like: host 192.168.0.1 { bind-interface eth0 }
* pingu: use host label when logging instead of ip addrNatanael Copa2011-07-291-4/+2
|
* pingu: remove default gw from main route table when isp goes downNatanael Copa2011-07-291-0/+7
|
* Use sockaddr_any for storing address and gatewayNatanael Copa2011-07-281-2/+2
|
* pingu: add initial code to modify routing tablesNatanael Copa2011-07-211-0/+5
| | | | | For now we just create the alternate routing tables from table 10 and +1 for each new interface. First interface is 10, second is 11 etc.
* pingu_netlink: monitor link status of interfaces via netlinkNatanael Copa2011-07-131-2/+0
|
* pingu_iface: implement pingu_iface_usable()Natanael Copa2011-07-131-1/+1
| | | | To test if we can use socket.
* pingu: try bind socket to interface every burstNatanael Copa2011-07-131-5/+10
| | | | | | It might be an interface that disappeared and came back, e.g ppp0. We also don't even try unless we have a successful binding.
* pingu: run the route-script againNatanael Copa2011-07-081-0/+50
|
* pingu: move config reading to pingu_host and make host_list globalNatanael Copa2011-07-081-2/+144
|
* pingu_host: execute the actionNatanael Copa2011-07-081-1/+25
|
* pingu: fix misc bugsNatanael Copa2011-07-071-2/+3
| | | | fix some segfaults and some logic bugs
* pingu_host: initial implementationNatanael Copa2011-07-071-0/+49