summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-fs/autofs/files/autofs-5.1.7-glibc.patch')
-rw-r--r--net-fs/autofs/files/autofs-5.1.7-glibc.patch97
1 files changed, 97 insertions, 0 deletions
diff --git a/net-fs/autofs/files/autofs-5.1.7-glibc.patch b/net-fs/autofs/files/autofs-5.1.7-glibc.patch
new file mode 100644
index 000000000000..2a0f415fbee7
--- /dev/null
+++ b/net-fs/autofs/files/autofs-5.1.7-glibc.patch
@@ -0,0 +1,97 @@
+diff --git a/daemon/lookup.c b/daemon/lookup.c
+index 2fea0c0..3b3aa3e 100644
+--- a/daemon/lookup.c
++++ b/daemon/lookup.c
+@@ -397,7 +397,7 @@ static int read_file_source_instance(struct autofs_point *ap, struct map_source
+ return NSS_STATUS_NOTFOUND;
+ }
+
+- if (st.st_mode & __S_IEXEC)
++ if (st.st_mode & S_IEXEC)
+ type = src_prog;
+ else
+ type = src_file;
+@@ -930,7 +930,7 @@ static int lookup_name_file_source_instance(struct autofs_point *ap, struct map_
+ return NSS_STATUS_NOTFOUND;
+ }
+
+- if (st.st_mode & __S_IEXEC)
++ if (st.st_mode & S_IEXEC)
+ type = src_prog;
+ else
+ type = src_file;
+@@ -1077,7 +1077,7 @@ static struct map_source *lookup_get_map_source(struct master_mapent *entry)
+ if (!S_ISREG(st.st_mode))
+ return NULL;
+
+- if (st.st_mode & __S_IEXEC)
++ if (st.st_mode & S_IEXEC)
+ type = "program";
+ else
+ type = "file";
+diff --git a/include/automount.h b/include/automount.h
+index 1ae4078..c2e8dba 100644
+--- a/include/automount.h
++++ b/include/automount.h
+@@ -13,6 +13,7 @@
+ #include <limits.h>
+ #include <time.h>
+ #include <syslog.h>
++#include <sys/procfs.h>
+ #include <sys/types.h>
+ #include <pthread.h>
+ #include <sched.h>
+@@ -42,6 +43,16 @@
+ #include <dmalloc.h>
+ #endif
+
++#ifndef __SWORD_TYPE
++#if __WORDSIZE == 32
++# define __SWORD_TYPE int
++#elif __WORDSIZE == 64
++# define __SWORD_TYPE long int
++#else
++#error
++#endif
++#endif
++
+ #define ENABLE_CORES 1
+
+ /* We MUST have the paths to mount(8) and umount(8) */
+diff --git a/include/nsswitch.h b/include/nsswitch.h
+index d3e4027..8376113 100644
+--- a/include/nsswitch.h
++++ b/include/nsswitch.h
+@@ -24,6 +24,10 @@
+ #include <netdb.h>
+ #include "list.h"
+
++#ifndef _PATH_NSSWITCH_CONF
++#define _PATH_NSSWITCH_CONF "/dev/null"
++#endif
++
+ #define NSSWITCH_FILE _PATH_NSSWITCH_CONF
+
+ enum nsswitch_status {
+diff --git a/modules/lookup_multi.c b/modules/lookup_multi.c
+index fadd2ea..cf109de 100644
+--- a/modules/lookup_multi.c
++++ b/modules/lookup_multi.c
+@@ -247,7 +247,7 @@ static struct lookup_mod *nss_open_lookup(const char *format, int argc, const ch
+ continue;
+ }
+
+- if (st.st_mode & __S_IEXEC)
++ if (st.st_mode & S_IEXEC)
+ type = src_prog;
+ else
+ type = src_file;
+@@ -452,7 +452,7 @@ int lookup_reinit(const char *my_mapfmt,
+ continue;
+ }
+
+- if (st.st_mode & __S_IEXEC)
++ if (st.st_mode & S_IEXEC)
+ type = src_prog;
+ else
+ type = src_file;