Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:42.3:Rings:1-MinimalX
xorg-x11-server
U_Use-arc4random_buf-3-if-available-to-generate...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File U_Use-arc4random_buf-3-if-available-to-generate-cookie.patch of Package xorg-x11-server
From 957e8db38f27932d353e86e9aa69cf16778b18f1 Mon Sep 17 00:00:00 2001 From: Matthieu Herrb <matthieu@herrb.eu> Date: Tue, 28 Feb 2017 19:18:43 +0100 Subject: [PATCH xserver] Use arc4random_buf(3) if available to generate cookies. Reviewed-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Matthieu Herrb <matthieu@herrb.eu> --- configure.ac | 2 ++ include/dix-config.h.in | 6 ++++++ os/auth.c | 7 +++++++ 3 files changed, 15 insertions(+) Index: xorg-server-1.18.3/configure.ac =================================================================== --- xorg-server-1.18.3.orig/configure.ac +++ xorg-server-1.18.3/configure.ac @@ -223,6 +223,8 @@ AC_CHECK_FUNCS([backtrace ffs geteuid ge AC_REPLACE_FUNCS([reallocarray strcasecmp strcasestr strlcat strlcpy strndup \ timingsafe_memcmp]) +AC_CHECK_LIB([bsd], [arc4random_buf]) + AC_CHECK_DECLS([program_invocation_short_name], [], [], [[#include <errno.h>]]) dnl Check for SO_PEERCRED #define Index: xorg-server-1.18.3/include/dix-config.h.in =================================================================== --- xorg-server-1.18.3.orig/include/dix-config.h.in +++ xorg-server-1.18.3/include/dix-config.h.in @@ -125,6 +125,9 @@ /* Build a standalone xpbproxy */ #undef STANDALONE_XPBPROXY +/* Define to 1 if you have the `bsd' library (-lbsd). */ +#undef HAVE_LIBBSD + /* Define to 1 if you have the `m' library (-lm). */ #undef HAVE_LIBM @@ -155,6 +158,9 @@ /* Define to 1 if you have the <rpcsvc/dbm.h> header file. */ #undef HAVE_RPCSVC_DBM_H +/* Define to 1 if you have the `arc4random_buf' function. */ +#undef HAVE_ARC4RANDOM_BUF + /* Define to use libc SHA1 functions */ #undef HAVE_SHA1_IN_LIBC Index: xorg-server-1.18.3/os/auth.c =================================================================== --- xorg-server-1.18.3.orig/os/auth.c +++ xorg-server-1.18.3/os/auth.c @@ -45,6 +45,9 @@ from The Open Group. #ifdef WIN32 #include <X11/Xw32defs.h> #endif +#ifdef HAVE_LIBBSD +#include <bsd/stdlib.h> /* for arc4random_buf() */ +#endif struct protocol { unsigned short name_length; @@ -303,11 +306,15 @@ GenerateAuthorization(unsigned name_leng void GenerateRandomData(int len, char *buf) { +#ifdef HAVE_ARC4RANDOMBUF + arc4random_buf(buf, len); +#else int fd; fd = open("/dev/urandom", O_RDONLY); read(fd, buf, len); close(fd); +#endif } #endif /* XCSECURITY */
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor