signal() problem! ->linux

linu(x)bie
Hi Leute
ich hab nen riesen Problem. Ich hab mit fork() einen childprozess erzeugt.
Der vater setzt mit signal() einen handler für SIGALRM ->signal(SIGALRM, meldung)
wobei der handler so aussieht:

void meldung(int s)
{
fprintf(stdout,"\nDies ist ein SigHandler");
return;
}

nun übergebe ich die pid des vaterprozeses über ne pipe an das child
(Dies funktioniert, habe es getestet);

und sende aus dem child ein SIGALRM 'kill(vater_pid, SIGALRM)'
die meldung (aus dem Vaterprozess) erscheint nicht, was mache ich falsch??