1/* $Id: minissdp.h,v 1.12 2014/04/09 07:20:59 nanard Exp $ */
2/* MiniUPnP project
3 * http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/
4 * (c) 2006-2014 Thomas Bernard
5 * This software is subject to the conditions detailed
6 * in the LICENCE file provided within the distribution */
7#ifndef MINISSDP_H_INCLUDED
8#define MINISSDP_H_INCLUDED
9
10#include "miniupnpdtypes.h"
11
12int
13OpenAndConfSSDPReceiveSocket(int ipv6);
14
15int
16OpenAndConfSSDPNotifySockets(int * sockets);
17
18#ifdef ENABLE_HTTPS
19void
20SendSSDPNotifies2(int * sockets,
21                  unsigned short http_port,
22                  unsigned short https_port,
23                  unsigned int lifetime);
24#else
25void
26SendSSDPNotifies2(int * sockets,
27                  unsigned short http_port,
28                  unsigned int lifetime);
29#endif
30
31void
32#ifdef ENABLE_HTTPS
33ProcessSSDPRequest(int s,
34                   unsigned short http_port, unsigned short https_port);
35#else
36ProcessSSDPRequest(int s, unsigned short http_port);
37#endif
38
39#ifdef ENABLE_HTTPS
40void
41ProcessSSDPData(int s, const char *bufr, int n,
42                const struct sockaddr * sendername,
43                unsigned short http_port, unsigned short https_port);
44#else
45void
46ProcessSSDPData(int s, const char *bufr, int n,
47                const struct sockaddr * sendername,
48                unsigned short http_port);
49#endif
50
51int
52SendSSDPGoodbye(int * sockets, int n);
53
54int
55SubmitServicesToMiniSSDPD(const char * host, unsigned short port);
56
57#endif
58
59