CVSROOT: /cvs Module name: src Changes by: t...@cvs.openbsd.org 2016/06/19 07:42:56
Modified files: sbin/disklabel : disklabel.c extern.h Log message: Split readlabel() into two functions, readlabel() and parselabel(), and pledge in-between the two funtion calls. The new readlabel() only does a DIOC*DINFO ioctl, making sure the fd points to a disk, while parselabel() does the scary string manipulations. In the makelabel() code path do an early DIOCGDINFO before pledge. This fixes yet another pledge problem (disklabel -w /dev/tty floppy576). Some of this was discussed with beck. ok semarie, earlier version ok deraadt