liboping.c: Catch `EHOSTUNREACH' and `ENETUNREACH'
When the kernel cannot send out a packet to a host because the host or network
is unreachable, `sendto' may return with `EHOSTUNREACH' or `ENETUNREACH'. So
far all errors returned by `sendto' were considered fatal and the pinging was
aborted. This is wrong when the host is unreachable, so catching and ignoring
these errors is reasonable..
Thanks to Wolfgang Kroener for reporting and debigging this problem with me :)
When the kernel cannot send out a packet to a host because the host or network
is unreachable, `sendto' may return with `EHOSTUNREACH' or `ENETUNREACH'. So
far all errors returned by `sendto' were considered fatal and the pinging was
aborted. This is wrong when the host is unreachable, so catching and ignoring
these errors is reasonable..
Thanks to Wolfgang Kroener for reporting and debigging this problem with me :)
Bumped version to 0.2.2; Updated ChangeLog
oping: Call `return' rather than `exit' in `main'.
oping: Improved the error message is a destination cannot be resolved.
Also no further error is printed if the command exits due to no resolvable
hosts: People will notice that condition..
Also no further error is printed if the command exits due to no resolvable
hosts: People will notice that condition..
oping: Exit if no hosts could be added.
If no hosts could be added (e.g. because resolving the hostnames failed) the
oping application didn't exit but seemed to hang. Actually it was calling
`poll' (or select?) without any file descriptors, and not outputting anything
at all.
This patch makes oping exit if no hosts could be added to the oping library.
If no hosts could be added (e.g. because resolving the hostnames failed) the
oping application didn't exit but seemed to hang. Actually it was calling
`poll' (or select?) without any file descriptors, and not outputting anything
at all.
This patch makes oping exit if no hosts could be added to the oping library.
Bumped version to 0.2.1
Updated ChangeLog: Added entry about the removal of `bind(2)'.
Don't call bind when opening a socket.
The call to bind, thoug working fine under GNU/Linux, seems not to work under
other operating systems. It didn't work under FreeBSD and Mac OS X with the
`bind' call but without.
I think `bind' may only be neccessary if we want to bind to a specific
interface. It might be a good idea to add the possibility later, so I only
commented the code for now.
The call to bind, thoug working fine under GNU/Linux, seems not to work under
other operating systems. It didn't work under FreeBSD and Mac OS X with the
`bind' call but without.
I think `bind' may only be neccessary if we want to bind to a specific
interface. It might be a good idea to add the possibility later, so I only
commented the code for now.
Cast `size_t' to `unsigned int'. Needed by Mac OS X.
This cast has been missed by the prefious fix because it was in the debugging
code which was disabled then..
This cast has been missed by the prefious fix because it was in the debugging
code which was disabled then..
Merge branch 'debug-flag' into liboping-0.2
Added `--enable-debug' to the configure script.
It's now possible to enable debugging by using the above configure option.
It's now possible to enable debugging by using the above configure option.
Added a ChangeLog entry about changes in the build system.
Fix the configure-script for FreeBSD.
The `netinet/*.h' includes need `sys/types.h' to be included before they are.
This prevented building under FreeBSD as reported by `_oli_'.
The `netinet/*.h' includes need `sys/types.h' to be included before they are.
This prevented building under FreeBSD as reported by `_oli_'.
Cast (size_t) to (unsigned int).
It's not always automatically an unsigned int on other platforms, e.g. Mac OS X.
It's not always automatically an unsigned int on other platforms, e.g. Mac OS X.
Bumped the version to 0.2.0. Completed the ChangeLog entry.
Reverse the ordering of the hosts.
Display a line of the following form when starting `oping':
PING www.ipv6.org (2001:6b0:1:ea:202:a5ff:fecd:13a6) 56 bytes of data.
PING www.ipv6.org (2001:6b0:1:ea:202:a5ff:fecd:13a6) 56 bytes of data.
Improved oping: Save the sequence in an `unsigned int' rather than a `uint16_t' and print the received bytes.
Updated changelog: Added the post version-0.1 changes..
Correct the calculation of the standard deviation.
Implemented better handling of the DATA stuff.. Needs to be implemented still.
But for now data can be assigned to ping_objs, it's inherited by ping_hosts and
can be retrieved by `ping_get_info'.
But for now data can be assigned to ping_objs, it's inherited by ping_hosts and
can be retrieved by `ping_get_info'.
Implemented the possibility to set the buffer being sent. This allows larger/smaller packets to be sent.
Make iterator_get_info return the sequence as an unsigned int, rather than an uint16_t.
Implemented `-h' option.
Allow non-root users to get syntax information.
Use correct computation of standard deviation.
Allow non-root users to get syntax information.
Use correct computation of standard deviation.
octo@huhu:~/liboping $ svn merge -r7:9 branches/liboping-0.1 trunk
Bumped version to 0.1.1
Added note about 0.1.1 to ChangeLog
octo@huhu:~/liboping $ svn merge -r2:3 trunk branches/liboping-0.1
octo@huhu:~/liboping $ svn cp tags/liboping-0.1.0 branches/liboping-0.1
Only display statistics in oping if packets have been received.
Also, don't devide by zero.
Also, don't devide by zero.
Added the calculation of `mdev' to `oping'
Fixed that nasty bug in the `sequence' code: Comparing an int with a short without casting.. Argh..
Copied trunk/ to tags/liboping-0.1.0
Created standard subversion directories.
Imported everything from the collectd repository.
Imported everything from the collectd repository.