]> git.ipfire.org Git - thirdparty/systemd.git/blob - src/libsystemd-network/icmp6-util.h
ndisc-option: add missing case
[thirdparty/systemd.git] / src / libsystemd-network / icmp6-util.h
1 /* SPDX-License-Identifier: LGPL-2.1-or-later */
2 #pragma once
3
4 /***
5 Copyright © 2014-2015 Intel Corporation. All rights reserved.
6 ***/
7
8 #include <net/ethernet.h>
9 #include <netinet/in.h>
10 #include <stdbool.h>
11 #include <sys/uio.h>
12
13 #include "time-util.h"
14
15 #define IN6ADDR_ALL_ROUTERS_MULTICAST_INIT \
16 { { { 0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, \
17 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02 } } }
18
19 #define IN6ADDR_ALL_NODES_MULTICAST_INIT \
20 { { { 0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, \
21 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01 } } }
22
23 int icmp6_bind(int ifindex, bool is_router);
24 int icmp6_send(int fd, const struct sockaddr_in6 *dst, const struct iovec *iov, size_t n_iov);
25 int icmp6_receive(
26 int fd,
27 void *buffer,
28 size_t size,
29 struct in6_addr *ret_sender,
30 triple_timestamp *ret_timestamp);