summaryrefslogtreecommitdiff
path: root/src/shared
diff options
context:
space:
mode:
Diffstat (limited to 'src/shared')
-rw-r--r--src/shared/build.h1
-rw-r--r--src/shared/missing.h10
-rw-r--r--src/shared/udev-util.h2
-rw-r--r--src/shared/util.c65
-rw-r--r--src/shared/util.h2
5 files changed, 1 insertions, 79 deletions
diff --git a/src/shared/build.h b/src/shared/build.h
index b0a5a72467..653a505e68 100644
--- a/src/shared/build.h
+++ b/src/shared/build.h
@@ -130,7 +130,6 @@
_IMA_FEATURE_ " " \
_APPARMOR_FEATURE_ " " \
_SMACK_FEATURE_ " " \
- _SYSVINIT_FEATURE_ " " \
_LIBCRYPTSETUP_FEATURE_ " " \
_GCRYPT_FEATURE_ " " \
_GNUTLS_FEATURE_ " " \
diff --git a/src/shared/missing.h b/src/shared/missing.h
index ca670cea43..4abd0232f8 100644
--- a/src/shared/missing.h
+++ b/src/shared/missing.h
@@ -930,13 +930,3 @@ static inline int renameat2(int oldfd, const char *oldname, int newfd, const cha
#ifndef RENAME_NOREPLACE
#define RENAME_NOREPLACE (1 << 0)
#endif
-
-#if !HAVE_DECL_KCMP
-static inline int kcmp(pid_t pid1, pid_t pid2, int type, unsigned long idx1, unsigned long idx2) {
- return syscall(__NR_kcmp, pid1, pid2, type, idx1, idx2);
-}
-#endif
-
-#ifndef KCMP_FILE
-#define KCMP_FILE 0
-#endif
diff --git a/src/shared/udev-util.h b/src/shared/udev-util.h
index 5f09ce181f..0a7741afef 100644
--- a/src/shared/udev-util.h
+++ b/src/shared/udev-util.h
@@ -21,7 +21,7 @@
along with systemd; If not, see <http://www.gnu.org/licenses/>.
***/
-#include "udev.h"
+#include "libudev.h"
#include "util.h"
DEFINE_TRIVIAL_CLEANUP_FUNC(struct udev*, udev_unref);
diff --git a/src/shared/util.c b/src/shared/util.c
index 605fffcb7a..72984735ce 100644
--- a/src/shared/util.c
+++ b/src/shared/util.c
@@ -7794,71 +7794,6 @@ int fd_setcrtime(int fd, usec_t usec) {
return 0;
}
-int same_fd(int a, int b) {
- struct stat sta, stb;
- pid_t pid;
- int r, fa, fb;
-
- assert(a >= 0);
- assert(b >= 0);
-
- /* Compares two file descriptors. Note that semantics are
- * quite different depending on whether we have kcmp() or we
- * don't. If we have kcmp() this will only return true for
- * dup()ed file descriptors, but not otherwise. If we don't
- * have kcmp() this will also return true for two fds of the same
- * file, created by separate open() calls. Since we use this
- * call mostly for filtering out duplicates in the fd store
- * this difference hopefully doesn't matter too much. */
-
- if (a == b)
- return true;
-
- /* Try to use kcmp() if we have it. */
- pid = getpid();
- r = kcmp(pid, pid, KCMP_FILE, a, b);
- if (r == 0)
- return true;
- if (r > 0)
- return false;
- if (errno != ENOSYS)
- return -errno;
-
- /* We don't have kcmp(), use fstat() instead. */
- if (fstat(a, &sta) < 0)
- return -errno;
-
- if (fstat(b, &stb) < 0)
- return -errno;
-
- if ((sta.st_mode & S_IFMT) != (stb.st_mode & S_IFMT))
- return false;
-
- /* We consider all device fds different, since two device fds
- * might refer to quite different device contexts even though
- * they share the same inode and backing dev_t. */
-
- if (S_ISCHR(sta.st_mode) || S_ISBLK(sta.st_mode))
- return false;
-
- if (sta.st_dev != stb.st_dev || sta.st_ino != stb.st_ino)
- return false;
-
- /* The fds refer to the same inode on disk, let's also check
- * if they have the same fd flags. This is useful to
- * distuingish the read and write side of a pipe created with
- * pipe(). */
- fa = fcntl(a, F_GETFL);
- if (fa < 0)
- return -errno;
-
- fb = fcntl(b, F_GETFL);
- if (fb < 0)
- return -errno;
-
- return fa == fb;
-}
-
int chattr_fd(int fd, bool b, unsigned mask) {
unsigned old_attr, new_attr;
diff --git a/src/shared/util.h b/src/shared/util.h
index 124c7c06d4..11cc10ba30 100644
--- a/src/shared/util.h
+++ b/src/shared/util.h
@@ -1054,8 +1054,6 @@ int fd_getcrtime(int fd, usec_t *usec);
int path_getcrtime(const char *p, usec_t *usec);
int fd_getcrtime_at(int dirfd, const char *name, usec_t *usec, int flags);
-int same_fd(int a, int b);
-
int chattr_fd(int fd, bool b, unsigned mask);
int chattr_path(const char *p, bool b, unsigned mask);
int change_attr_fd(int fd, unsigned value, unsigned mask);