summaryrefslogtreecommitdiff
path: root/fdisk/disksize.c
diff options
context:
space:
mode:
Diffstat (limited to 'fdisk/disksize.c')
-rw-r--r--fdisk/disksize.c54
1 files changed, 0 insertions, 54 deletions
diff --git a/fdisk/disksize.c b/fdisk/disksize.c
deleted file mode 100644
index cc00e933..00000000
--- a/fdisk/disksize.c
+++ /dev/null
@@ -1,54 +0,0 @@
-#include <stdio.h>
-#include <ctype.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <errno.h>
-#include "common.h"
-
-int disksize(int fd, unsigned long long *sectors) {
- int err;
- long sz;
- long long b;
-
- err = ioctl(fd, BLKGETSIZE, &sz);
- if (err) {
- sz = 0;
- if (errno != EFBIG)
- return err;
- }
- err = ioctl(fd, BLKGETSIZE64, &b);
- if (err || b == 0 || b == sz)
- *sectors = sz;
- else
- *sectors = (b >> 9);
- return 0;
-}
-
-int
-is_probably_full_disk(char *name) {
-#ifdef HDIO_GETGEO
- struct hd_geometry geometry;
- int fd, i = 0;
-
- fd = open(name, O_RDONLY);
- if (fd >= 0) {
- i = ioctl(fd, HDIO_GETGEO, &geometry);
- close(fd);
- }
- if (i==0)
- return (fd >= 0 && geometry.start == 0);
-#endif
- /*
- * The "silly heuristic" is still sexy for us, because
- * for example Xen doesn't implement HDIO_GETGEO for virtual
- * block devices (/dev/xvda).
- *
- * -- kzak@redhat.com (23-Feb-2006)
- */
- while (*name)
- name++;
- return !isdigit(name[-1]);
-}
-