[Midnightbsd-cvs] src [10810] trunk/usr.sbin/diskinfo/diskinfo.c: sync
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Sun Jun 10 14:09:58 EDT 2018
Revision: 10810
http://svnweb.midnightbsd.org/src/?rev=10810
Author: laffer1
Date: 2018-06-10 14:09:57 -0400 (Sun, 10 Jun 2018)
Log Message:
-----------
sync
Modified Paths:
--------------
trunk/usr.sbin/diskinfo/diskinfo.c
Modified: trunk/usr.sbin/diskinfo/diskinfo.c
===================================================================
--- trunk/usr.sbin/diskinfo/diskinfo.c 2018-06-10 18:06:11 UTC (rev 10809)
+++ trunk/usr.sbin/diskinfo/diskinfo.c 2018-06-10 18:09:57 UTC (rev 10810)
@@ -1,3 +1,4 @@
+/* $MidnightBSD$ */
/*-
* Copyright (c) 2003 Poul-Henning Kamp
* All rights reserved.
@@ -26,7 +27,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $MidnightBSD$
+ * $FreeBSD: stable/10/usr.sbin/diskinfo/diskinfo.c 313103 2017-02-02 19:50:28Z asomers $
*/
#include <stdio.h>
@@ -89,13 +90,12 @@
for (i = 0; i < argc; i++) {
fd = open(argv[i], O_RDONLY);
if (fd < 0 && errno == ENOENT && *argv[i] != '/') {
- sprintf(buf, "%s%s", _PATH_DEV, argv[i]);
+ snprintf(buf, BUFSIZ, "%s%s", _PATH_DEV, argv[i]);
fd = open(buf, O_RDONLY);
}
if (fd < 0) {
warn("%s", argv[i]);
- exitval = 1;
- goto out;
+ exit(1);
}
error = ioctl(fd, DIOCGMEDIASIZE, &mediasize);
if (error) {
@@ -176,7 +176,8 @@
{
int error;
- lseek(fd, (off_t)blockno * sectorsize, SEEK_SET);
+ if (lseek(fd, (off_t)blockno * sectorsize, SEEK_SET) == -1)
+ err(1, "lseek");
error = read(fd, sector, sectorsize);
if (error == -1)
err(1, "read");
@@ -241,6 +242,9 @@
off_t b0, b1, sectorcount, step;
sectorcount = mediasize / sectorsize;
+ if (sectorcount <= 0)
+ return; /* Can't test devices with no sectors */
+
step = 1ULL << (flsll(sectorcount / (4 * 200)) - 1);
if (step > 16384)
step = 16384;
More information about the Midnightbsd-cvs
mailing list