From mboxrd@z Thu Jan 1 00:00:00 1970 From: cdkrot@yandex.ru (Sayutin Dmitry) Date: Sat, 18 Jun 2016 16:42:50 +0300 Subject: Regarding getrandom syscall In-Reply-To: References: Message-ID: <1466391466257370@web18o.yandex.ru> To: kernelnewbies@lists.kernelnewbies.org List-Id: kernelnewbies.lists.kernelnewbies.org Well, in fact it is not hard. Just use syscall(2) provided by libc. You need to provide to this function syscall id and syscall args. Syscall id can be retrieved from macro constant Should look something like: #define _GNU_SOURCE #include #include syscall(SYS_getrandom, -- your - args - here --); It returns long value - the result of syscall. If it is between [-4095; -1] then it is negated errno, otherways it is return value. 18.06.2016, 16:32, "Anoop" : > Hi Avantika, > > On Sat, Jun 18, 2016 at 5:32 PM, Avantika Rawat wrote: >> ?Hi ALL, >> >> ?I am trying to use getrandom syscall in kernel 3.10.20 by following this >> ?link >> >> ?https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=c6e9d6f38894798696f23c8084ca7edbf16ee895 >> >> ?i have compiled the kernel and now want to call the getrandom syscall from >> ?userspace to generate random numbers. But i am getting following error while >> ?calling the getrandom () from userspace. >> >> ?(.text.startup+0x18): undefined reference to `getrandom' >> ?(.text.startup+0x1c): undefined reference to `getrandom' > > Your user space program will not know where 'getrandom' is defined > unless it's in the C library. You need to research more on how to call > custom system calls. > > -Anoop > >> ?-- >> ?Regards, >> ?Avantika Rawat >> >> ?_______________________________________________ >> ?Kernelnewbies mailing list >> ?Kernelnewbies at kernelnewbies.org >> ?http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies > > _______________________________________________ > Kernelnewbies mailing list > Kernelnewbies at kernelnewbies.org > http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies ----- Sayutin Dmitry