chiark / gitweb /
missing: add __NR_getrandom for a few more archs
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Sat, 22 Nov 2014 17:04:50 +0000 (12:04 -0500)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Sat, 22 Nov 2014 17:04:53 +0000 (12:04 -0500)
Mips has getrandom() too, but there's just too many variants
for me too care. Either someone who cares does it, or they get
compile-time warnings with old kernel headers.

src/shared/architecture.h
src/shared/missing.h

index f1fef23cf281af782a694a6668941c0004bc7541..cb82418a5e4b62162aa28b9511133f1987a29c58 100644 (file)
@@ -133,7 +133,7 @@ int uname_architecture(void);
 #  else
 #    define native_architecture() ARCHITECTURE_MIPS_LE
 #    define LIB_ARCH_TUPLE "mipsel-linux-gnu"
-#endif
+#  endif
 #elif defined(__alpha__)
 #  define native_architecture() ARCHITECTURE_ALPHA
 #  define LIB_ARCH_TUPLE "alpha-linux-gnu"
@@ -185,7 +185,7 @@ int uname_architecture(void);
 #  define native_architecture() ARCHITECTURE_CRIS
 #  error "Missing LIB_ARCH_TUPLE for CRIS"
 #else
-#error "Please register your architecture here!"
+#  error "Please register your architecture here!"
 #endif
 
 const char *architecture_to_string(int a) _const_;
index ecd32babed34061f1b2c791fc351002a95dddcd4..8c6698cff1f22fcf6d451b3a2daf9cb833c024d2 100644 (file)
@@ -149,6 +149,16 @@ static inline int memfd_create(const char *name, unsigned int flags) {
 #ifndef __NR_getrandom
 #  if defined __x86_64__
 #    define __NR_getrandom 318
+#  elif defined(__i386__)
+#    define __NR_getrandom 355
+#  elif defined(__arm__) || defined(__aarch64__)
+#    define __NR_getrandom 384
+#  elif defined(__ia64__)
+#    define __NR_getrandom 1339
+#  elif defined(__m68k__)
+#    define __NR_getrandom 352
+#  elif defined(__s390x__)
+#    define __NR_getrandom 349
 #  else
 #    warning "__NR_getrandom unknown for your architecture"
 #    define __NR_getrandom 0xffffffff