[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Lost] [Patch] Signale



Kevin Wolf wrote:
> Toni Kaufmann schrieb:
>   
>>>> +/**
>>>> + * Handler fuer ein ignoriertes Signal
>>>> + *
>>>> + * @param signum Signalnummer
>>>> + */
>>>> +void _signnal_ignore_handler(int signum)
>>>> +{
>>>> +}
>>>>     
>>>>         
>>> Unnötig, wofür gibt es NULL?
>>>   
>>>       
>> Da war zuerst mal Null... aber dann musste ich SIG_ERR irgendwie noch
>> definieren. Und ich glaube es ist nicht gerade geschickt, wenn SIG_ERR
>> == SIG_IGN
>>     
>
> Die Headerdatei setzt ohnehin für beides NULL. ;-)
>
> Inwiefern könnte es Probleme machen, wenn die beiden denselben Wert haben?
>   
Wenn ein Prozess ein signal sauber ändern will macht er doch das so:
if (signal(SIGTERM, SIG_IGN) == SIG_ERR) {
    puts("Fehler: Konnte SIGTERM nicht ignorieren!");
    exit(-1);
}


Weil signal gibt ja den vorherigen Handler zurueck. Und wenn da ein
sig_err kommt ist was schief gelaufen.