Revert "Revert "and added files""
[bcm963xx.git] / userapps / opensource / net-snmp / include / net-snmp / library / snmp_alarm.h
1 #ifndef SNMP_ALARM_H
2 #define SNMP_ALARM_H
3
4 #ifdef __cplusplus
5 extern          "C" {
6 #endif
7
8     typedef void    (SNMPAlarmCallback) (unsigned int clientreg,
9                                          void *clientarg);
10
11     /*
12      * alarm flags 
13      */
14 #define SA_REPEAT 0x01          /* keep repeating every X seconds */
15
16     struct snmp_alarm {
17         struct timeval  t;
18         unsigned int    flags;
19         unsigned int    clientreg;
20         struct timeval  t_last;
21         struct timeval  t_next;
22         void           *clientarg;
23         SNMPAlarmCallback *thecallback;
24         struct snmp_alarm *next;
25     };
26
27     /*
28      * the ones you should need 
29      */
30     void            snmp_alarm_unregister(unsigned int clientreg);
31     void            snmp_alarm_unregister_all(void);
32     unsigned int    snmp_alarm_register(unsigned int when,
33                                         unsigned int flags,
34                                         SNMPAlarmCallback * thecallback,
35                                         void *clientarg);
36
37     unsigned int    snmp_alarm_register_hr(struct timeval t,
38                                            unsigned int flags,
39                                            SNMPAlarmCallback * cb,
40                                            void *cd);
41
42
43     /*
44      * the ones you shouldn't 
45      */
46     void            init_snmp_alarm(void);
47     int             init_alarm_post_config(int majorid, int minorid,
48                                            void *serverarg,
49                                            void *clientarg);
50     void            sa_update_entry(struct snmp_alarm *alrm);
51     struct snmp_alarm *sa_find_next(void);
52     void            run_alarms(void);
53     RETSIGTYPE      alarm_handler(int a);
54     void            set_an_alarm(void);
55     int             get_next_alarm_delay_time(struct timeval *delta);
56
57 #ifdef __cplusplus
58 }
59 #endif
60 #endif                          /* SNMP_ALARM_H */