From 7bd3eb3b1ad4209ac4cf4b46f849213d46bc33aa Mon Sep 17 00:00:00 2001 From: David Timber Date: Mon, 17 Aug 2020 18:16:49 +0930 Subject: Employ pthsem ... * Use uint8_t array for hardcoded binary data * Add proone-ipaddr-arr to hardcode DoT servers * Convert X509 data * Brought back M68k and ARC archs just in case * Add CLOCK_REALTIME in prne_mbedtls_entropy_proc_src_f for more entropy * Remove installation of signal handlers. Use sigwait() instead * Bugfix: prne_rnd_anum_str() returned null characters * Add prne_dbgpf() and prne_dbgperr() * prne_assert(): put errno into a register so it's visible in the core dump --- src/mbedtls.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/mbedtls.c') diff --git a/src/mbedtls.c b/src/mbedtls.c index 333cf1d..2b2cbc6 100644 --- a/src/mbedtls.c +++ b/src/mbedtls.c @@ -19,7 +19,7 @@ int prne_mbedtls_x509_crt_verify_cb (void *param, mbedtls_x509_crt *crt, int crt int prne_mbedtls_ssl_send_cb (void *ctx, const unsigned char *buf, size_t len) { const int fd = *(int*)ctx; ssize_t ret; - + ret = write(fd, buf, len); if (ret < 0) { switch (errno) { @@ -77,6 +77,7 @@ typedef struct { pid_t ppid; clock_t clock; struct timespec now; + struct timespec datetime; } ent_buf_t; static int prne_mbedtls_entropy_proc_src_f (void *data, unsigned char *output, size_t len, size_t *olen) { @@ -87,6 +88,7 @@ static int prne_mbedtls_entropy_proc_src_f (void *data, unsigned char *output, s buf.ppid = getppid(); buf.clock = clock(); clock_gettime(CLOCK_MONOTONIC, &buf.now); + clock_gettime(CLOCK_REALTIME, &buf.datetime); *olen = prne_op_min(len, sizeof(buf)); memcpy(output, &buf, sizeof(*olen)); -- cgit