Edit

IABSD.fr/src/usr.sbin/syspatch

Branch :

  • Show log

    Commit

  • Author : deraadt
    Date : 2025-10-27 16:30:24
    Hash : abf9f467
    Message : Before installing files, the syspatch ksh script checkfs() tries to check if the partitions have enough space by looking at the original files. It converts via stat(1) calling stat(2) st_dev to a device name by calling devname(), and then compares this against the mounted filesystems, to see how much space is left. This conversion via devname() went very wrong because dev_mkdb(8) does not maintain a 1:1 relationship between dev_t and name! The addition of rootdisk and rrootdisk which are aliased to sd0a or wd0a (to ease the future crossover to 52-partition support) breaks the 1:1 relationship. This commit rewrites the file checks to use statfs(2) via df(1) so that the same device-names are compared. ok bluhm mlarkin beck afresh1 robert This is part of 7.8 errata 001. On systems where /usr is not a seperate partition, but is part of /, syspatch will fail to install the errata and the following manual intervention will be required: sed -e 's/.checkfs/#checkfs/g' /usr/sbin/syspatch > /root/syspatch ksh /root/syspatch syspatch # re-run new syspatch command as instructed rm /root/syspatch dev_mkdb Most people use seperate /usr partition and won't need this because syspatch(8) will just work.