1f08c3bdfSopenharmony_ci#!/bin/sh
2f08c3bdfSopenharmony_ci# SPDX-License-Identifier: GPL-2.0-or-later
3f08c3bdfSopenharmony_ci# Copyright (c) 2014-2018 Oracle and/or its affiliates. All Rights Reserved.
4f08c3bdfSopenharmony_ci# Copyright (c) 2018 Petr Vorel <pvorel@suse.cz>
5f08c3bdfSopenharmony_ci#
6f08c3bdfSopenharmony_ci# Author: Alexey Kodanev alexey.kodanev@oracle.com
7f08c3bdfSopenharmony_ci
8f08c3bdfSopenharmony_cistart_dhcp()
9f08c3bdfSopenharmony_ci{
10f08c3bdfSopenharmony_ci	dnsmasq $common_opt \
11f08c3bdfSopenharmony_ci	        --dhcp-range=10.1.1.100,10.1.1.100,255.255.255.0,2m \
12f08c3bdfSopenharmony_ci	        --dhcp-option=option:router --dhcp-option=option:dns-server
13f08c3bdfSopenharmony_ci}
14f08c3bdfSopenharmony_ci
15f08c3bdfSopenharmony_cistart_dhcp6()
16f08c3bdfSopenharmony_ci{
17f08c3bdfSopenharmony_ci	# check that dnsmasq supports IPv6
18f08c3bdfSopenharmony_ci	dnsmasq --dhcp-range=fd00::1,fd00::1 --test > /dev/null 2>&1 || \
19f08c3bdfSopenharmony_ci		tst_brk TCONF "dnsmasq doesn't support DHCPv6"
20f08c3bdfSopenharmony_ci
21f08c3bdfSopenharmony_ci	dnsmasq $common_opt \
22f08c3bdfSopenharmony_ci	        --dhcp-range=fd00:1:1:2::100,fd00:1:1:2::100 --enable-ra \
23f08c3bdfSopenharmony_ci	        --dhcp-option=option6:dns-server
24f08c3bdfSopenharmony_ci}
25f08c3bdfSopenharmony_ci
26f08c3bdfSopenharmony_cicleanup_dhcp()
27f08c3bdfSopenharmony_ci{
28f08c3bdfSopenharmony_ci	rm -f $log
29f08c3bdfSopenharmony_ci}
30f08c3bdfSopenharmony_ci
31f08c3bdfSopenharmony_ciprint_dhcp_version()
32f08c3bdfSopenharmony_ci{
33f08c3bdfSopenharmony_ci	dnsmasq --version | head -2
34f08c3bdfSopenharmony_ci}
35f08c3bdfSopenharmony_ci
36f08c3bdfSopenharmony_ci. dhcp_lib.sh
37f08c3bdfSopenharmony_ci
38f08c3bdfSopenharmony_cilease_dir="/var/lib/misc"
39f08c3bdfSopenharmony_citst_selinux_enforced && lease_dir="/var/lib/dnsmasq"
40f08c3bdfSopenharmony_ci
41f08c3bdfSopenharmony_cidhcp_name="dnsmasq"
42f08c3bdfSopenharmony_cilog="/var/log/dnsmasq.tst.log"
43f08c3bdfSopenharmony_ci
44f08c3bdfSopenharmony_cilease_file="$lease_dir/dnsmasq.tst.leases"
45f08c3bdfSopenharmony_ci
46f08c3bdfSopenharmony_cicommon_opt="--no-hosts --no-resolv --dhcp-authoritative \
47f08c3bdfSopenharmony_ci	--log-facility=$log --interface=$iface0 \
48f08c3bdfSopenharmony_ci	--dhcp-leasefile=$lease_file --port=0 --conf-file= "
49f08c3bdfSopenharmony_ci
50f08c3bdfSopenharmony_citst_run
51