diff options
Diffstat (limited to '9879affbbdec684adb343b331f47f06788681e3b.patch')
-rw-r--r-- | 9879affbbdec684adb343b331f47f06788681e3b.patch | 63 |
1 files changed, 0 insertions, 63 deletions
diff --git a/9879affbbdec684adb343b331f47f06788681e3b.patch b/9879affbbdec684adb343b331f47f06788681e3b.patch deleted file mode 100644 index a6a451e..0000000 --- a/9879affbbdec684adb343b331f47f06788681e3b.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 9879affbbdec684adb343b331f47f06788681e3b Mon Sep 17 00:00:00 2001 -From: Thomas Klausner <tk@giga.or.at> -Date: Fri, 6 Oct 2017 12:24:22 +0200 -Subject: [PATCH] nonrandomopen: override open64() as well. - ---- - regress/nonrandomopen.c | 32 +++++++++++++++++++++++++++++++- - 1 file changed, 31 insertions(+), 1 deletion(-) - -diff --git a/regress/nonrandomopen.c b/regress/nonrandomopen.c -index 4f74222..dd90c14 100644 ---- a/regress/nonrandomopen.c -+++ b/regress/nonrandomopen.c -@@ -47,7 +47,8 @@ - #endif - - static int inited = 0; --static int (*real_open)(const char *path, int mode, ...) = NULL; -+static int (*real_open)(const char *path, int flags, ...) = NULL; -+static int (*real_open64)(const char *path, int flags, ...) = NULL; - - static void - init(void) -@@ -55,6 +56,10 @@ init(void) - real_open = dlsym(RTLD_NEXT, "open"); - if (!real_open) - abort(); -+ real_open64 = dlsym(RTLD_NEXT, "open64"); -+ if (!real_open64) { -+ /* does not have to exist */ -+ } - inited = 1; - } - -@@ -78,3 +83,28 @@ open(const char *path, int flags, ...) - return real_open(path, flags, mode); - } - } -+ -+int -+open64(const char *path, int flags, ...) -+{ -+ va_list ap; -+ mode_t mode; -+ -+ if (!inited) { -+ init(); -+ } -+ -+ if (!real_open64) { -+ abort(); -+ } -+ -+ va_start(ap, flags); -+ mode = va_arg(ap, mode_t); -+ va_end(ap); -+ -+ if (strcmp(path, "/dev/urandom") == 0) { -+ return real_open64("/dev/zero", flags, mode); -+ } else { -+ return real_open64(path, flags, mode); -+ } -+} |