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

Re: ssh und maximale Laufzeit definieren


Hallo Michael,

habe wohl deine letzte Mail falsch verstanden.

Hier die richtige Antwort:

> void sighandler (int sig) {
...
> }
> 
> int main () {
...
>         signal(SIGALRM, sighandler);    // Signalhandler registrieren
...
>     return 0;
> }

Dein Signal-Handler "frisst" das Signal, damit wait es mitbekommt, musst du
den default-handler (bzw. den vorherigen) im signalhandler aufrufen. Den
bekommst du von signal zurueckgeliefert.

D.h. etwa so:
---------------------------------
#include <signal.h>

typedef void (*sighandler_t)(int);

sighandler_t old_handler = 0;

void sighandler(int sig)
{
    // irgendwas
    if( old_handler )
        old_handler(sig);
}

int main(void)
{
    // irgendwas
    old_handler = signal(SIGALRM, sighandler);
    // noch etwas
    return 0;
}
---------------------------------

Gruss,

Alexander


--
http://mailman.uugrn.org/mailman/listinfo/uugrn
Wiki: http://wiki.uugrn.org/wiki/UUGRN:Mailingliste
Archiv: http://lists.uugrn.org/