403Webshell
Server IP : 13.213.54.232  /  Your IP : 216.73.217.11
Web Server : Apache/2.4.52 (Ubuntu)
System : Linux ip-172-31-17-110 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64
User : www-data ( 33)
PHP Version : 7.1.33-67+ubuntu22.04.1+deb.sury.org+1
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /lib/modules/6.8.0-1029-aws/build/tools/testing/selftests/filesystems/fat/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/modules/6.8.0-1029-aws/build/tools/testing/selftests/filesystems/fat/run_fat_tests.sh
#!/bin/bash
# SPDX-License-Identifier: GPL-2.0
#
# Run filesystem operations tests on an 1 MiB disk image that is formatted with
# a vfat filesystem and mounted in a temporary directory using a loop device.
#
# Copyright 2022 Red Hat Inc.
# Author: Javier Martinez Canillas <javierm@redhat.com>

set -e
set -u
set -o pipefail

BASE_DIR="$(dirname $0)"
TMP_DIR="$(mktemp -d /tmp/fat_tests_tmp.XXXXXX)"
IMG_PATH="${TMP_DIR}/fat.img"
MNT_PATH="${TMP_DIR}/mnt"

cleanup()
{
    mountpoint -q "${MNT_PATH}" && unmount_image
    rm -rf "${TMP_DIR}"
}
trap cleanup SIGINT SIGTERM EXIT

create_loopback()
{
    touch "${IMG_PATH}"
    chattr +C "${IMG_PATH}" >/dev/null 2>&1 || true

    truncate -s 1M "${IMG_PATH}"
    mkfs.vfat "${IMG_PATH}" >/dev/null 2>&1
}

mount_image()
{
    mkdir -p "${MNT_PATH}"
    sudo mount -o loop "${IMG_PATH}" "${MNT_PATH}"
}

rename_exchange_test()
{
    local rename_exchange="${BASE_DIR}/rename_exchange"
    local old_path="${MNT_PATH}/old_file"
    local new_path="${MNT_PATH}/new_file"

    echo old | sudo tee "${old_path}" >/dev/null 2>&1
    echo new | sudo tee "${new_path}" >/dev/null 2>&1
    sudo "${rename_exchange}" "${old_path}" "${new_path}" >/dev/null 2>&1
    sudo sync -f "${MNT_PATH}"
    grep new "${old_path}" >/dev/null 2>&1
    grep old "${new_path}" >/dev/null 2>&1
}

rename_exchange_subdir_test()
{
    local rename_exchange="${BASE_DIR}/rename_exchange"
    local dir_path="${MNT_PATH}/subdir"
    local old_path="${MNT_PATH}/old_file"
    local new_path="${dir_path}/new_file"

    sudo mkdir -p "${dir_path}"
    echo old | sudo tee "${old_path}" >/dev/null 2>&1
    echo new | sudo tee "${new_path}" >/dev/null 2>&1
    sudo "${rename_exchange}" "${old_path}" "${new_path}" >/dev/null 2>&1
    sudo sync -f "${MNT_PATH}"
    grep new "${old_path}" >/dev/null 2>&1
    grep old "${new_path}" >/dev/null 2>&1
}

unmount_image()
{
    sudo umount "${MNT_PATH}" &> /dev/null
}

create_loopback
mount_image
rename_exchange_test
rename_exchange_subdir_test
unmount_image

exit 0

Youez - 2016 - github.com/yon3zu
LinuXploit