summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSlávek Banko <slavek.banko@axis.cz>2018-09-21 12:37:37 +0200
committerSlávek Banko <slavek.banko@axis.cz>2018-09-21 12:37:37 +0200
commit830ea2b69faa81a8b0485a28fc329fd93d67ad46 (patch)
treee892119e70a65600db800b93e9014f75a2870b0a
parent11485aa4a296406f2d6a96d7f30d09d416d91f03 (diff)
downloadtdemultimedia-830ea2b6.tar.gz
tdemultimedia-830ea2b6.zip
Replace deprecated ustat using fstatfs
This resolves FTBFS with glibc 2.28 Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
-rw-r--r--kscd/kcompactdisc.cpp5
-rw-r--r--kscd/libwm/include/wm_config.h5
-rw-r--r--kscd/libwm/plat_hpux.c14
-rw-r--r--kscd/libwm/plat_linux.c12
-rw-r--r--kscd/libwm/plat_news.c6
-rw-r--r--kscd/libwm/plat_openbsd.c5
-rw-r--r--kscd/libwm/plat_osf1.c6
-rw-r--r--kscd/libwm/plat_sun.c6
-rw-r--r--kscd/libwm/plat_ultrix.c6
9 files changed, 20 insertions, 45 deletions
diff --git a/kscd/kcompactdisc.cpp b/kscd/kcompactdisc.cpp
index 839a6577..e17fdaa7 100644
--- a/kscd/kcompactdisc.cpp
+++ b/kscd/kcompactdisc.cpp
@@ -42,11 +42,6 @@
#include <fcntl.h>
#include <sys/ioctl.h>
-/* this is for glibc 2.x which the ust structure in ustat.h not stat.h */
-#ifdef __GLIBC__
-#include <sys/ustat.h>
-#endif
-
#ifdef __FreeBSD__
#include <sys/param.h>
#include <sys/ucred.h>
diff --git a/kscd/libwm/include/wm_config.h b/kscd/libwm/include/wm_config.h
index a8c574e6..caf7d17e 100644
--- a/kscd/libwm/include/wm_config.h
+++ b/kscd/libwm/include/wm_config.h
@@ -263,10 +263,9 @@
/*
* There are two alternative ways of checking a device containing a
* mounted filesystem. Define BSD_MOUNTTEST for the test using
- * getmntent(). Undefine it for using the SVR4 ustat().
+ * getmntent(). Undefine it for using the fstatfs().
* I built in the choice, because it's not clear which method should
- * be used in Linux. The ustat manpage tells us since 1995, that
- * fstat() should be used, but I'm too dumb to do so.
+ * be used in Linux.
*/
#define BSD_MOUNTTEST
diff --git a/kscd/libwm/plat_hpux.c b/kscd/libwm/plat_hpux.c
index a7d3c551..ef722437 100644
--- a/kscd/libwm/plat_hpux.c
+++ b/kscd/libwm/plat_hpux.c
@@ -30,22 +30,14 @@
#include <errno.h>
#include <stdio.h>
#include <fcntl.h>
-#include <ustat.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/param.h>
#include <sys/stat.h>
+#include <sys/statfs.h>
#include "include/wm_config.h"
-/*
- * this is for glibc 2.x which the ust structure in
- * ustat.h not stat.h
- */
-#ifdef __GLIBC__
-#include <sys/ustat.h>
-#endif
-
#include <sys/time.h>
#include <sys/scsi.h>
@@ -294,13 +286,13 @@ int
gen_eject( struct wm_drive *d )
{
struct stat stbuf;
- struct ustat ust;
+ struct statfs sfsbuf;
if (fstat(d->fd, &stbuf) != 0)
return (-2);
/* Is this a mounted filesystem? */
- if (ustat(stbuf.st_rdev, &ust) == 0)
+ if (fstatfs(d->fd, &sfsbuf) == 0)
return (-3);
return (wm_scsi2_eject(d));
diff --git a/kscd/libwm/plat_linux.c b/kscd/libwm/plat_linux.c
index 6ca8b578..84f2b6cd 100644
--- a/kscd/libwm/plat_linux.c
+++ b/kscd/libwm/plat_linux.c
@@ -58,13 +58,7 @@ typedef unsigned long long __u64;
#if defined(BSD_MOUNTTEST)
#include <mntent.h>
#else
- /*
- * this is for glibc 2.x which defines ust structure in
- * ustat.h not stat.h
- */
- #ifdef __GLIBC__
- #include <sys/ustat.h>
- #endif
+ #include <sys/statfs.h>
#endif
@@ -604,7 +598,7 @@ gen_eject(struct wm_drive *d)
{
struct stat stbuf;
#if !defined(BSD_MOUNTTEST)
- struct ustat ust;
+ struct statfs sfsbuf;
#else
struct mntent *mnt;
FILE *fp;
@@ -619,7 +613,7 @@ gen_eject(struct wm_drive *d)
/* Is this a mounted filesystem? */
#if !defined(BSD_MOUNTTEST)
- if (ustat(stbuf.st_rdev, &ust) == 0)
+ if (fstatfs(d->fd, &sfsbuf) == 0)
return (-3);
#else
/*
diff --git a/kscd/libwm/plat_news.c b/kscd/libwm/plat_news.c
index 73d66228..88300cd3 100644
--- a/kscd/libwm/plat_news.c
+++ b/kscd/libwm/plat_news.c
@@ -32,11 +32,11 @@ static char plat_news_id[] = "$Id$";
#include <errno.h>
#include <stdio.h>
#include <fcntl.h>
-#include <ustat.h>
#include <CD.h>
#include <sys/types.h>
#include <sys/param.h>
#include <sys/stat.h>
+#include <sys/statfs.h>
#include <sys/time.h>
#include "include/wm_config.h"
@@ -362,13 +362,13 @@ int
gen_eject( struct wm_drive *d )
{
struct stat stbuf;
- struct ustat ust;
+ struct statfs sfsbuf;
if (fstat(d->fd, &stbuf) != 0)
return (-2);
/* Is this a mounted filesystem? */
- if (ustat(stbuf.st_rdev, &ust) == 0)
+ if (fstatfs(d->fd, &sfsbuf) == 0)
return (-3);
if (CD_AutoEject(d->fd))
diff --git a/kscd/libwm/plat_openbsd.c b/kscd/libwm/plat_openbsd.c
index 7ee1100d..b85cdcaf 100644
--- a/kscd/libwm/plat_openbsd.c
+++ b/kscd/libwm/plat_openbsd.c
@@ -45,11 +45,6 @@
#include "include/wm_cdrom.h"
#include "include/wm_helpers.h"
-/* this is for glibc 2.x which defines the ust structure in ustat.h not stat.h */
-#ifdef __GLIBC__
-#include <sys/ustat.h>
-#endif
-
#include <sys/time.h>
#include <string.h>
#include <sys/ioctl.h>
diff --git a/kscd/libwm/plat_osf1.c b/kscd/libwm/plat_osf1.c
index accf1f81..2ccfc49c 100644
--- a/kscd/libwm/plat_osf1.c
+++ b/kscd/libwm/plat_osf1.c
@@ -33,8 +33,8 @@
#include <fcntl.h>
#include <sys/param.h>
#include <sys/stat.h>
+#include <sys/ststfd.h>
#include <sys/time.h>
-#include <ustat.h>
#include <string.h>
/* #include <sys/rzdisk.h>
#include <sys/cdrom.h> */
@@ -424,13 +424,13 @@ gen_eject(struct wm_drive *d)
{
/* On some systems, we can check to see if the CD is mounted. */
struct stat stbuf;
- struct ustat ust;
+ struct statfs sfsbuf;
if (fstat(d->fd, &stbuf) != 0)
return (-2);
/* Is this a mounted filesystem? */
- if (ustat(stbuf.st_rdev, &ust) == 0)
+ if (fstatfs(d->fd, &sfsbuf) == 0)
return (-3);
return (ioctl(d->fd, CDROM_EJECT_CADDY, 0));
diff --git a/kscd/libwm/plat_sun.c b/kscd/libwm/plat_sun.c
index 80ce3567..bb87a8e2 100644
--- a/kscd/libwm/plat_sun.c
+++ b/kscd/libwm/plat_sun.c
@@ -36,6 +36,7 @@ static char plat_sun_id[] = "$Id$";
#include <string.h>
#include <sys/param.h>
#include <sys/stat.h>
+#include <sys/statfs.h>
#include <sys/time.h>
#include <sys/ioctl.h>
@@ -44,7 +45,6 @@ static char plat_sun_id[] = "$Id$";
#include "include/wm_cdrom.h"
#include "include/wm_cdtext.h"
-#include <ustat.h>
#include <unistd.h>
#include <signal.h>
#ifdef solbourne
@@ -602,13 +602,13 @@ int
gen_eject( struct wm_drive *d )
{
struct stat stbuf;
- struct ustat ust;
+ struct statfs sfsbuf;
if (fstat(d->fd, &stbuf) != 0)
return (-2);
/* Is this a mounted filesystem? */
- if (ustat(stbuf.st_rdev, &ust) == 0)
+ if (fstatfs(d->fd, &sfsbuf) == 0)
return (-3);
IFCDDA(d) {
diff --git a/kscd/libwm/plat_ultrix.c b/kscd/libwm/plat_ultrix.c
index 010055d0..735c6f79 100644
--- a/kscd/libwm/plat_ultrix.c
+++ b/kscd/libwm/plat_ultrix.c
@@ -36,8 +36,8 @@ static char plat_ultrix_id[] = "$Id$";
#include <fcntl.h>
#include <sys/param.h>
#include <sys/stat.h>
+#include <sys/statfs.h>
#include <sys/time.h>
-#include <ustat.h>
#include <string.h>
#include <sys/rzdisk.h>
#include <sys/cdrom.h>
@@ -475,13 +475,13 @@ gen_eject(struct wm_drive *d)
{
/* On some systems, we can check to see if the CD is mounted. */
struct stat stbuf;
- struct ustat ust;
+ struct statfs sfsbuf;
if (fstat(d->fd, &stbuf) != 0)
return (-2);
/* Is this a mounted filesystem? */
- if (ustat(stbuf.st_rdev, &ust) == 0)
+ if (fstatfs(d->fd, &sfsbuf) == 0)
return (-3);
return (ioctl(d->fd, CDROM_EJECT_CADDY));