aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2022-08-10 08:35:41 +0200
committerFlorian Weimer <fweimer@redhat.com>2022-08-10 08:40:15 +0200
commit2ed26bca997a8fc898f4cb94484abaee2f307311 (patch)
tree2f64e98fdfe7333d83a9df2a058c3ef6af25f7a5
parent312ded0d6339e8c463d0395397b5825401b14f54 (diff)
downloadglibc-2ed26bca997a8fc898f4cb94484abaee2f307311.zip
glibc-2ed26bca997a8fc898f4cb94484abaee2f307311.tar.gz
glibc-2ed26bca997a8fc898f4cb94484abaee2f307311.tar.bz2
inet: Turn __ivaliduser into a compatibility symbol
It is not declared in a header file, and as the comment indicates, it is not expected to be used.
-rw-r--r--inet/rcmd.c19
-rw-r--r--stdlib/Versions2
2 files changed, 8 insertions, 13 deletions
diff --git a/inet/rcmd.c b/inet/rcmd.c
index 0d6b595..2b95fa1 100644
--- a/inet/rcmd.c
+++ b/inet/rcmd.c
@@ -79,6 +79,7 @@
#include <wchar.h>
#include <sys/uio.h>
#include <sigsetops.h>
+#include <shlib-compat.h>
int __ivaliduser (FILE *, uint32_t, const char *, const char *);
@@ -621,18 +622,9 @@ iruserok (uint32_t raddr, int superuser, const char *ruser, const char *luser)
return iruserok_af (&raddr, superuser, ruser, luser, AF_INET);
}
-/*
- * XXX
- * Don't make static, used by lpd(8).
- *
- * This function is not used anymore. It is only present because lpd(8)
- * calls it (!?!). We simply call __invaliduser2() with an illegal rhost
- * argument. This means that netgroups won't work in .rhost/hosts.equiv
- * files. If you want lpd to work with netgroups, fix lpd to use ruserok()
- * or PAM.
- * Returns 0 if ok, -1 if not ok.
- */
-int
+#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_37)
+/* Previously used by lpd. Current lpd versions have their own copy. */
+int attribute_compat_text_section
__ivaliduser (FILE *hostf, uint32_t raddr, const char *luser,
const char *ruser)
{
@@ -643,7 +635,8 @@ __ivaliduser (FILE *hostf, uint32_t raddr, const char *luser,
return __validuser2_sa(hostf, (struct sockaddr *)&ra, sizeof(ra),
luser, ruser, "-");
}
-
+compat_symbol (libc, __ivaliduser, __ivaliduser, GLIBC_2_0);
+#endif
/* Returns 1 on positive match, 0 on no match, -1 on negative match. */
static int
diff --git a/stdlib/Versions b/stdlib/Versions
index d09a308..ebc4326 100644
--- a/stdlib/Versions
+++ b/stdlib/Versions
@@ -141,6 +141,8 @@ libc {
arc4random_buf;
arc4random_uniform;
}
+ GLIBC_2.37 {
+ }
GLIBC_PRIVATE {
# functions which have an additional interface since they are
# are cancelable.