Loading...
Searching...
No Matches
echo.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2015 Martine Lenders <mlenders@inf.fu-berlin.de>
3 *
4 * This file is subject to the terms and conditions of the GNU Lesser
5 * General Public License v2.1. See the file LICENSE in the top level
6 * directory for more details.
7 */
8
9#pragma once
10
22
23#include <inttypes.h>
24
25#include "byteorder.h"
26#include "net/gnrc/netif.h"
27#include "net/gnrc/netif/hdr.h"
28#include "net/ipv6/hdr.h"
29#include "net/icmpv6.h"
30
31#ifdef __cplusplus
32extern "C" {
33#endif
34
48gnrc_pktsnip_t *gnrc_icmpv6_echo_build(uint8_t type, uint16_t id, uint16_t seq,
49 uint8_t *data, size_t data_len);
50
61 icmpv6_echo_t *echo, uint16_t len);
62
76int gnrc_icmpv6_echo_send(const gnrc_netif_t *netif, const ipv6_addr_t *addr,
77 uint16_t id, uint16_t seq, uint8_t ttl, size_t len);
78
91 int corrupt, uint32_t rtt_us, void *ctx);
105
106#ifdef __cplusplus
107}
108#endif
109
Functions to work with different byte orders.
Definition for GNRC's network interfaces.
int gnrc_icmpv6_echo_send(const gnrc_netif_t *netif, const ipv6_addr_t *addr, uint16_t id, uint16_t seq, uint8_t ttl, size_t len)
Send out ICMPv6 echo request.
void gnrc_icmpv6_echo_req_handle(gnrc_netif_t *netif, ipv6_hdr_t *ipv6_hdr, icmpv6_echo_t *echo, uint16_t len)
ICMPv6 echo request handler.
int(* gnrc_icmpv6_echo_rsp_handle_cb_t)(gnrc_pktsnip_t *pkt, int corrupt, uint32_t rtt_us, void *ctx)
ICMPv6 echo response callback.
Definition echo.h:90
int gnrc_icmpv6_echo_rsp_handle(gnrc_pktsnip_t *pkt, size_t len, gnrc_icmpv6_echo_rsp_handle_cb_t cb, void *ctx)
Parse ICMPv6 echo response.
gnrc_pktsnip_t * gnrc_icmpv6_echo_build(uint8_t type, uint16_t id, uint16_t seq, uint8_t *data, size_t data_len)
Builds an ICMPv6 echo message of type type for sending.
struct gnrc_pktsnip gnrc_pktsnip_t
Type to represent parts (either headers or payload) of a packet, called snips.
ICMPv6 type and function definitions.
Adds include for missing inttype definitions.
Generic network interface header.
IPv6 header type and helper function definitions.
Representation of a network interface.
Definition netif.h:135
Echo request and response message format.
Definition icmpv6.h:215
Data type to represent an IPv6 packet header.
Definition hdr.h:66
Data type to represent an IPv6 address.
Definition addr.h:67