oping.h | oping.h | |||
---|---|---|---|---|
/** | /** | |||
* Object oriented C module to send ICMP and ICMPv6 `echo's. | * Object oriented C module to send ICMP and ICMPv6 `echo's. | |||
* Copyright (C) 2006-2009 Florian octo Forster <octo at verplant.org> | * Copyright (C) 2006-2010 Florian octo Forster <octo at verplant.org> | |||
* | * | |||
* This program is free software; you can redistribute it and/or modify | * This library is free software; you can redistribute it and/or modify it | |||
* it under the terms of the GNU General Public License as published by | * under the terms of the GNU Lesser General Public License as published by | |||
* the Free Software Foundation; only version 2 of the License is | the | |||
* applicable. | * Free Software Foundation; either version 2.1 of the License, or (at your | |||
* option) any later version. | ||||
* | * | |||
* This program is distributed in the hope that it will be useful, | * This library is distributed in the hope that it will be useful, but WITH | |||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | OUT | |||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |||
* GNU General Public License for more details. | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public Lic | |||
ense | ||||
* for more details. | ||||
* | * | |||
* You should have received a copy of the GNU General Public License | * You should have received a copy of the GNU Lesser General Public License | |||
* along with this program; if not, write to the Free Software | * along with this library; if not, write to the Free Software Foundation, | |||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 US | * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | |||
A | ||||
*/ | */ | |||
#ifndef OCTO_PING_H | #ifndef OCTO_PING_H | |||
#define OCTO_PING_H 1 | #define OCTO_PING_H 1 | |||
#if HAVE_CONFIG_H | #if HAVE_CONFIG_H | |||
# include <config.h> | # include <config.h> | |||
#endif | #endif | |||
#include <stdlib.h> | #include <stdlib.h> | |||
#include <unistd.h> | #include <unistd.h> | |||
#include <sys/types.h> | #include <sys/types.h> | |||
#include <sys/socket.h> | #include <sys/socket.h> | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
#define OPING_VERSION 1003003 | #define OPING_VERSION 1005000 | |||
/* | /* | |||
* Type definitions | * Type definitions | |||
*/ | */ | |||
struct pinghost; | struct pinghost; | |||
typedef struct pinghost pinghost_t; | typedef struct pinghost pinghost_t; | |||
typedef pinghost_t pingobj_iter_t; | typedef pinghost_t pingobj_iter_t; | |||
struct pingobj; | struct pingobj; | |||
typedef struct pingobj pingobj_t; | typedef struct pingobj pingobj_t; | |||
#define PING_OPT_TIMEOUT 0x01 | #define PING_OPT_TIMEOUT 0x01 | |||
#define PING_OPT_TTL 0x02 | #define PING_OPT_TTL 0x02 | |||
#define PING_OPT_AF 0x04 | #define PING_OPT_AF 0x04 | |||
#define PING_OPT_DATA 0x08 | #define PING_OPT_DATA 0x08 | |||
#define PING_OPT_SOURCE 0x10 | #define PING_OPT_SOURCE 0x10 | |||
#define PING_OPT_DEVICE 0x20 | #define PING_OPT_DEVICE 0x20 | |||
#define PING_OPT_QOS 0x40 | ||||
#define PING_DEF_TIMEOUT 1.0 | #define PING_DEF_TIMEOUT 1.0 | |||
#define PING_DEF_TTL 255 | #define PING_DEF_TTL 255 | |||
#define PING_DEF_AF AF_UNSPEC | #define PING_DEF_AF AF_UNSPEC | |||
#define PING_DEF_DATA "Florian Forster <octo@verplant.org> http://verpla nt.org/" | #define PING_DEF_DATA "liboping -- ICMP ping library <http://octo.it/lib oping/>" | |||
/* | /* | |||
* Method definitions | * Method definitions | |||
*/ | */ | |||
pingobj_t *ping_construct (void); | pingobj_t *ping_construct (void); | |||
void ping_destroy (pingobj_t *obj); | void ping_destroy (pingobj_t *obj); | |||
int ping_setopt (pingobj_t *obj, int option, void *value); | int ping_setopt (pingobj_t *obj, int option, void *value); | |||
int ping_send (pingobj_t *obj); | int ping_send (pingobj_t *obj); | |||
skipping to change at line 87 | skipping to change at line 88 | |||
#define PING_INFO_HOSTNAME 1 | #define PING_INFO_HOSTNAME 1 | |||
#define PING_INFO_ADDRESS 2 | #define PING_INFO_ADDRESS 2 | |||
#define PING_INFO_FAMILY 3 | #define PING_INFO_FAMILY 3 | |||
#define PING_INFO_LATENCY 4 | #define PING_INFO_LATENCY 4 | |||
#define PING_INFO_SEQUENCE 5 | #define PING_INFO_SEQUENCE 5 | |||
#define PING_INFO_IDENT 6 | #define PING_INFO_IDENT 6 | |||
#define PING_INFO_DATA 7 | #define PING_INFO_DATA 7 | |||
#define PING_INFO_USERNAME 8 | #define PING_INFO_USERNAME 8 | |||
#define PING_INFO_DROPPED 9 | #define PING_INFO_DROPPED 9 | |||
#define PING_INFO_RECV_TTL 10 | #define PING_INFO_RECV_TTL 10 | |||
#define PING_INFO_RECV_QOS 11 | ||||
int ping_iterator_get_info (pingobj_iter_t *iter, int info, | int ping_iterator_get_info (pingobj_iter_t *iter, int info, | |||
void *buffer, size_t *buffer_len); | void *buffer, size_t *buffer_len); | |||
const char *ping_get_error (pingobj_t *obj); | const char *ping_get_error (pingobj_t *obj); | |||
void *ping_iterator_get_context (pingobj_iter_t *iter); | void *ping_iterator_get_context (pingobj_iter_t *iter); | |||
void ping_iterator_set_context (pingobj_iter_t *iter, void *context); | void ping_iterator_set_context (pingobj_iter_t *iter, void *context); | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
End of changes. 8 change blocks. | ||||
15 lines changed or deleted | 19 lines changed or added | |||