Update openbsd-netcat.patch

This commit is contained in:
LoveSy
2017-04-14 00:38:49 +08:00
committed by GitHub
parent 71c3fe7909
commit 9974f8a0e7

View File

@@ -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);