[fpc-devel]Problems with Linux signal calls.
Lloyd B. Park
lpark at kent.edu
Tue Jan 6 20:30:03 CET 2004
On Tue, 6 Jan 2004, Marco van de Voort wrote:
> > I found a bug in Linux signal handling which effects both the 1.0.10 and
> > 1.9.0 versions of FreePascal. The SigSet type is too small. This results
> > in some signal calls overwriting other memory locations.
>
> This is actually more a problem of linux. Or better of the combination
> of glibc and linux. Kernel and libc structures don't match like on e.g.
> BSD.
OK, I understand this.
> Keep in mind that baseunix exports the _kernel_ sigset_t, while you pass
> it to _glibc_.
But this one I don't. My glibc imported functions are the ones which work
for me. I defined sigset_t myself when I converted the glibc structures
to Pascal. When I am using glibc (MyXXXX functions in my example),
everything works. It is the implementation in BaseLinux (1.9.0 (NewXXXX
functions in my example) and Linux (1.0.10) units where I have problems.
I thought it was because of the difference in the size of sigset between
BaseUnix and glibc, but I am sure it could be me doing something stupid.
It wouldn't be the first time. Am I doing something wrong when I use the
BaseUnix versions of the signal calls?
> All the declared functions are available in baseunix, so there is no reason
> for this anyway.
>
> There is a way to recompile FPC to be based on libc instead of the kernel,
> but that is only a week old.
> To get an idea, read also http://www.stack.nl~/marcov/unixrtl.pdf
I prefer the native kernel calls if I can make them work for me. But
thanks for the pointer. I'll look over your documentation.
>
>
> _______________________________________________
> fpc-devel maillist - fpc-devel at lists.freepascal.org
> http://lists.freepascal.org/mailman/listinfo/fpc-devel
>
--
------------------------------------
Lloyd B. Park (330) 672-0384
310 Moulton Hall
Kent State University
Kent, OH 44242
------------------------------------
More information about the fpc-devel
mailing list