Unnamed repository
Recently, dracut-network drops depedency on dhcp-client which requires
ipcalc. Thus the dependency chain
"kexec-tools -> dracut-network -> dhcp-client -> ipcalc"
is broken. When NIC is configured to a static IP, kexec-tools depended
on "ipcalc -m" to get netmask. This commit implements the shell
equivalent of "ipcalc -m".
The following test code shows cal_netmask_by_prefix is consistent with
"ipcalc -m",
#!/bin/bash
. dracut-module-setup.sh
for i in {0..128}; do
mask_expected=$(ipcalc -m fe::/$i| cut -d"=" -f2)
mask_actual=$(cal_netmask_by_prefix $i "-6")
if [[ "$mask_expected" != "$mask_actual" ]]; then
echo "prefix="$i, "expected="$mask_expected, "acutal="$mask_actual
exit
fi
done
echo "IPv6 tests passed"
for i in {0..32}; do
mask_expected=$(ipcalc -m 8.8.8.8/$i| cut -d"=" -f2)
mask_actual=$(cal_netmask_by_prefix $i "")
if [[ "$mask_expected" != "$mask_actual" ]]; then
echo "prefix="$i, "expected="$mask_expected, "acutal="$mask_actual
exit
fi
done
echo "IPv4 tests passed"
i=-2
res=$(cal_netmask_by_prefix "$i" "")
if [[ $? -ne 1 ]]; then
echo "cal_netmask_by_prefix should exit when prefix<0"
exit
fi
res=$(cal_netmask_by_prefix "$i" "")
if [[ $? -ne 1 ]]; then
echo "cal_netmask_by_prefix should exit when prefix<0"
exit
fi
i=33
$(cal_netmask_by_prefix $i "")
if [[ $? -ne 1 ]]; then
echo "cal_netmask_by_prefix should exit when prefix>32 for IPv4"
exit
fi
i=129
$(cal_netmask_by_prefix $i "-6")
if [[ $? -ne 1 ]]; then
echo "cal_netmask_by_prefix should exit when prefix>128 for IPv4"
exit
fi
echo "Bad prefixes tests passed"
echo "All tests passed"
Reported-by: Jie Li <jieli@redhat.com>
Signed-off-by: Coiby Xu <coxu@redhat.com>
Acked-by: Kairui Song <kasong@redhat.com>
|
||
|---|---|---|
| tests | ||
| .gitignore | ||
| 60-kdump.install | ||
| 98-kexec.rules | ||
| 98-kexec.rules.ppc64 | ||
| dracut-early-kdump-module-setup.sh | ||
| dracut-early-kdump.sh | ||
| dracut-kdump-capture.service | ||
| dracut-kdump-emergency.service | ||
| dracut-kdump-emergency.target | ||
| dracut-kdump-error-handler.service | ||
| dracut-kdump-error-handler.sh | ||
| dracut-kdump.sh | ||
| dracut-module-setup.sh | ||
| dracut-monitor_dd_progress | ||
| early-kdump-howto.txt | ||
| fadump-howto.txt | ||
| kdump-dep-generator.sh | ||
| kdump-in-cluster-environment.txt | ||
| kdump-lib-initramfs.sh | ||
| kdump-lib.sh | ||
| kdump-logger.sh | ||
| kdump-udev-throttler | ||
| kdump.conf | ||
| kdump.conf.5 | ||
| kdump.service | ||
| kdump.sysconfig | ||
| kdump.sysconfig.aarch64 | ||
| kdump.sysconfig.i386 | ||
| kdump.sysconfig.ppc64 | ||
| kdump.sysconfig.ppc64le | ||
| kdump.sysconfig.s390x | ||
| kdump.sysconfig.x86_64 | ||
| kdumpctl | ||
| kdumpctl.8 | ||
| kexec-kdump-howto.txt | ||
| kexec-tools-2.0.20-makedumpfile-printk-add-support-for-lockless-ringbuffer.patch | ||
| kexec-tools-2.0.20-makedumpfile-printk-use-committed-finalized-state-value.patch | ||
| kexec-tools-2.0.20-Remove-duplicated-variable-declarations.patch | ||
| kexec-tools-2.0.21-makedumpfile-make-use-of-uts_namespace.name-offset-in-VMCOR.patch | ||
| kexec-tools.spec | ||
| live-image-kdump-howto.txt | ||
| mkdumprd | ||
| mkdumprd.8 | ||
| README | ||
| sources | ||
| zanata-notes.txt | ||
Adding a patch to kexec-tools ============================= There is a mailing list kexec@lists.fedoraproject.org where all the dicussion related to fedora kexec-tools happen. All the patches are posted there for inclusion and committed to kexec-tools after review. So if you want your patches to be included in fedora kexec-tools package, post these to kexec@lists.fedoraproject.org. One can subscribe to list and browse through archives here. https://admin.fedoraproject.org/mailman/listinfo/kexec