1/* $Id: minissdpc.h,v 1.6 2015/09/18 12:45:16 nanard Exp $ */
2/* Project: miniupnp
3 * http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/
4 * Author: Thomas Bernard
5 * Copyright (c) 2005-2015 Thomas Bernard
6 * This software is subjects to the conditions detailed
7 * in the LICENCE file provided within this distribution */
8#ifndef MINISSDPC_H_INCLUDED
9#define MINISSDPC_H_INCLUDED
10
11#include "miniupnpc_declspec.h"
12#include "upnpdev.h"
13
14/* error codes : */
15#define MINISSDPC_SUCCESS (0)
16#define MINISSDPC_UNKNOWN_ERROR (-1)
17#define MINISSDPC_SOCKET_ERROR (-101)
18#define MINISSDPC_MEMORY_ERROR (-102)
19#define MINISSDPC_INVALID_INPUT (-103)
20#define MINISSDPC_INVALID_SERVER_REPLY (-104)
21
22#ifdef __cplusplus
23extern "C" {
24#endif
25
26#if !(defined(_WIN32) || defined(__amigaos__) || defined(__amigaos4__))
27
28MINIUPNP_LIBSPEC struct UPNPDev *
29getDevicesFromMiniSSDPD(const char * devtype, const char * socketpath, int * error);
30
31MINIUPNP_LIBSPEC int
32connectToMiniSSDPD(const char * socketpath);
33
34MINIUPNP_LIBSPEC int
35disconnectFromMiniSSDPD(int s);
36
37MINIUPNP_LIBSPEC int
38requestDevicesFromMiniSSDPD(int s, const char * devtype);
39
40MINIUPNP_LIBSPEC struct UPNPDev *
41receiveDevicesFromMiniSSDPD(int s, int * error);
42
43#endif /* !(defined(_WIN32) || defined(__amigaos__) || defined(__amigaos4__)) */
44
45MINIUPNP_LIBSPEC struct UPNPDev *
46ssdpDiscoverDevices(const char * const deviceTypes[],
47 int delay, const char * multicastif,
48 int localport,
49 int ipv6, unsigned char ttl,
50 int * error,
51 int searchalltypes);
52
53#ifdef __cplusplus
54}
55#endif
56
57#endif
58
59