Re: How are syscall functions defined?
- Reply: Warner Losh : "Re: How are syscall functions defined?"
- Reply: Gary Jennejohn : "Re: How are syscall functions defined?"
- In reply to: Pat Maddox: "How are syscall functions defined?"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 01 Jul 2023 11:22:35 UTC
On Sat, Jul 1, 2023, at 3:11 AM, Pat Maddox wrote: > jail_attach is defined in syscalls.master [1] which generates a > declaration in jail.h [2]. Try as I might, I can’t find any definition > of that specific syscall function (or any other). I think the closest > I’ve found is sys_jail_attach in kern_jail.c [3]. I suspect there’s > some generation going on that defines jail_attach - but if that’s the > case, I haven’t been able to track it down. > > Can someone point me to how the C function gets defined? > > Thanks, > Pat > > [1] > https://github.com/freebsd/freebsd-src/blob/releng/13.2/sys/kern/syscalls.master#L2307 > [2] > https://github.com/freebsd/freebsd-src/blob/releng/13.2/sys/sys/jail.h#L119 > [3] > https://github.com/freebsd/freebsd-src/blob/releng/13.2/sys/kern/kern_jail.c#L2340 Symbol.map [1] is used to produce a version map [2] which is then fed to the linker [3], which I assume maps the symbols in the resulting binary. I intend to experiment with that a bit, but I think that makes sense. Pat [1] https://github.com/freebsd/freebsd-src/blob/releng/13.2/lib/libc/sys/Symbol.map#L672 [2] https://github.com/freebsd/freebsd-src/blob/releng/13.2/share/mk/bsd.symver.mk#L43 [3] https://github.com/freebsd/freebsd-src/blob/releng/13.2/share/mk/bsd.lib.mk#L253