Update openbsd-netcat.patch
This commit is contained in:
@@ -602,8 +602,8 @@ diff -uprN netcat-openbsd-1.130.bk/explicit_bzero.c netcat-openbsd-1.130/explici
|
||||
+}
|
||||
diff -uprN netcat-openbsd-1.130.bk/getentropy_hurd.c netcat-openbsd-1.130/getentropy_hurd.c
|
||||
--- netcat-openbsd-1.130.bk/getentropy_hurd.c 1970-01-01 08:00:00.000000000 +0800
|
||||
+++ netcat-openbsd-1.130/getentropy_hurd.c 2017-04-14 00:32:41.373554700 +0800
|
||||
@@ -0,0 +1,444 @@
|
||||
+++ netcat-openbsd-1.130/getentropy_hurd.c 2017-04-14 00:37:54.398795800 +0800
|
||||
@@ -0,0 +1,487 @@
|
||||
+/* $OpenBSD: getentropy_linux.c,v 1.40 2015/08/25 17:26:43 deraadt Exp $ */
|
||||
+
|
||||
+/*
|
||||
@@ -670,6 +670,49 @@ diff -uprN netcat-openbsd-1.130.bk/getentropy_hurd.c netcat-openbsd-1.130/getent
|
||||
+#define HD(x) (SHA512_Update(&ctx, (char *)&(x), sizeof (x)))
|
||||
+#define HF(x) (SHA512_Update(&ctx, (char *)&(x), sizeof (void*)))
|
||||
+
|
||||
+#if __WORDSIZE == 64
|
||||
+# define ElfW(type) Elf64_##type
|
||||
+#else
|
||||
+# define ElfW(type) Elf32_##type
|
||||
+#endif
|
||||
+
|
||||
+struct dl_phdr_info
|
||||
+{
|
||||
+ ElfW(Addr) dlpi_addr;
|
||||
+ const char *dlpi_name;
|
||||
+ const ElfW(Phdr) *dlpi_phdr;
|
||||
+ ElfW(Half) dlpi_phnum;
|
||||
+};
|
||||
+
|
||||
+
|
||||
+/* dl_support.c defines these and initializes them early on. */
|
||||
+extern ElfW(Phdr) *_dl_phdr;
|
||||
+extern size_t _dl_phnum;
|
||||
+
|
||||
+
|
||||
+int dl_iterate_phdr(int (*callback) (struct dl_phdr_info *info, size_t size, void *data),
|
||||
+ void *data);
|
||||
+int dl_iterate_phdr(int (*callback) (struct dl_phdr_info *info, size_t size, void *data),
|
||||
+ void *data)
|
||||
+{
|
||||
+ int ret;
|
||||
+ struct dl_phdr_info info;
|
||||
+
|
||||
+ if (_dl_phnum != 0)
|
||||
+ {
|
||||
+ /* This entry describes this statically-linked program itself. */
|
||||
+ info.dlpi_addr = 0;
|
||||
+ info.dlpi_name = "";
|
||||
+ info.dlpi_phdr = _dl_phdr;
|
||||
+ info.dlpi_phnum = _dl_phnum;
|
||||
+ ret = (*callback) (&info, sizeof(info), data);
|
||||
+ if (ret != 0)
|
||||
+ return ret;
|
||||
+ }
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+int getentropy(void *buf, size_t len);
|
||||
+
|
||||
+static int gotdata(char *buf, size_t len);
|
||||
|
||||
Reference in New Issue
Block a user