1*9c6ed9a8SPeter Holm#!/bin/sh 2*9c6ed9a8SPeter Holm 3*9c6ed9a8SPeter Holm# 4*9c6ed9a8SPeter Holm# Copyright (c) 2026 Peter Holm <pho@FreeBSD.org> 5*9c6ed9a8SPeter Holm# 6*9c6ed9a8SPeter Holm# SPDX-License-Identifier: BSD-2-Clause 7*9c6ed9a8SPeter Holm# 8*9c6ed9a8SPeter Holm 9*9c6ed9a8SPeter Holm# "nullfs mount over a file" scenario 10*9c6ed9a8SPeter Holm 11*9c6ed9a8SPeter Holmset -u 12*9c6ed9a8SPeter Holmprog=$(basename "$0" .sh) 13*9c6ed9a8SPeter Holm 14*9c6ed9a8SPeter Holmfile=/tmp/$prog.file 15*9c6ed9a8SPeter Holmmp=/tmp/$prog.mp 16*9c6ed9a8SPeter Holmtouch $file $mp 17*9c6ed9a8SPeter Holm 18*9c6ed9a8SPeter Holms=0 19*9c6ed9a8SPeter Holmmount_nullfs $file $mp || exit 1 20*9c6ed9a8SPeter Holmecho a > $mp 21*9c6ed9a8SPeter Holmcmp -s $file $mp || 22*9c6ed9a8SPeter Holm { echo "Files differ"; ls -l $file $mp; s=1; } 23*9c6ed9a8SPeter Holmumount $mp 24*9c6ed9a8SPeter Holmcmp -s $file $mp && 25*9c6ed9a8SPeter Holm { echo "Files are equal"; ls -l $file $mp; s=2; } 26*9c6ed9a8SPeter Holm 27*9c6ed9a8SPeter Holmrm -f $file $mp 28*9c6ed9a8SPeter Holmexit $s 29