Electroneum
upnpevents.h
Go to the documentation of this file.
1 /* $Id: upnpevents.h,v 1.12 2017/11/02 15:48:29 nanard Exp $ */
2 /* MiniUPnP project
3  * http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/
4  * (c) 2008-2017 Thomas Bernard
5  * This software is subject to the conditions detailed
6  * in the LICENCE file provided within the distribution */
7 
8 #ifndef UPNPEVENTS_H_INCLUDED
9 #define UPNPEVENTS_H_INCLUDED
10 
11 /* for fd_set */
12 #include <sys/select.h>
13 #include "config.h"
14 
15 #ifdef ENABLE_EVENTS
16 enum subscriber_service_enum {
17  EWanCFG = 1,
18  EWanIPC,
19 #ifdef ENABLE_L3F_SERVICE
20  EL3F,
21 #endif
22 #ifdef ENABLE_6FC_SERVICE
23  E6FC,
24 #endif
25 #ifdef ENABLE_DP_SERVICE
26  EDP,
27 #endif
28 };
29 
30 void
31 upnp_event_var_change_notify(enum subscriber_service_enum service);
32 
33 const char *
34 upnpevents_addSubscriber(const char * eventurl,
35  const char * callback, int callbacklen,
36  int timeout);
37 
38 int
39 upnpevents_removeSubscriber(const char * sid, int sidlen);
40 
41 const char *
42 upnpevents_renewSubscription(const char * sid, int sidlen, int timeout);
43 
44 void upnpevents_selectfds(fd_set *readset, fd_set *writeset, int * max_fd);
45 void upnpevents_processfds(fd_set *readset, fd_set *writeset);
46 
47 #ifdef USE_MINIUPNPDCTL
48 void write_events_details(int s);
49 #endif
50 
51 #endif
52 #endif