Florian Forster [Tue, 8 Jun 2010 08:20:59 +0000 (10:20 +0200)]
src/oping.c: Move calculation of average and stddev to separate functions.
Florian Forster [Tue, 8 Jun 2010 07:37:33 +0000 (09:37 +0200)]
src/oping.c: Add ncurses based front-end.
Florian Forster [Tue, 8 Jun 2010 07:27:48 +0000 (09:27 +0200)]
src/oping.c: Move printing header and footer into separate functions.
Florian Forster [Tue, 26 Jan 2010 20:11:51 +0000 (21:11 +0100)]
contrib/liboping.spec: Added "provided as is" header.
Benjamin Petrin [Tue, 26 Jan 2010 20:06:13 +0000 (21:06 +0100)]
contrib/liboping.spec: Added example spec file.
I'm using collectd and the ping plugin for a project I'm working on. I noticed
that collectd is distributing a starter spec file for building RPMs but that
there wa s no such spec file for liboping. I created one which I have attached
to this email. I'm not too familiar with creating RPMs but I think it's a good
start and I was able to get a package built and installed using it. I'm giving
it to you so if you wish to put in on your website for others to start with
when creating packages t hen you may. I hope others may find this useful.
Vadim Zeitlin [Sun, 20 Dec 2009 20:45:48 +0000 (21:45 +0100)]
minor doc fixes for liboping
Hello,
I was reading the documentation of your liboping library as I'd like to
use it for a small project of mine and couldn't help noticing a few typos
in the docs, please find attached a tiny patch fixing them.
Thanks for writing this library!
VZ
Signed-off-by: Florian Forster <octo@verplant.org>
Florian Forster [Sun, 20 Dec 2009 11:13:28 +0000 (12:13 +0100)]
ChangeLog: Oops, there were actually a couple more changes in that release.
Florian Forster [Sun, 20 Dec 2009 09:25:51 +0000 (10:25 +0100)]
Bumped version to 1.3.4 and updated ChangeLog.
Florian Forster [Thu, 10 Dec 2009 15:43:54 +0000 (16:43 +0100)]
src/liboping.c: ping_receive_all: Clear the timer when a FD signals an error.
The loop likely never ends if the error isn't handled, so the least we
can do is ignore the file descriptor in the future.
Florian Forster [Thu, 1 Oct 2009 12:33:02 +0000 (14:33 +0200)]
bindings/perl: Bumped version to 1.21 and updated Changes.
Fredrik Soderblom [Thu, 1 Oct 2009 12:24:46 +0000 (14:24 +0200)]
bindings/perl/Oping.xs: Fix an off-by-one error when allocating a Perl string.
In the previous code the null byte was included in the Perl string,
making the string handling awkward.
Florian Forster [Thu, 1 Oct 2009 08:28:10 +0000 (10:28 +0200)]
oping: Temporarily drop privileges if supported by the system.
This tries to solve the read-from-any-file-issue more elegantly by
dropping privileges first thing after start-up and regaining privileges
just to open the sockets.
This has the advantage that the "-f" option is available for all users
again and files are opened according to *their* permissions.
Systems not supporting the _POSIX_SAVED_IDS feature still behave as
before, i. e. if real and effective user IDs don't match, only "-" may
be specified as input file.
Florian Forster [Tue, 29 Sep 2009 16:10:57 +0000 (18:10 +0200)]
ChangeLog: Updated the changelog to reflect the last change.
Florian Forster [Tue, 29 Sep 2009 16:09:27 +0000 (18:09 +0200)]
oping: Allow “-f -” even if uid and euid differ.
Thanks to Sebastian for the idea :)
Florian Forster [Tue, 29 Sep 2009 16:00:25 +0000 (18:00 +0200)]
Bumped version to 1.3.3; Updated ChangeLog.
Florian Forster [Tue, 29 Sep 2009 15:44:05 +0000 (17:44 +0200)]
oping: Disable the “-f” option when real and effective user IDs don't match.
Thanks to Steve Kemp who reported this issue as Debian bug #548684.
<http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=548684>
Florian Forster [Mon, 27 Jul 2009 08:31:11 +0000 (10:31 +0200)]
Bumped version to 1.3.2; Updated ChangeLog.
Sebastian Harl [Wed, 22 Jul 2009 13:35:55 +0000 (15:35 +0200)]
src/oping.h: Do not check HAVE_*_H for system headers.
Imho, this is not a good thing to do for an installed header since it requires
every user to define those macros as well.
Florian Forster [Mon, 20 Jul 2009 12:18:09 +0000 (14:18 +0200)]
ping_iterator_get_info(3): Document missing functionality under Debian Etch.
Florian Forster [Mon, 20 Jul 2009 11:53:52 +0000 (13:53 +0200)]
COPYING: Add GPLv2.
Florian Forster [Mon, 20 Jul 2009 11:51:23 +0000 (13:51 +0200)]
Bumped version to 1.3.1; Updated ChangeLog.
Sebastian Harl [Mon, 20 Jul 2009 07:40:32 +0000 (09:40 +0200)]
src/liboping.c: Fixed argument verification.
ping_iterator_get_info()'s 'buffer' argument _may_ be NULL, since the user
might only be interested in the size of the (to be) returned value. If
'buffer' is NULL, '*buffer_len' should be 0, though, to make sure nothing gets
written to 'buffer'.
This bug was introduced in commit
9ae85a09d919777c9be52e55b23c08bf2c8c1d0e.
Florian Forster [Sat, 18 Jul 2009 14:15:41 +0000 (16:15 +0200)]
Net::Oping: Set the $VERSION variable correctly.
Florian Forster [Sat, 18 Jul 2009 13:04:17 +0000 (15:04 +0200)]
.gitignore: Add tarballs.
Florian Forster [Sat, 18 Jul 2009 13:02:07 +0000 (15:02 +0200)]
ChangeLog: Updated the date of the 1.3.0 entry.
Florian Forster [Sat, 18 Jul 2009 12:59:55 +0000 (14:59 +0200)]
Net::Oping: Bumped version to 1.20.
Florian Forster [Sat, 18 Jul 2009 12:59:16 +0000 (14:59 +0200)]
Net::Oping: Add the `device' method.
Florian Forster [Sat, 18 Jul 2009 12:53:17 +0000 (14:53 +0200)]
src/oping.h: Update OPING_VERSION.
Florian Forster [Fri, 17 Jul 2009 12:59:15 +0000 (14:59 +0200)]
Bumped version to 1.3.0; Updated ChangeLog.
Florian Forster [Fri, 17 Jul 2009 12:53:04 +0000 (14:53 +0200)]
Merge branch 'liboping-1.2'
Sebastian Harl [Fri, 17 Jul 2009 12:14:18 +0000 (14:14 +0200)]
src/oping.c: Added -D <interface name> command line option.
This option sets the outgoing network device to use.
I decided not to reuse the -I command line option for that purpose (which is
what GNU ping is doing), for the following reasons:
* In theory, an interface name could be confused with a host name.
* Imho, it's better to specify things explicitly.
* This approach is more flexible.
Sebastian Harl [Fri, 17 Jul 2009 12:05:17 +0000 (14:05 +0200)]
Added support for PING_OPT_DEVICE.
This option may be used to set the outgoing network device to be used. The
value passed must be a char-pointer to a null-terminated string specifying an
interface name (e.g. eth0).
Please note that this might not be supported by all operating systems. In that
case, ping_setopt() sets the error to "operation not supported".
Sebastian Harl [Fri, 17 Jul 2009 12:41:12 +0000 (14:41 +0200)]
src/liboping.c: Catch NULL pointers passed to public functions.
Libraries should not segfault - ever - no matter what a user is doing and how
stupid that might be.
Sebastian Harl [Fri, 17 Jul 2009 12:20:01 +0000 (14:20 +0200)]
Added .gitignore.
Sebastian Harl [Fri, 17 Jul 2009 08:05:38 +0000 (10:05 +0200)]
src/liboping.c: Let ping_setopt() return -1 if 'value' is NULL.
The manpage states that 'value' must not be NULL. Anyway, imho, it's still
better to avoid segfaults inside a library.
Florian Forster [Fri, 17 Jul 2009 12:32:56 +0000 (14:32 +0200)]
src/liboping.c: Fix some format strings.
Sebastian Harl [Fri, 17 Jul 2009 07:41:58 +0000 (09:41 +0200)]
src/liboping.c: Fixed the handling of multiple hosts.
ping_receive_all() used to always pass the first host object to
ping_receive_one() which used that host object to determine the expected
address family. Thus, when pinging v4 and v6 hosts in parallel, some of them
would have never been considered but assumed to be timed out.
While at it, the code has been clarified in regard to matching an ECHO_REPLY
with the appropriate host object.
Sebastian Harl [Fri, 17 Jul 2009 07:39:35 +0000 (09:39 +0200)]
src/liboping.c: Do not reset recv_ttl in ping_receive_one().
Instead, reset the value of all host object in ping_receive_all().
ping_receive_one() does not necessarily get a pointer to the host object for
which we receive a reply, since ICMP messages may be received on _any_ raw
socket.
Sebastian Harl [Sat, 6 Jun 2009 19:25:38 +0000 (21:25 +0200)]
Minor documentation fixes.
Sebastian Harl [Sat, 6 Jun 2009 19:21:28 +0000 (21:21 +0200)]
src/oping.c: Exit successfully when using the -h option.
Sebastian Harl [Sat, 6 Jun 2009 19:18:23 +0000 (21:18 +0200)]
src/oping.c: Improved the help output.
A short description has been added for each option. Also, print the program
version and author.
Sebastian Harl [Sat, 6 Jun 2009 19:09:33 +0000 (21:09 +0200)]
src/oping.c: Improved and unified error messages when parsing CL options.
Florian Forster [Wed, 15 Jul 2009 12:13:29 +0000 (14:13 +0200)]
Bumped version to 1.2.0; Updated ChangeLog.
Florian Forster [Wed, 15 Jul 2009 11:35:13 +0000 (13:35 +0200)]
AUTHORS: Add Dan Sully.
Florian Forster [Wed, 15 Jul 2009 11:34:53 +0000 (13:34 +0200)]
oping(8): Document the new `-f' option.
Florian Forster [Wed, 15 Jul 2009 11:11:27 +0000 (13:11 +0200)]
src/oping.c: Change some codig style.
Florian Forster [Wed, 15 Jul 2009 11:09:48 +0000 (13:09 +0200)]
src/oping.c: Only treat "-" as STDIN, not all strings beginning with "-".
Dan Sully [Mon, 15 Jun 2009 19:17:53 +0000 (12:17 -0700)]
Allow reading of files containing hostnames.
Signed-off-by: Dan Sully <daniel-github@electricrain.com>
Signed-off-by: Florian Forster <octo@verplant.org>
Florian Forster [Wed, 15 Jul 2009 09:33:33 +0000 (11:33 +0200)]
src/liboping.c: Check if IPPROTO_IPV6 and IPV6_RECVHOPLIMIT are defined.
Sebastian Harl [Sat, 6 Jun 2009 12:47:42 +0000 (14:47 +0200)]
src/liboping.c: Made sstrerror() static.
This is a private helper function only.
Florian Forster [Sun, 5 Apr 2009 07:49:19 +0000 (09:49 +0200)]
Bumped version to 1.1.2; Updated ChangeLog.
Florian Forster [Fri, 3 Apr 2009 13:54:16 +0000 (15:54 +0200)]
src/liboping.c: Check if pointer is NULL before dereferencing it in `ping_receive_ipv4'.
Thanks to Tomasz Pala for pointing out the problem.
Florian Forster [Mon, 23 Mar 2009 08:57:43 +0000 (09:57 +0100)]
src/oping.h: Bump the OPING_VERSION, too.
Florian Forster [Mon, 23 Mar 2009 08:52:36 +0000 (09:52 +0100)]
Bumped version to 1.1.1; Updated ChangeLog.
Florian Forster [Mon, 23 Mar 2009 08:34:37 +0000 (09:34 +0100)]
src/liboping.c: Use ph-addrfamily to determine the protocol type.
Vladimir V. Melnikov [Mon, 23 Mar 2009 08:30:26 +0000 (09:30 +0100)]
src/liboping.c: Be more fault-tolerant when checking for the TTL.
If it's not included in the auxiliary data, fall back to the value
included in the IPv4 header which is provided via the raw socket.
Vladimir V. Melnikov [Mon, 23 Mar 2009 08:29:31 +0000 (09:29 +0100)]
src/liboping.c: Only include <stdint.h> if the configure script found it.
Florian Forster [Mon, 23 Mar 2009 08:24:54 +0000 (09:24 +0100)]
build system: Actually link with libxnet and use CPPFLAGS.
(Instead of CFLAGS.)
Vladimir V. Melnikov [Mon, 23 Mar 2009 08:22:01 +0000 (09:22 +0100)]
src/liboping.c: Added compatibility with old Solaris versions.
Apparently the X/Open conforming `recvmsg' function is in the `xnet'
library. Check for this library and use it if it exists.
Also set the ominous MSG_XPG4_2 flag. Didn't find out what it does, but
apparently it's a Solaris internal flag..
Florian Forster [Mon, 23 Mar 2009 07:53:28 +0000 (08:53 +0100)]
Net::Oping: Improve the POD a little.
Florian Forster [Mon, 23 Mar 2009 07:53:15 +0000 (08:53 +0100)]
build system: Define ABI and API versions in the configure script.
Florian Forster [Sun, 15 Mar 2009 12:57:32 +0000 (13:57 +0100)]
bindings/perl: Bumped version to 1.10; Updated Changes.
Florian Forster [Sun, 15 Mar 2009 13:03:15 +0000 (14:03 +0100)]
bindings/perl: Add some more simple syntax tests.
Florian Forster [Sun, 15 Mar 2009 12:47:32 +0000 (13:47 +0100)]
bindings/perl: Add the `ttl' method.
Florian Forster [Sun, 15 Mar 2009 13:16:19 +0000 (14:16 +0100)]
bindings/perl: Add the `get_recv_ttl' method.
Florian Forster [Sun, 15 Mar 2009 11:13:17 +0000 (12:13 +0100)]
Bumped version to 1.1.0; Updated ChangeLog.
Florian Forster [Sun, 15 Mar 2009 10:58:50 +0000 (11:58 +0100)]
AUTHORS: Added contributors so far.
Florian Forster [Sun, 15 Mar 2009 10:47:43 +0000 (11:47 +0100)]
src/oping.c: Allow setting of the TTL using `-t'.
Florian Forster [Sun, 15 Mar 2009 10:41:20 +0000 (11:41 +0100)]
src/liboping.c: When setting the TTL, update all existing pinghost_t, too.
Florian Forster [Sun, 15 Mar 2009 10:27:39 +0000 (11:27 +0100)]
manual pages: Fix some more typos.
Florian Forster [Sun, 15 Mar 2009 10:24:40 +0000 (11:24 +0100)]
src/oping.c: Print the received TTL, too.
Florian Forster [Sun, 15 Mar 2009 10:24:20 +0000 (11:24 +0100)]
src/liboping.c: Add debugging output to the TTL setting code.
Florian Forster [Sun, 15 Mar 2009 10:21:57 +0000 (11:21 +0100)]
manual pages: Fix some minor issues and typos.
Florian Forster [Sun, 15 Mar 2009 10:21:21 +0000 (11:21 +0100)]
src/liboping.c: Provide the TTL on received packets.
Thanks to Vladimir V. Melnikov for the suggestion and initial patch.
Florian Forster [Thu, 12 Mar 2009 07:48:10 +0000 (08:48 +0100)]
src/liboping.c: Make -Wextra happy.
Removed an unused parameter.
Florian Forster [Thu, 12 Mar 2009 07:39:07 +0000 (08:39 +0100)]
ping_setopt(3): Document the PING_VERSION define.
A typo if fixed, too.
Florian Forster [Thu, 12 Mar 2009 07:38:21 +0000 (08:38 +0100)]
src/oping.c: Allow shorter interval settings.
Previously, only 1/5s was allowed. Now everything down to 1/1000s is
accepted.
Florian Forster [Thu, 12 Mar 2009 07:37:10 +0000 (08:37 +0100)]
src/oping.c: Use `context_destroy' to free the context.
Florian Forster [Thu, 12 Mar 2009 07:36:39 +0000 (08:36 +0100)]
src/oping.c: Make all functions (except `main') static.
Florian Forster [Thu, 12 Mar 2009 07:35:55 +0000 (08:35 +0100)]
src/liboping.c: Remove dead code which broke strict aliasing rules.
Thanks to Alan Pevec for the pointer.
Florian Forster [Thu, 12 Mar 2009 07:34:51 +0000 (08:34 +0100)]
src/liboping.c: Use thread-safe error handling.
I. e. move to `strerror_r'.
Florian Forster [Tue, 17 Feb 2009 13:56:22 +0000 (14:56 +0100)]
src/{lib,}oping.c: Fix a few problems -Wextra has found.
Florian Forster [Tue, 17 Feb 2009 13:52:33 +0000 (14:52 +0100)]
src/{lib,}oping.c: Don't cast `size_t' to `unsigned int' when printing.
Use the "%zu" format string instead.
Florian Forster [Tue, 17 Feb 2009 13:42:02 +0000 (14:42 +0100)]
src/mans/*.pod: Updated copyright information.
Florian Forster [Tue, 17 Feb 2009 13:31:49 +0000 (14:31 +0100)]
Bumped version to 1.0.0.
Florian Forster [Tue, 17 Feb 2009 13:31:25 +0000 (14:31 +0100)]
ChangeLog, README: Updated information for the 1.0.0 release.
Sebastian Harl [Tue, 17 Feb 2009 10:51:27 +0000 (11:51 +0100)]
bindings/perl/Makefile.PL: Let the Perl module depend on liboping.la.
When building the Perl module from the liboping sources (instead of e.g. a
stand-alone Perl package), the module will now be rebuilt if the library has
been changed.
Florian Forster [Tue, 17 Feb 2009 12:16:02 +0000 (13:16 +0100)]
src/liboping.c: Beautify two debugging messages.
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
Florian Forster [Tue, 17 Feb 2009 12:15:39 +0000 (13:15 +0100)]
src/liboping.c: Fix a (too conservative) off-by-one error in ping_iterator_get_info()
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
Florian Forster [Tue, 17 Feb 2009 12:14:58 +0000 (13:14 +0100)]
bindings/perl: Add support for the number of dropped packets.
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
Florian Forster [Tue, 17 Feb 2009 12:14:30 +0000 (13:14 +0100)]
bindings/perl: Update license information in the XS file.
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
Florian Forster [Tue, 17 Feb 2009 12:14:02 +0000 (13:14 +0100)]
bindings/perl: Fix error handling in Perl:ping() and XS:_ping_iterator_get_hostname().
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
Florian Forster [Tue, 17 Feb 2009 12:12:12 +0000 (13:12 +0100)]
bindings/perl: Improve license information and fix typos in the documentation.
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
Florian Forster [Tue, 17 Feb 2009 10:29:43 +0000 (11:29 +0100)]
build system: Added some serious voodoo to make MakeMaker behave.
It is now, at last, possible to build the Perl module before installing
liboping and still have it linked correctly.
Florian Forster [Tue, 17 Feb 2009 08:30:54 +0000 (09:30 +0100)]
bindings/perl: Use OPING_VERSION to enable the work-around for 0.3.5.
Florian Forster [Tue, 17 Feb 2009 08:17:03 +0000 (09:17 +0100)]
src/liboping.c: Fix an incorrect assertion in `ping_timeval_add'.
Florian Forster [Tue, 17 Feb 2009 07:50:06 +0000 (08:50 +0100)]
bindings/perl: Fix a memory leak in _ping_iterator_get_hostname().
Thanks to "Iceberg" who reported this issue and provided the patch via
rt.cpan.org.
Signed-off-by: Florian Forster <octo@verplant.org>
Florian Forster [Fri, 22 Aug 2008 07:47:14 +0000 (09:47 +0200)]
bindings/Makefile.am: Don't build the Perl bindings automatically.
To build the Perl bindings, do:
$ cd bindings; make perl install
Florian Forster [Fri, 22 Aug 2008 07:00:24 +0000 (09:00 +0200)]
ping_iterator_get_info: Provide the number of timed out packets.
Florian Forster [Wed, 30 Jan 2008 07:11:12 +0000 (08:11 +0100)]
src/liboping.c: Use \#ifdef's around `EAI_SYSTEM'.
Apparently this define is mentioned in RFC3493 but not in SUS. At least Cygwin
seems not to have this define..