]> git.ipfire.org Git - thirdparty/systemd.git/blame - src/systemd/sd-dhcp6-lease.h
man: add sd_bus_message_new_signal(3)
[thirdparty/systemd.git] / src / systemd / sd-dhcp6-lease.h
CommitLineData
53e1b683 1/* SPDX-License-Identifier: LGPL-2.1+ */
3fb2c570
PF
2#ifndef foosddhcp6leasehfoo
3#define foosddhcp6leasehfoo
4
5/***
810adae9 6 Copyright © 2014-2015 Intel Corporation. All rights reserved.
3fb2c570
PF
7
8 systemd is free software; you can redistribute it and/or modify it
9 under the terms of the GNU Lesser General Public License as published by
10 the Free Software Foundation; either version 2.1 of the License, or
11 (at your option) any later version.
12
13 systemd is distributed in the hope that it will be useful, but
14 WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 Lesser General Public License for more details.
17
18 You should have received a copy of the GNU Lesser General Public License
19 along with systemd; If not, see <http://www.gnu.org/licenses/>.
20***/
21
04c01369 22#include <inttypes.h>
ea3b3a75
PF
23#include <netinet/in.h>
24
04c01369
LP
25#include "_sd-common.h"
26
27_SD_BEGIN_DECLARATIONS;
28
3fb2c570
PF
29typedef struct sd_dhcp6_lease sd_dhcp6_lease;
30
e7504d95
PF
31void sd_dhcp6_lease_reset_address_iter(sd_dhcp6_lease *lease);
32int sd_dhcp6_lease_get_address(sd_dhcp6_lease *lease,
33 struct in6_addr *addr,
34 uint32_t *lifetime_preferred,
35 uint32_t *lifetime_valid);
652bf042
PF
36void sd_dhcp6_lease_reset_pd_prefix_iter(sd_dhcp6_lease *lease);
37int sd_dhcp6_lease_get_pd(sd_dhcp6_lease *lease, struct in6_addr *prefix,
38 uint8_t *prefix_len,
39 uint32_t *lifetime_preferred,
40 uint32_t *lifetime_valid);
ea3b3a75 41
7bd8e95d 42int sd_dhcp6_lease_get_dns(sd_dhcp6_lease *lease, struct in6_addr **addrs);
5da1b97f 43int sd_dhcp6_lease_get_domains(sd_dhcp6_lease *lease, char ***domains);
6599680e
PF
44int sd_dhcp6_lease_get_ntp_addrs(sd_dhcp6_lease *lease,
45 struct in6_addr **addrs);
46int sd_dhcp6_lease_get_ntp_fqdn(sd_dhcp6_lease *lease, char ***ntp_fqdn);
7bd8e95d 47
3fb2c570
PF
48sd_dhcp6_lease *sd_dhcp6_lease_ref(sd_dhcp6_lease *lease);
49sd_dhcp6_lease *sd_dhcp6_lease_unref(sd_dhcp6_lease *lease);
50
4afd3348
LP
51_SD_DEFINE_POINTER_CLEANUP_FUNC(sd_dhcp6_lease, sd_dhcp6_lease_unref);
52
04c01369
LP
53_SD_END_DECLARATIONS;
54
3fb2c570 55#endif