xref: /freebsd/tests/sys/netinet6/addr6.sh (revision 50725e585de77c20f7c96b836dd68ba954756ce7)
1*50725e58SLexi Winter#!/usr/bin/env atf-sh
2*50725e58SLexi Winter#-
3*50725e58SLexi Winter# SPDX-License-Identifier: ISC
4*50725e58SLexi Winter#
5*50725e58SLexi Winter# Copyright (c) 2025 Lexi Winter.
6*50725e58SLexi Winter#
7*50725e58SLexi Winter# Permission to use, copy, modify, and distribute this software for any
8*50725e58SLexi Winter# purpose with or without fee is hereby granted, provided that the above
9*50725e58SLexi Winter# copyright notice and this permission notice appear in all copies.
10*50725e58SLexi Winter#
11*50725e58SLexi Winter# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
12*50725e58SLexi Winter# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
13*50725e58SLexi Winter# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
14*50725e58SLexi Winter# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
15*50725e58SLexi Winter# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
16*50725e58SLexi Winter# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
17*50725e58SLexi Winter# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
18*50725e58SLexi Winter
19*50725e58SLexi Winter. $(atf_get_srcdir)/../common/vnet.subr
20*50725e58SLexi Winter
21*50725e58SLexi Winteratf_test_case "addr6_invalid_addr" "cleanup"
22*50725e58SLexi Winteraddr6_invalid_addr_head()
23*50725e58SLexi Winter{
24*50725e58SLexi Winter	atf_set descr "adding an invalid IPv6 address returns an error"
25*50725e58SLexi Winter	atf_set require.user root
26*50725e58SLexi Winter}
27*50725e58SLexi Winter
28*50725e58SLexi Winteraddr6_invalid_addr_body()
29*50725e58SLexi Winter{
30*50725e58SLexi Winter	vnet_init
31*50725e58SLexi Winter
32*50725e58SLexi Winter	ep=$(vnet_mkepair)
33*50725e58SLexi Winter	atf_check -s exit:0 ifconfig ${ep}a inet6 2001:db8::1/128
34*50725e58SLexi Winter	atf_check -s exit:1 -e ignore ifconfig ${ep}a inet6 2001:db8::1/127 alias
35*50725e58SLexi Winter}
36*50725e58SLexi Winter
37*50725e58SLexi Winteraddr6_invalid_addr_cleanup()
38*50725e58SLexi Winter{
39*50725e58SLexi Winter	vnet_cleanup
40*50725e58SLexi Winter}
41*50725e58SLexi Winter
42*50725e58SLexi Winteratf_init_test_cases()
43*50725e58SLexi Winter{
44*50725e58SLexi Winter	atf_add_test_case "addr6_invalid_addr"
45*50725e58SLexi Winter}
46