From 4b1e3fd1e560488dbe72a713eda9f073f5183b3c Mon Sep 17 00:00:00 2001 From: J Reece Wilson Date: Sat, 26 Aug 2023 16:43:31 +0100 Subject: [PATCH] [*] 346a9f3bded304cf1a171816bc7713edc4d1a49c still isnt good enough. why the fuck must all (not projecting), all, linux code even from the kernel maintainers have fucked syscall checks? --- Source/AuProcAddresses.Linux.cpp | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/Source/AuProcAddresses.Linux.cpp b/Source/AuProcAddresses.Linux.cpp index daa51142..2d23900e 100644 --- a/Source/AuProcAddresses.Linux.cpp +++ b/Source/AuProcAddresses.Linux.cpp @@ -26,20 +26,18 @@ namespace Aurora long syscallFuckYou(T &&... args) { // sysdeps/unix/sysv/linux/x86_64/syscall.S - // Freetards deserve the rope + // Fuck Freetards long iFuckResult = syscall(AuForward(args)...); #if defined(AURORA_IS_GLIBC) - if (iFuckResult == -1 - && errno < 0) + if (iFuckResult == -1 && + errno > 0) { - // Lynch freetards return (0 - errno); } #else // TODO: if defined UNIX has a libc wrapper. why would we assume there's a CRT to begin with? errno = (0 - iFuckResult); #endif - // Hit freetards over the head with a baseball bat return iFuckResult; // Imagine going out of your way to define a varadic syscall wrapper that works without any special formatting parameters, // works across all abis, just to fuck it into uselessness by returning -ENOSYS and -1 spuriously.