mirror of
https://github.com/moonlight-stream/Internet-Hosting-Tool.git
synced 2025-07-01 07:15:32 +00:00
Initial code drop
This commit is contained in:
parent
32b53457da
commit
08712310a7
1
.gitignore
vendored
1
.gitignore
vendored
@ -66,7 +66,6 @@ StyleCopReport.xml
|
|||||||
*.obj
|
*.obj
|
||||||
*.iobj
|
*.iobj
|
||||||
*.pch
|
*.pch
|
||||||
*.pdb
|
|
||||||
*.ipdb
|
*.ipdb
|
||||||
*.pgc
|
*.pgc
|
||||||
*.pgd
|
*.pgd
|
||||||
|
49
libs/include/miniupnpc/igd_desc_parse.h
Normal file
49
libs/include/miniupnpc/igd_desc_parse.h
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
/* $Id: igd_desc_parse.h,v 1.12 2014/11/17 17:19:13 nanard Exp $ */
|
||||||
|
/* Project : miniupnp
|
||||||
|
* http://miniupnp.free.fr/
|
||||||
|
* Author : Thomas Bernard
|
||||||
|
* Copyright (c) 2005-2014 Thomas Bernard
|
||||||
|
* This software is subject to the conditions detailed in the
|
||||||
|
* LICENCE file provided in this distribution.
|
||||||
|
* */
|
||||||
|
#ifndef IGD_DESC_PARSE_H_INCLUDED
|
||||||
|
#define IGD_DESC_PARSE_H_INCLUDED
|
||||||
|
|
||||||
|
/* Structure to store the result of the parsing of UPnP
|
||||||
|
* descriptions of Internet Gateway Devices */
|
||||||
|
#define MINIUPNPC_URL_MAXSIZE (128)
|
||||||
|
struct IGDdatas_service {
|
||||||
|
char controlurl[MINIUPNPC_URL_MAXSIZE];
|
||||||
|
char eventsuburl[MINIUPNPC_URL_MAXSIZE];
|
||||||
|
char scpdurl[MINIUPNPC_URL_MAXSIZE];
|
||||||
|
char servicetype[MINIUPNPC_URL_MAXSIZE];
|
||||||
|
/*char devicetype[MINIUPNPC_URL_MAXSIZE];*/
|
||||||
|
};
|
||||||
|
|
||||||
|
struct IGDdatas {
|
||||||
|
char cureltname[MINIUPNPC_URL_MAXSIZE];
|
||||||
|
char urlbase[MINIUPNPC_URL_MAXSIZE];
|
||||||
|
char presentationurl[MINIUPNPC_URL_MAXSIZE];
|
||||||
|
int level;
|
||||||
|
/*int state;*/
|
||||||
|
/* "urn:schemas-upnp-org:service:WANCommonInterfaceConfig:1" */
|
||||||
|
struct IGDdatas_service CIF;
|
||||||
|
/* "urn:schemas-upnp-org:service:WANIPConnection:1"
|
||||||
|
* "urn:schemas-upnp-org:service:WANPPPConnection:1" */
|
||||||
|
struct IGDdatas_service first;
|
||||||
|
/* if both WANIPConnection and WANPPPConnection are present */
|
||||||
|
struct IGDdatas_service second;
|
||||||
|
/* "urn:schemas-upnp-org:service:WANIPv6FirewallControl:1" */
|
||||||
|
struct IGDdatas_service IPv6FC;
|
||||||
|
/* tmp */
|
||||||
|
struct IGDdatas_service tmp;
|
||||||
|
};
|
||||||
|
|
||||||
|
void IGDstartelt(void *, const char *, int);
|
||||||
|
void IGDendelt(void *, const char *, int);
|
||||||
|
void IGDdata(void *, const char *, int);
|
||||||
|
#ifdef DEBUG
|
||||||
|
void printIGD(struct IGDdatas *);
|
||||||
|
#endif /* DEBUG */
|
||||||
|
|
||||||
|
#endif /* IGD_DESC_PARSE_H_INCLUDED */
|
153
libs/include/miniupnpc/miniupnpc.h
Normal file
153
libs/include/miniupnpc/miniupnpc.h
Normal file
@ -0,0 +1,153 @@
|
|||||||
|
/* $Id: miniupnpc.h,v 1.53 2018/05/07 11:05:16 nanard Exp $ */
|
||||||
|
/* vim: tabstop=4 shiftwidth=4 noexpandtab
|
||||||
|
* Project: miniupnp
|
||||||
|
* http://miniupnp.free.fr/
|
||||||
|
* Author: Thomas Bernard
|
||||||
|
* Copyright (c) 2005-2018 Thomas Bernard
|
||||||
|
* This software is subjects to the conditions detailed
|
||||||
|
* in the LICENCE file provided within this distribution */
|
||||||
|
#ifndef MINIUPNPC_H_INCLUDED
|
||||||
|
#define MINIUPNPC_H_INCLUDED
|
||||||
|
|
||||||
|
#include "miniupnpc_declspec.h"
|
||||||
|
#include "igd_desc_parse.h"
|
||||||
|
#include "upnpdev.h"
|
||||||
|
|
||||||
|
/* error codes : */
|
||||||
|
#define UPNPDISCOVER_SUCCESS (0)
|
||||||
|
#define UPNPDISCOVER_UNKNOWN_ERROR (-1)
|
||||||
|
#define UPNPDISCOVER_SOCKET_ERROR (-101)
|
||||||
|
#define UPNPDISCOVER_MEMORY_ERROR (-102)
|
||||||
|
|
||||||
|
/* versions : */
|
||||||
|
#define MINIUPNPC_VERSION "2.1"
|
||||||
|
#define MINIUPNPC_API_VERSION 17
|
||||||
|
|
||||||
|
/* Source port:
|
||||||
|
Using "1" as an alias for 1900 for backwards compatibility
|
||||||
|
(presuming one would have used that for the "sameport" parameter) */
|
||||||
|
#define UPNP_LOCAL_PORT_ANY 0
|
||||||
|
#define UPNP_LOCAL_PORT_SAME 1
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Structures definitions : */
|
||||||
|
struct UPNParg { const char * elt; const char * val; };
|
||||||
|
|
||||||
|
char *
|
||||||
|
simpleUPnPcommand(int, const char *, const char *,
|
||||||
|
const char *, struct UPNParg *,
|
||||||
|
int *);
|
||||||
|
|
||||||
|
/* upnpDiscover()
|
||||||
|
* discover UPnP devices on the network.
|
||||||
|
* The discovered devices are returned as a chained list.
|
||||||
|
* It is up to the caller to free the list with freeUPNPDevlist().
|
||||||
|
* delay (in millisecond) is the maximum time for waiting any device
|
||||||
|
* response.
|
||||||
|
* If available, device list will be obtained from MiniSSDPd.
|
||||||
|
* Default path for minissdpd socket will be used if minissdpdsock argument
|
||||||
|
* is NULL.
|
||||||
|
* If multicastif is not NULL, it will be used instead of the default
|
||||||
|
* multicast interface for sending SSDP discover packets.
|
||||||
|
* If localport is set to UPNP_LOCAL_PORT_SAME(1) SSDP packets will be sent
|
||||||
|
* from the source port 1900 (same as destination port), if set to
|
||||||
|
* UPNP_LOCAL_PORT_ANY(0) system assign a source port, any other value will
|
||||||
|
* be attempted as the source port.
|
||||||
|
* "searchalltypes" parameter is useful when searching several types,
|
||||||
|
* if 0, the discovery will stop with the first type returning results.
|
||||||
|
* TTL should default to 2. */
|
||||||
|
MINIUPNP_LIBSPEC struct UPNPDev *
|
||||||
|
upnpDiscover(int delay, const char * multicastif,
|
||||||
|
const char * minissdpdsock, int localport,
|
||||||
|
int ipv6, unsigned char ttl,
|
||||||
|
int * error);
|
||||||
|
|
||||||
|
MINIUPNP_LIBSPEC struct UPNPDev *
|
||||||
|
upnpDiscoverAll(int delay, const char * multicastif,
|
||||||
|
const char * minissdpdsock, int localport,
|
||||||
|
int ipv6, unsigned char ttl,
|
||||||
|
int * error);
|
||||||
|
|
||||||
|
MINIUPNP_LIBSPEC struct UPNPDev *
|
||||||
|
upnpDiscoverDevice(const char * device, int delay, const char * multicastif,
|
||||||
|
const char * minissdpdsock, int localport,
|
||||||
|
int ipv6, unsigned char ttl,
|
||||||
|
int * error);
|
||||||
|
|
||||||
|
MINIUPNP_LIBSPEC struct UPNPDev *
|
||||||
|
upnpDiscoverDevices(const char * const deviceTypes[],
|
||||||
|
int delay, const char * multicastif,
|
||||||
|
const char * minissdpdsock, int localport,
|
||||||
|
int ipv6, unsigned char ttl,
|
||||||
|
int * error,
|
||||||
|
int searchalltypes);
|
||||||
|
|
||||||
|
/* parserootdesc() :
|
||||||
|
* parse root XML description of a UPnP device and fill the IGDdatas
|
||||||
|
* structure. */
|
||||||
|
MINIUPNP_LIBSPEC void parserootdesc(const char *, int, struct IGDdatas *);
|
||||||
|
|
||||||
|
/* structure used to get fast access to urls
|
||||||
|
* controlURL: controlURL of the WANIPConnection
|
||||||
|
* ipcondescURL: url of the description of the WANIPConnection
|
||||||
|
* controlURL_CIF: controlURL of the WANCommonInterfaceConfig
|
||||||
|
* controlURL_6FC: controlURL of the WANIPv6FirewallControl
|
||||||
|
*/
|
||||||
|
struct UPNPUrls {
|
||||||
|
char * controlURL;
|
||||||
|
char * ipcondescURL;
|
||||||
|
char * controlURL_CIF;
|
||||||
|
char * controlURL_6FC;
|
||||||
|
char * rootdescURL;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* UPNP_GetValidIGD() :
|
||||||
|
* return values :
|
||||||
|
* 0 = NO IGD found
|
||||||
|
* 1 = A valid connected IGD has been found
|
||||||
|
* 2 = A valid IGD has been found but it reported as
|
||||||
|
* not connected
|
||||||
|
* 3 = an UPnP device has been found but was not recognized as an IGD
|
||||||
|
*
|
||||||
|
* In any non zero return case, the urls and data structures
|
||||||
|
* passed as parameters are set. Donc forget to call FreeUPNPUrls(urls) to
|
||||||
|
* free allocated memory.
|
||||||
|
*/
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_GetValidIGD(struct UPNPDev * devlist,
|
||||||
|
struct UPNPUrls * urls,
|
||||||
|
struct IGDdatas * data,
|
||||||
|
char * lanaddr, int lanaddrlen);
|
||||||
|
|
||||||
|
/* UPNP_GetIGDFromUrl()
|
||||||
|
* Used when skipping the discovery process.
|
||||||
|
* When succeding, urls, data, and lanaddr arguments are set.
|
||||||
|
* return value :
|
||||||
|
* 0 - Not ok
|
||||||
|
* 1 - OK */
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_GetIGDFromUrl(const char * rootdescurl,
|
||||||
|
struct UPNPUrls * urls,
|
||||||
|
struct IGDdatas * data,
|
||||||
|
char * lanaddr, int lanaddrlen);
|
||||||
|
|
||||||
|
MINIUPNP_LIBSPEC void
|
||||||
|
GetUPNPUrls(struct UPNPUrls *, struct IGDdatas *,
|
||||||
|
const char *, unsigned int);
|
||||||
|
|
||||||
|
MINIUPNP_LIBSPEC void
|
||||||
|
FreeUPNPUrls(struct UPNPUrls *);
|
||||||
|
|
||||||
|
/* return 0 or 1 */
|
||||||
|
MINIUPNP_LIBSPEC int UPNPIGD_IsConnected(struct UPNPUrls *, struct IGDdatas *);
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
21
libs/include/miniupnpc/miniupnpc_declspec.h
Normal file
21
libs/include/miniupnpc/miniupnpc_declspec.h
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
#ifndef MINIUPNPC_DECLSPEC_H_INCLUDED
|
||||||
|
#define MINIUPNPC_DECLSPEC_H_INCLUDED
|
||||||
|
|
||||||
|
#if defined(_WIN32) && !defined(MINIUPNP_STATICLIB)
|
||||||
|
/* for windows dll */
|
||||||
|
#ifdef MINIUPNP_EXPORTS
|
||||||
|
#define MINIUPNP_LIBSPEC __declspec(dllexport)
|
||||||
|
#else
|
||||||
|
#define MINIUPNP_LIBSPEC __declspec(dllimport)
|
||||||
|
#endif
|
||||||
|
#else
|
||||||
|
#if defined(__GNUC__) && __GNUC__ >= 4
|
||||||
|
/* fix dynlib for OS X 10.9.2 and Apple LLVM version 5.0 */
|
||||||
|
#define MINIUPNP_LIBSPEC __attribute__ ((visibility ("default")))
|
||||||
|
#else
|
||||||
|
#define MINIUPNP_LIBSPEC
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* MINIUPNPC_DECLSPEC_H_INCLUDED */
|
||||||
|
|
44
libs/include/miniupnpc/miniupnpc_socketdef.h
Normal file
44
libs/include/miniupnpc/miniupnpc_socketdef.h
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
/* $Id: miniupnpc_socketdef.h,v 1.1 2018/03/13 23:44:10 nanard Exp $ */
|
||||||
|
/* Miniupnp project : http://miniupnp.free.fr/ or https://miniupnp.tuxfamily.org/
|
||||||
|
* Author : Thomas Bernard
|
||||||
|
* Copyright (c) 2018 Thomas Bernard
|
||||||
|
* This software is subject to the conditions detailed in the
|
||||||
|
* LICENCE file provided within this distribution */
|
||||||
|
#ifndef MINIUPNPC_SOCKETDEF_H_INCLUDED
|
||||||
|
#define MINIUPNPC_SOCKETDEF_H_INCLUDED
|
||||||
|
|
||||||
|
#ifdef _MSC_VER
|
||||||
|
|
||||||
|
#define ISINVALID(s) (INVALID_SOCKET==(s))
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
#ifndef SOCKET
|
||||||
|
#define SOCKET int
|
||||||
|
#endif
|
||||||
|
#ifndef SSIZE_T
|
||||||
|
#define SSIZE_T ssize_t
|
||||||
|
#endif
|
||||||
|
#ifndef INVALID_SOCKET
|
||||||
|
#define INVALID_SOCKET (-1)
|
||||||
|
#endif
|
||||||
|
#ifndef ISINVALID
|
||||||
|
#define ISINVALID(s) ((s)<0)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MSC_VER
|
||||||
|
#define MSC_CAST_INT (int)
|
||||||
|
#else
|
||||||
|
#define MSC_CAST_INT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* definition of PRINT_SOCKET_ERROR */
|
||||||
|
#ifdef _WIN32
|
||||||
|
#define PRINT_SOCKET_ERROR(x) fprintf(stderr, "Socket error: %s, %d\n", x, WSAGetLastError());
|
||||||
|
#else
|
||||||
|
#define PRINT_SOCKET_ERROR(x) perror(x)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* MINIUPNPC_SOCKETDEF_H_INCLUDED */
|
19
libs/include/miniupnpc/miniupnpctypes.h
Normal file
19
libs/include/miniupnpc/miniupnpctypes.h
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
/* $Id: miniupnpctypes.h,v 1.1 2011/02/15 11:10:40 nanard Exp $ */
|
||||||
|
/* Miniupnp project : http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org
|
||||||
|
* Author : Thomas Bernard
|
||||||
|
* Copyright (c) 2011 Thomas Bernard
|
||||||
|
* This software is subject to the conditions detailed in the
|
||||||
|
* LICENCE file provided within this distribution */
|
||||||
|
#ifndef MINIUPNPCTYPES_H_INCLUDED
|
||||||
|
#define MINIUPNPCTYPES_H_INCLUDED
|
||||||
|
|
||||||
|
#if (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L)
|
||||||
|
#define UNSIGNED_INTEGER unsigned long long
|
||||||
|
#define STRTOUI strtoull
|
||||||
|
#else
|
||||||
|
#define UNSIGNED_INTEGER unsigned int
|
||||||
|
#define STRTOUI strtoul
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
27
libs/include/miniupnpc/miniwget.h
Normal file
27
libs/include/miniupnpc/miniwget.h
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
/* $Id: miniwget.h,v 1.12 2016/01/24 17:24:36 nanard Exp $ */
|
||||||
|
/* Project : miniupnp
|
||||||
|
* Author : Thomas Bernard
|
||||||
|
* Copyright (c) 2005-2016 Thomas Bernard
|
||||||
|
* This software is subject to the conditions detailed in the
|
||||||
|
* LICENCE file provided in this distribution.
|
||||||
|
* */
|
||||||
|
#ifndef MINIWGET_H_INCLUDED
|
||||||
|
#define MINIWGET_H_INCLUDED
|
||||||
|
|
||||||
|
#include "miniupnpc_declspec.h"
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
MINIUPNP_LIBSPEC void * miniwget(const char *, int *, unsigned int, int *);
|
||||||
|
|
||||||
|
MINIUPNP_LIBSPEC void * miniwget_getaddr(const char *, int *, char *, int, unsigned int, int *);
|
||||||
|
|
||||||
|
int parseURL(const char *, char *, unsigned short *, char * *, unsigned int *);
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
348
libs/include/miniupnpc/upnpcommands.h
Normal file
348
libs/include/miniupnpc/upnpcommands.h
Normal file
@ -0,0 +1,348 @@
|
|||||||
|
/* $Id: upnpcommands.h,v 1.32 2018/03/13 23:34:47 nanard Exp $ */
|
||||||
|
/* Miniupnp project : http://miniupnp.free.fr/
|
||||||
|
* Author : Thomas Bernard
|
||||||
|
* Copyright (c) 2005-2018 Thomas Bernard
|
||||||
|
* This software is subject to the conditions detailed in the
|
||||||
|
* LICENCE file provided within this distribution */
|
||||||
|
#ifndef UPNPCOMMANDS_H_INCLUDED
|
||||||
|
#define UPNPCOMMANDS_H_INCLUDED
|
||||||
|
|
||||||
|
#include "miniupnpc_declspec.h"
|
||||||
|
#include "miniupnpctypes.h"
|
||||||
|
|
||||||
|
/* MiniUPnPc return codes : */
|
||||||
|
#define UPNPCOMMAND_SUCCESS (0)
|
||||||
|
#define UPNPCOMMAND_UNKNOWN_ERROR (-1)
|
||||||
|
#define UPNPCOMMAND_INVALID_ARGS (-2)
|
||||||
|
#define UPNPCOMMAND_HTTP_ERROR (-3)
|
||||||
|
#define UPNPCOMMAND_INVALID_RESPONSE (-4)
|
||||||
|
#define UPNPCOMMAND_MEM_ALLOC_ERROR (-5)
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
struct PortMappingParserData;
|
||||||
|
|
||||||
|
MINIUPNP_LIBSPEC UNSIGNED_INTEGER
|
||||||
|
UPNP_GetTotalBytesSent(const char * controlURL,
|
||||||
|
const char * servicetype);
|
||||||
|
|
||||||
|
MINIUPNP_LIBSPEC UNSIGNED_INTEGER
|
||||||
|
UPNP_GetTotalBytesReceived(const char * controlURL,
|
||||||
|
const char * servicetype);
|
||||||
|
|
||||||
|
MINIUPNP_LIBSPEC UNSIGNED_INTEGER
|
||||||
|
UPNP_GetTotalPacketsSent(const char * controlURL,
|
||||||
|
const char * servicetype);
|
||||||
|
|
||||||
|
MINIUPNP_LIBSPEC UNSIGNED_INTEGER
|
||||||
|
UPNP_GetTotalPacketsReceived(const char * controlURL,
|
||||||
|
const char * servicetype);
|
||||||
|
|
||||||
|
/* UPNP_GetStatusInfo()
|
||||||
|
* status and lastconnerror are 64 byte buffers
|
||||||
|
* Return values :
|
||||||
|
* UPNPCOMMAND_SUCCESS, UPNPCOMMAND_INVALID_ARGS, UPNPCOMMAND_UNKNOWN_ERROR
|
||||||
|
* or a UPnP Error code */
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_GetStatusInfo(const char * controlURL,
|
||||||
|
const char * servicetype,
|
||||||
|
char * status,
|
||||||
|
unsigned int * uptime,
|
||||||
|
char * lastconnerror);
|
||||||
|
|
||||||
|
/* UPNP_GetConnectionTypeInfo()
|
||||||
|
* argument connectionType is a 64 character buffer
|
||||||
|
* Return Values :
|
||||||
|
* UPNPCOMMAND_SUCCESS, UPNPCOMMAND_INVALID_ARGS, UPNPCOMMAND_UNKNOWN_ERROR
|
||||||
|
* or a UPnP Error code */
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_GetConnectionTypeInfo(const char * controlURL,
|
||||||
|
const char * servicetype,
|
||||||
|
char * connectionType);
|
||||||
|
|
||||||
|
/* UPNP_GetExternalIPAddress() call the corresponding UPNP method.
|
||||||
|
* if the third arg is not null the value is copied to it.
|
||||||
|
* at least 16 bytes must be available
|
||||||
|
*
|
||||||
|
* Return values :
|
||||||
|
* 0 : SUCCESS
|
||||||
|
* NON ZERO : ERROR Either an UPnP error code or an unknown error.
|
||||||
|
*
|
||||||
|
* possible UPnP Errors :
|
||||||
|
* 402 Invalid Args - See UPnP Device Architecture section on Control.
|
||||||
|
* 501 Action Failed - See UPnP Device Architecture section on Control. */
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_GetExternalIPAddress(const char * controlURL,
|
||||||
|
const char * servicetype,
|
||||||
|
char * extIpAdd);
|
||||||
|
|
||||||
|
/* UPNP_GetLinkLayerMaxBitRates()
|
||||||
|
* call WANCommonInterfaceConfig:1#GetCommonLinkProperties
|
||||||
|
*
|
||||||
|
* return values :
|
||||||
|
* UPNPCOMMAND_SUCCESS, UPNPCOMMAND_INVALID_ARGS, UPNPCOMMAND_UNKNOWN_ERROR
|
||||||
|
* or a UPnP Error Code. */
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_GetLinkLayerMaxBitRates(const char* controlURL,
|
||||||
|
const char* servicetype,
|
||||||
|
unsigned int * bitrateDown,
|
||||||
|
unsigned int * bitrateUp);
|
||||||
|
|
||||||
|
/* UPNP_AddPortMapping()
|
||||||
|
* if desc is NULL, it will be defaulted to "libminiupnpc"
|
||||||
|
* remoteHost is usually NULL because IGD don't support it.
|
||||||
|
*
|
||||||
|
* Return values :
|
||||||
|
* 0 : SUCCESS
|
||||||
|
* NON ZERO : ERROR. Either an UPnP error code or an unknown error.
|
||||||
|
*
|
||||||
|
* List of possible UPnP errors for AddPortMapping :
|
||||||
|
* errorCode errorDescription (short) - Description (long)
|
||||||
|
* 402 Invalid Args - See UPnP Device Architecture section on Control.
|
||||||
|
* 501 Action Failed - See UPnP Device Architecture section on Control.
|
||||||
|
* 606 Action not authorized - The action requested REQUIRES authorization and
|
||||||
|
* the sender was not authorized.
|
||||||
|
* 715 WildCardNotPermittedInSrcIP - The source IP address cannot be
|
||||||
|
* wild-carded
|
||||||
|
* 716 WildCardNotPermittedInExtPort - The external port cannot be wild-carded
|
||||||
|
* 718 ConflictInMappingEntry - The port mapping entry specified conflicts
|
||||||
|
* with a mapping assigned previously to another client
|
||||||
|
* 724 SamePortValuesRequired - Internal and External port values
|
||||||
|
* must be the same
|
||||||
|
* 725 OnlyPermanentLeasesSupported - The NAT implementation only supports
|
||||||
|
* permanent lease times on port mappings
|
||||||
|
* 726 RemoteHostOnlySupportsWildcard - RemoteHost must be a wildcard
|
||||||
|
* and cannot be a specific IP address or DNS name
|
||||||
|
* 727 ExternalPortOnlySupportsWildcard - ExternalPort must be a wildcard and
|
||||||
|
* cannot be a specific port value
|
||||||
|
* 728 NoPortMapsAvailable - There are not enough free ports available to
|
||||||
|
* complete port mapping.
|
||||||
|
* 729 ConflictWithOtherMechanisms - Attempted port mapping is not allowed
|
||||||
|
* due to conflict with other mechanisms.
|
||||||
|
* 732 WildCardNotPermittedInIntPort - The internal port cannot be wild-carded
|
||||||
|
*/
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_AddPortMapping(const char * controlURL, const char * servicetype,
|
||||||
|
const char * extPort,
|
||||||
|
const char * inPort,
|
||||||
|
const char * inClient,
|
||||||
|
const char * desc,
|
||||||
|
const char * proto,
|
||||||
|
const char * remoteHost,
|
||||||
|
const char * leaseDuration);
|
||||||
|
|
||||||
|
/* UPNP_AddAnyPortMapping()
|
||||||
|
* if desc is NULL, it will be defaulted to "libminiupnpc"
|
||||||
|
* remoteHost is usually NULL because IGD don't support it.
|
||||||
|
*
|
||||||
|
* Return values :
|
||||||
|
* 0 : SUCCESS
|
||||||
|
* NON ZERO : ERROR. Either an UPnP error code or an unknown error.
|
||||||
|
*
|
||||||
|
* List of possible UPnP errors for AddPortMapping :
|
||||||
|
* errorCode errorDescription (short) - Description (long)
|
||||||
|
* 402 Invalid Args - See UPnP Device Architecture section on Control.
|
||||||
|
* 501 Action Failed - See UPnP Device Architecture section on Control.
|
||||||
|
* 606 Action not authorized - The action requested REQUIRES authorization and
|
||||||
|
* the sender was not authorized.
|
||||||
|
* 715 WildCardNotPermittedInSrcIP - The source IP address cannot be
|
||||||
|
* wild-carded
|
||||||
|
* 716 WildCardNotPermittedInExtPort - The external port cannot be wild-carded
|
||||||
|
* 728 NoPortMapsAvailable - There are not enough free ports available to
|
||||||
|
* complete port mapping.
|
||||||
|
* 729 ConflictWithOtherMechanisms - Attempted port mapping is not allowed
|
||||||
|
* due to conflict with other mechanisms.
|
||||||
|
* 732 WildCardNotPermittedInIntPort - The internal port cannot be wild-carded
|
||||||
|
*/
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_AddAnyPortMapping(const char * controlURL, const char * servicetype,
|
||||||
|
const char * extPort,
|
||||||
|
const char * inPort,
|
||||||
|
const char * inClient,
|
||||||
|
const char * desc,
|
||||||
|
const char * proto,
|
||||||
|
const char * remoteHost,
|
||||||
|
const char * leaseDuration,
|
||||||
|
char * reservedPort);
|
||||||
|
|
||||||
|
/* UPNP_DeletePortMapping()
|
||||||
|
* Use same argument values as what was used for AddPortMapping().
|
||||||
|
* remoteHost is usually NULL because IGD don't support it.
|
||||||
|
* Return Values :
|
||||||
|
* 0 : SUCCESS
|
||||||
|
* NON ZERO : error. Either an UPnP error code or an undefined error.
|
||||||
|
*
|
||||||
|
* List of possible UPnP errors for DeletePortMapping :
|
||||||
|
* 402 Invalid Args - See UPnP Device Architecture section on Control.
|
||||||
|
* 606 Action not authorized - The action requested REQUIRES authorization
|
||||||
|
* and the sender was not authorized.
|
||||||
|
* 714 NoSuchEntryInArray - The specified value does not exist in the array */
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_DeletePortMapping(const char * controlURL, const char * servicetype,
|
||||||
|
const char * extPort, const char * proto,
|
||||||
|
const char * remoteHost);
|
||||||
|
|
||||||
|
/* UPNP_DeletePortRangeMapping()
|
||||||
|
* Use same argument values as what was used for AddPortMapping().
|
||||||
|
* remoteHost is usually NULL because IGD don't support it.
|
||||||
|
* Return Values :
|
||||||
|
* 0 : SUCCESS
|
||||||
|
* NON ZERO : error. Either an UPnP error code or an undefined error.
|
||||||
|
*
|
||||||
|
* List of possible UPnP errors for DeletePortMapping :
|
||||||
|
* 606 Action not authorized - The action requested REQUIRES authorization
|
||||||
|
* and the sender was not authorized.
|
||||||
|
* 730 PortMappingNotFound - This error message is returned if no port
|
||||||
|
* mapping is found in the specified range.
|
||||||
|
* 733 InconsistentParameters - NewStartPort and NewEndPort values are not consistent. */
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_DeletePortMappingRange(const char * controlURL, const char * servicetype,
|
||||||
|
const char * extPortStart, const char * extPortEnd,
|
||||||
|
const char * proto,
|
||||||
|
const char * manage);
|
||||||
|
|
||||||
|
/* UPNP_GetPortMappingNumberOfEntries()
|
||||||
|
* not supported by all routers */
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_GetPortMappingNumberOfEntries(const char * controlURL,
|
||||||
|
const char * servicetype,
|
||||||
|
unsigned int * numEntries);
|
||||||
|
|
||||||
|
/* UPNP_GetSpecificPortMappingEntry()
|
||||||
|
* retrieves an existing port mapping
|
||||||
|
* params :
|
||||||
|
* in extPort
|
||||||
|
* in proto
|
||||||
|
* in remoteHost
|
||||||
|
* out intClient (16 bytes)
|
||||||
|
* out intPort (6 bytes)
|
||||||
|
* out desc (80 bytes)
|
||||||
|
* out enabled (4 bytes)
|
||||||
|
* out leaseDuration (16 bytes)
|
||||||
|
*
|
||||||
|
* return value :
|
||||||
|
* UPNPCOMMAND_SUCCESS, UPNPCOMMAND_INVALID_ARGS, UPNPCOMMAND_UNKNOWN_ERROR
|
||||||
|
* or a UPnP Error Code.
|
||||||
|
*
|
||||||
|
* List of possible UPnP errors for _GetSpecificPortMappingEntry :
|
||||||
|
* 402 Invalid Args - See UPnP Device Architecture section on Control.
|
||||||
|
* 501 Action Failed - See UPnP Device Architecture section on Control.
|
||||||
|
* 606 Action not authorized - The action requested REQUIRES authorization
|
||||||
|
* and the sender was not authorized.
|
||||||
|
* 714 NoSuchEntryInArray - The specified value does not exist in the array.
|
||||||
|
*/
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_GetSpecificPortMappingEntry(const char * controlURL,
|
||||||
|
const char * servicetype,
|
||||||
|
const char * extPort,
|
||||||
|
const char * proto,
|
||||||
|
const char * remoteHost,
|
||||||
|
char * intClient,
|
||||||
|
char * intPort,
|
||||||
|
char * desc,
|
||||||
|
char * enabled,
|
||||||
|
char * leaseDuration);
|
||||||
|
|
||||||
|
/* UPNP_GetGenericPortMappingEntry()
|
||||||
|
* params :
|
||||||
|
* in index
|
||||||
|
* out extPort (6 bytes)
|
||||||
|
* out intClient (16 bytes)
|
||||||
|
* out intPort (6 bytes)
|
||||||
|
* out protocol (4 bytes)
|
||||||
|
* out desc (80 bytes)
|
||||||
|
* out enabled (4 bytes)
|
||||||
|
* out rHost (64 bytes)
|
||||||
|
* out duration (16 bytes)
|
||||||
|
*
|
||||||
|
* return value :
|
||||||
|
* UPNPCOMMAND_SUCCESS, UPNPCOMMAND_INVALID_ARGS, UPNPCOMMAND_UNKNOWN_ERROR
|
||||||
|
* or a UPnP Error Code.
|
||||||
|
*
|
||||||
|
* Possible UPNP Error codes :
|
||||||
|
* 402 Invalid Args - See UPnP Device Architecture section on Control.
|
||||||
|
* 606 Action not authorized - The action requested REQUIRES authorization
|
||||||
|
* and the sender was not authorized.
|
||||||
|
* 713 SpecifiedArrayIndexInvalid - The specified array index is out of bounds
|
||||||
|
*/
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_GetGenericPortMappingEntry(const char * controlURL,
|
||||||
|
const char * servicetype,
|
||||||
|
const char * index,
|
||||||
|
char * extPort,
|
||||||
|
char * intClient,
|
||||||
|
char * intPort,
|
||||||
|
char * protocol,
|
||||||
|
char * desc,
|
||||||
|
char * enabled,
|
||||||
|
char * rHost,
|
||||||
|
char * duration);
|
||||||
|
|
||||||
|
/* UPNP_GetListOfPortMappings() Available in IGD v2
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* Possible UPNP Error codes :
|
||||||
|
* 606 Action not Authorized
|
||||||
|
* 730 PortMappingNotFound - no port mapping is found in the specified range.
|
||||||
|
* 733 InconsistantParameters - NewStartPort and NewEndPort values are not
|
||||||
|
* consistent.
|
||||||
|
*/
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_GetListOfPortMappings(const char * controlURL,
|
||||||
|
const char * servicetype,
|
||||||
|
const char * startPort,
|
||||||
|
const char * endPort,
|
||||||
|
const char * protocol,
|
||||||
|
const char * numberOfPorts,
|
||||||
|
struct PortMappingParserData * data);
|
||||||
|
|
||||||
|
/* IGD:2, functions for service WANIPv6FirewallControl:1 */
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_GetFirewallStatus(const char * controlURL,
|
||||||
|
const char * servicetype,
|
||||||
|
int * firewallEnabled,
|
||||||
|
int * inboundPinholeAllowed);
|
||||||
|
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_GetOutboundPinholeTimeout(const char * controlURL, const char * servicetype,
|
||||||
|
const char * remoteHost,
|
||||||
|
const char * remotePort,
|
||||||
|
const char * intClient,
|
||||||
|
const char * intPort,
|
||||||
|
const char * proto,
|
||||||
|
int * opTimeout);
|
||||||
|
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_AddPinhole(const char * controlURL, const char * servicetype,
|
||||||
|
const char * remoteHost,
|
||||||
|
const char * remotePort,
|
||||||
|
const char * intClient,
|
||||||
|
const char * intPort,
|
||||||
|
const char * proto,
|
||||||
|
const char * leaseTime,
|
||||||
|
char * uniqueID);
|
||||||
|
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_UpdatePinhole(const char * controlURL, const char * servicetype,
|
||||||
|
const char * uniqueID,
|
||||||
|
const char * leaseTime);
|
||||||
|
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_DeletePinhole(const char * controlURL, const char * servicetype, const char * uniqueID);
|
||||||
|
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_CheckPinholeWorking(const char * controlURL, const char * servicetype,
|
||||||
|
const char * uniqueID, int * isWorking);
|
||||||
|
|
||||||
|
MINIUPNP_LIBSPEC int
|
||||||
|
UPNP_GetPinholePackets(const char * controlURL, const char * servicetype,
|
||||||
|
const char * uniqueID, int * packets);
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
36
libs/include/miniupnpc/upnpdev.h
Normal file
36
libs/include/miniupnpc/upnpdev.h
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
/* $Id: upnpdev.h,v 1.1 2015/08/28 12:14:19 nanard Exp $ */
|
||||||
|
/* Project : miniupnp
|
||||||
|
* Web : http://miniupnp.free.fr/
|
||||||
|
* Author : Thomas BERNARD
|
||||||
|
* copyright (c) 2005-2018 Thomas Bernard
|
||||||
|
* This software is subjet to the conditions detailed in the
|
||||||
|
* provided LICENSE file. */
|
||||||
|
#ifndef UPNPDEV_H_INCLUDED
|
||||||
|
#define UPNPDEV_H_INCLUDED
|
||||||
|
|
||||||
|
#include "miniupnpc_declspec.h"
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
struct UPNPDev {
|
||||||
|
struct UPNPDev * pNext;
|
||||||
|
char * descURL;
|
||||||
|
char * st;
|
||||||
|
char * usn;
|
||||||
|
unsigned int scope_id;
|
||||||
|
char buffer[3];
|
||||||
|
};
|
||||||
|
|
||||||
|
/* freeUPNPDevlist()
|
||||||
|
* free list returned by upnpDiscover() */
|
||||||
|
MINIUPNP_LIBSPEC void freeUPNPDevlist(struct UPNPDev * devlist);
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* UPNPDEV_H_INCLUDED */
|
26
libs/include/miniupnpc/upnperrors.h
Normal file
26
libs/include/miniupnpc/upnperrors.h
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
/* $Id: upnperrors.h,v 1.2 2008/07/02 23:31:15 nanard Exp $ */
|
||||||
|
/* (c) 2007-2015 Thomas Bernard
|
||||||
|
* All rights reserved.
|
||||||
|
* MiniUPnP Project.
|
||||||
|
* http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/
|
||||||
|
* This software is subjet to the conditions detailed in the
|
||||||
|
* provided LICENCE file. */
|
||||||
|
#ifndef UPNPERRORS_H_INCLUDED
|
||||||
|
#define UPNPERRORS_H_INCLUDED
|
||||||
|
|
||||||
|
#include "miniupnpc_declspec.h"
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* strupnperror()
|
||||||
|
* Return a string description of the UPnP error code
|
||||||
|
* or NULL for undefinded errors */
|
||||||
|
MINIUPNP_LIBSPEC const char * strupnperror(int err);
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
215
libs/include/natpmp.h
Normal file
215
libs/include/natpmp.h
Normal file
@ -0,0 +1,215 @@
|
|||||||
|
/* $Id: natpmp.h,v 1.19 2014/04/01 09:39:29 nanard Exp $ */
|
||||||
|
/* libnatpmp
|
||||||
|
Copyright (c) 2007-2014, Thomas BERNARD
|
||||||
|
All rights reserved.
|
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without
|
||||||
|
modification, are permitted provided that the following conditions are met:
|
||||||
|
|
||||||
|
* Redistributions of source code must retain the above copyright notice,
|
||||||
|
this list of conditions and the following disclaimer.
|
||||||
|
* Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
this list of conditions and the following disclaimer in the documentation
|
||||||
|
and/or other materials provided with the distribution.
|
||||||
|
* The name of the author may not be used to endorse or promote products
|
||||||
|
derived from this software without specific prior written permission.
|
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||||
|
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
|
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||||
|
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
|
||||||
|
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||||
|
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||||
|
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||||
|
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||||
|
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||||
|
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||||
|
POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*/
|
||||||
|
#ifndef __NATPMP_H__
|
||||||
|
#define __NATPMP_H__
|
||||||
|
|
||||||
|
/* NAT-PMP Port as defined by the NAT-PMP draft */
|
||||||
|
#define NATPMP_PORT (5351)
|
||||||
|
|
||||||
|
#include <time.h>
|
||||||
|
#if !defined(_MSC_VER)
|
||||||
|
#include <sys/time.h>
|
||||||
|
#endif /* !defined(_MSC_VER) */
|
||||||
|
|
||||||
|
#ifdef _WIN32
|
||||||
|
#include <winsock2.h>
|
||||||
|
#if !defined(_MSC_VER) || _MSC_VER >= 1600
|
||||||
|
#include <stdint.h>
|
||||||
|
#else /* !defined(_MSC_VER) || _MSC_VER >= 1600 */
|
||||||
|
typedef unsigned long uint32_t;
|
||||||
|
typedef unsigned short uint16_t;
|
||||||
|
#endif /* !defined(_MSC_VER) || _MSC_VER >= 1600 */
|
||||||
|
#define in_addr_t uint32_t
|
||||||
|
#else /* _WIN32 */
|
||||||
|
#include <netinet/in.h>
|
||||||
|
#endif /* _WIN32 */
|
||||||
|
#include "natpmp_declspec.h"
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
int s; /* socket */
|
||||||
|
in_addr_t gateway; /* default gateway (IPv4) */
|
||||||
|
int has_pending_request;
|
||||||
|
unsigned char pending_request[12];
|
||||||
|
int pending_request_len;
|
||||||
|
int try_number;
|
||||||
|
struct timeval retry_time;
|
||||||
|
} natpmp_t;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
uint16_t type; /* NATPMP_RESPTYPE_* */
|
||||||
|
uint16_t resultcode; /* NAT-PMP response code */
|
||||||
|
uint32_t epoch; /* Seconds since start of epoch */
|
||||||
|
union {
|
||||||
|
struct {
|
||||||
|
//in_addr_t addr;
|
||||||
|
struct in_addr addr;
|
||||||
|
} publicaddress;
|
||||||
|
struct {
|
||||||
|
uint16_t privateport;
|
||||||
|
uint16_t mappedpublicport;
|
||||||
|
uint32_t lifetime;
|
||||||
|
} newportmapping;
|
||||||
|
} pnu;
|
||||||
|
} natpmpresp_t;
|
||||||
|
|
||||||
|
/* possible values for type field of natpmpresp_t */
|
||||||
|
#define NATPMP_RESPTYPE_PUBLICADDRESS (0)
|
||||||
|
#define NATPMP_RESPTYPE_UDPPORTMAPPING (1)
|
||||||
|
#define NATPMP_RESPTYPE_TCPPORTMAPPING (2)
|
||||||
|
|
||||||
|
/* Values to pass to sendnewportmappingrequest() */
|
||||||
|
#define NATPMP_PROTOCOL_UDP (1)
|
||||||
|
#define NATPMP_PROTOCOL_TCP (2)
|
||||||
|
|
||||||
|
/* return values */
|
||||||
|
/* NATPMP_ERR_INVALIDARGS : invalid arguments passed to the function */
|
||||||
|
#define NATPMP_ERR_INVALIDARGS (-1)
|
||||||
|
/* NATPMP_ERR_SOCKETERROR : socket() failed. check errno for details */
|
||||||
|
#define NATPMP_ERR_SOCKETERROR (-2)
|
||||||
|
/* NATPMP_ERR_CANNOTGETGATEWAY : can't get default gateway IP */
|
||||||
|
#define NATPMP_ERR_CANNOTGETGATEWAY (-3)
|
||||||
|
/* NATPMP_ERR_CLOSEERR : close() failed. check errno for details */
|
||||||
|
#define NATPMP_ERR_CLOSEERR (-4)
|
||||||
|
/* NATPMP_ERR_RECVFROM : recvfrom() failed. check errno for details */
|
||||||
|
#define NATPMP_ERR_RECVFROM (-5)
|
||||||
|
/* NATPMP_ERR_NOPENDINGREQ : readnatpmpresponseorretry() called while
|
||||||
|
* no NAT-PMP request was pending */
|
||||||
|
#define NATPMP_ERR_NOPENDINGREQ (-6)
|
||||||
|
/* NATPMP_ERR_NOGATEWAYSUPPORT : the gateway does not support NAT-PMP */
|
||||||
|
#define NATPMP_ERR_NOGATEWAYSUPPORT (-7)
|
||||||
|
/* NATPMP_ERR_CONNECTERR : connect() failed. check errno for details */
|
||||||
|
#define NATPMP_ERR_CONNECTERR (-8)
|
||||||
|
/* NATPMP_ERR_WRONGPACKETSOURCE : packet not received from the network gateway */
|
||||||
|
#define NATPMP_ERR_WRONGPACKETSOURCE (-9)
|
||||||
|
/* NATPMP_ERR_SENDERR : send() failed. check errno for details */
|
||||||
|
#define NATPMP_ERR_SENDERR (-10)
|
||||||
|
/* NATPMP_ERR_FCNTLERROR : fcntl() failed. check errno for details */
|
||||||
|
#define NATPMP_ERR_FCNTLERROR (-11)
|
||||||
|
/* NATPMP_ERR_GETTIMEOFDAYERR : gettimeofday() failed. check errno for details */
|
||||||
|
#define NATPMP_ERR_GETTIMEOFDAYERR (-12)
|
||||||
|
|
||||||
|
/* */
|
||||||
|
#define NATPMP_ERR_UNSUPPORTEDVERSION (-14)
|
||||||
|
#define NATPMP_ERR_UNSUPPORTEDOPCODE (-15)
|
||||||
|
|
||||||
|
/* Errors from the server : */
|
||||||
|
#define NATPMP_ERR_UNDEFINEDERROR (-49)
|
||||||
|
#define NATPMP_ERR_NOTAUTHORIZED (-51)
|
||||||
|
#define NATPMP_ERR_NETWORKFAILURE (-52)
|
||||||
|
#define NATPMP_ERR_OUTOFRESOURCES (-53)
|
||||||
|
|
||||||
|
/* NATPMP_TRYAGAIN : no data available for the moment. try again later */
|
||||||
|
#define NATPMP_TRYAGAIN (-100)
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* initnatpmp()
|
||||||
|
* initialize a natpmp_t object
|
||||||
|
* With forcegw=1 the gateway is not detected automaticaly.
|
||||||
|
* Return values :
|
||||||
|
* 0 = OK
|
||||||
|
* NATPMP_ERR_INVALIDARGS
|
||||||
|
* NATPMP_ERR_SOCKETERROR
|
||||||
|
* NATPMP_ERR_FCNTLERROR
|
||||||
|
* NATPMP_ERR_CANNOTGETGATEWAY
|
||||||
|
* NATPMP_ERR_CONNECTERR */
|
||||||
|
NATPMP_LIBSPEC int initnatpmp(natpmp_t * p, int forcegw, in_addr_t forcedgw);
|
||||||
|
|
||||||
|
/* closenatpmp()
|
||||||
|
* close resources associated with a natpmp_t object
|
||||||
|
* Return values :
|
||||||
|
* 0 = OK
|
||||||
|
* NATPMP_ERR_INVALIDARGS
|
||||||
|
* NATPMP_ERR_CLOSEERR */
|
||||||
|
NATPMP_LIBSPEC int closenatpmp(natpmp_t * p);
|
||||||
|
|
||||||
|
/* sendpublicaddressrequest()
|
||||||
|
* send a public address NAT-PMP request to the network gateway
|
||||||
|
* Return values :
|
||||||
|
* 2 = OK (size of the request)
|
||||||
|
* NATPMP_ERR_INVALIDARGS
|
||||||
|
* NATPMP_ERR_SENDERR */
|
||||||
|
NATPMP_LIBSPEC int sendpublicaddressrequest(natpmp_t * p);
|
||||||
|
|
||||||
|
/* sendnewportmappingrequest()
|
||||||
|
* send a new port mapping NAT-PMP request to the network gateway
|
||||||
|
* Arguments :
|
||||||
|
* protocol is either NATPMP_PROTOCOL_TCP or NATPMP_PROTOCOL_UDP,
|
||||||
|
* lifetime is in seconds.
|
||||||
|
* To remove a port mapping, set lifetime to zero.
|
||||||
|
* To remove all port mappings to the host, set lifetime and both ports
|
||||||
|
* to zero.
|
||||||
|
* Return values :
|
||||||
|
* 12 = OK (size of the request)
|
||||||
|
* NATPMP_ERR_INVALIDARGS
|
||||||
|
* NATPMP_ERR_SENDERR */
|
||||||
|
NATPMP_LIBSPEC int sendnewportmappingrequest(natpmp_t * p, int protocol,
|
||||||
|
uint16_t privateport, uint16_t publicport,
|
||||||
|
uint32_t lifetime);
|
||||||
|
|
||||||
|
/* getnatpmprequesttimeout()
|
||||||
|
* fills the timeval structure with the timeout duration of the
|
||||||
|
* currently pending NAT-PMP request.
|
||||||
|
* Return values :
|
||||||
|
* 0 = OK
|
||||||
|
* NATPMP_ERR_INVALIDARGS
|
||||||
|
* NATPMP_ERR_GETTIMEOFDAYERR
|
||||||
|
* NATPMP_ERR_NOPENDINGREQ */
|
||||||
|
NATPMP_LIBSPEC int getnatpmprequesttimeout(natpmp_t * p, struct timeval * timeout);
|
||||||
|
|
||||||
|
/* readnatpmpresponseorretry()
|
||||||
|
* fills the natpmpresp_t structure if possible
|
||||||
|
* Return values :
|
||||||
|
* 0 = OK
|
||||||
|
* NATPMP_TRYAGAIN
|
||||||
|
* NATPMP_ERR_INVALIDARGS
|
||||||
|
* NATPMP_ERR_NOPENDINGREQ
|
||||||
|
* NATPMP_ERR_NOGATEWAYSUPPORT
|
||||||
|
* NATPMP_ERR_RECVFROM
|
||||||
|
* NATPMP_ERR_WRONGPACKETSOURCE
|
||||||
|
* NATPMP_ERR_UNSUPPORTEDVERSION
|
||||||
|
* NATPMP_ERR_UNSUPPORTEDOPCODE
|
||||||
|
* NATPMP_ERR_NOTAUTHORIZED
|
||||||
|
* NATPMP_ERR_NETWORKFAILURE
|
||||||
|
* NATPMP_ERR_OUTOFRESOURCES
|
||||||
|
* NATPMP_ERR_UNSUPPORTEDOPCODE
|
||||||
|
* NATPMP_ERR_UNDEFINEDERROR */
|
||||||
|
NATPMP_LIBSPEC int readnatpmpresponseorretry(natpmp_t * p, natpmpresp_t * response);
|
||||||
|
|
||||||
|
#ifdef ENABLE_STRNATPMPERR
|
||||||
|
NATPMP_LIBSPEC const char * strnatpmperr(int t);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
21
libs/include/natpmp_declspec.h
Normal file
21
libs/include/natpmp_declspec.h
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
#ifndef DECLSPEC_H_INCLUDED
|
||||||
|
#define DECLSPEC_H_INCLUDED
|
||||||
|
|
||||||
|
#if defined(_WIN32) && !defined(NATPMP_STATICLIB)
|
||||||
|
/* for windows dll */
|
||||||
|
#ifdef NATPMP_EXPORTS
|
||||||
|
#define NATPMP_LIBSPEC __declspec(dllexport)
|
||||||
|
#else
|
||||||
|
#define NATPMP_LIBSPEC __declspec(dllimport)
|
||||||
|
#endif
|
||||||
|
#else
|
||||||
|
#if defined(__GNUC__) && __GNUC__ >= 4
|
||||||
|
/* fix dynlib for OS X 10.9.2 and Apple LLVM version 5.0 */
|
||||||
|
#define NATPMP_LIBSPEC __attribute__ ((visibility ("default")))
|
||||||
|
#else
|
||||||
|
#define NATPMP_LIBSPEC
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
BIN
libs/x86/Debug/libnatpmp.lib
Normal file
BIN
libs/x86/Debug/libnatpmp.lib
Normal file
Binary file not shown.
BIN
libs/x86/Debug/libnatpmp.pdb
Normal file
BIN
libs/x86/Debug/libnatpmp.pdb
Normal file
Binary file not shown.
BIN
libs/x86/Debug/miniupnpc.lib
Normal file
BIN
libs/x86/Debug/miniupnpc.lib
Normal file
Binary file not shown.
BIN
libs/x86/Debug/miniupnpc.pdb
Normal file
BIN
libs/x86/Debug/miniupnpc.pdb
Normal file
Binary file not shown.
BIN
libs/x86/Release/libnatpmp.lib
Normal file
BIN
libs/x86/Release/libnatpmp.lib
Normal file
Binary file not shown.
BIN
libs/x86/Release/libnatpmp.pdb
Normal file
BIN
libs/x86/Release/libnatpmp.pdb
Normal file
Binary file not shown.
BIN
libs/x86/Release/miniupnpc.lib
Normal file
BIN
libs/x86/Release/miniupnpc.lib
Normal file
Binary file not shown.
BIN
libs/x86/Release/miniupnpc.pdb
Normal file
BIN
libs/x86/Release/miniupnpc.pdb
Normal file
Binary file not shown.
49
mish.sln
Normal file
49
mish.sln
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
|
||||||
|
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||||
|
# Visual Studio 15
|
||||||
|
VisualStudioVersion = 15.0.28010.2046
|
||||||
|
MinimumVisualStudioVersion = 10.0.40219.1
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "miss", "miss\miss.vcxproj", "{B71C4E7F-0D92-4E19-BBD2-D33F0EF879B1}"
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mist", "mist\mist.vcxproj", "{8F78D8D2-A837-489C-BAC5-81494C9CEF7A}"
|
||||||
|
EndProject
|
||||||
|
Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "mish", "mish\mish.wixproj", "{F0DEE5F3-4B62-47A3-B00B-61C614C924FD}"
|
||||||
|
EndProject
|
||||||
|
Global
|
||||||
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
|
Debug|x64 = Debug|x64
|
||||||
|
Debug|x86 = Debug|x86
|
||||||
|
Release|x64 = Release|x64
|
||||||
|
Release|x86 = Release|x86
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||||
|
{B71C4E7F-0D92-4E19-BBD2-D33F0EF879B1}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
|
{B71C4E7F-0D92-4E19-BBD2-D33F0EF879B1}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{B71C4E7F-0D92-4E19-BBD2-D33F0EF879B1}.Debug|x86.ActiveCfg = Debug|Win32
|
||||||
|
{B71C4E7F-0D92-4E19-BBD2-D33F0EF879B1}.Debug|x86.Build.0 = Debug|Win32
|
||||||
|
{B71C4E7F-0D92-4E19-BBD2-D33F0EF879B1}.Release|x64.ActiveCfg = Release|x64
|
||||||
|
{B71C4E7F-0D92-4E19-BBD2-D33F0EF879B1}.Release|x64.Build.0 = Release|x64
|
||||||
|
{B71C4E7F-0D92-4E19-BBD2-D33F0EF879B1}.Release|x86.ActiveCfg = Release|Win32
|
||||||
|
{B71C4E7F-0D92-4E19-BBD2-D33F0EF879B1}.Release|x86.Build.0 = Release|Win32
|
||||||
|
{8F78D8D2-A837-489C-BAC5-81494C9CEF7A}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
|
{8F78D8D2-A837-489C-BAC5-81494C9CEF7A}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{8F78D8D2-A837-489C-BAC5-81494C9CEF7A}.Debug|x86.ActiveCfg = Debug|Win32
|
||||||
|
{8F78D8D2-A837-489C-BAC5-81494C9CEF7A}.Debug|x86.Build.0 = Debug|Win32
|
||||||
|
{8F78D8D2-A837-489C-BAC5-81494C9CEF7A}.Release|x64.ActiveCfg = Release|x64
|
||||||
|
{8F78D8D2-A837-489C-BAC5-81494C9CEF7A}.Release|x64.Build.0 = Release|x64
|
||||||
|
{8F78D8D2-A837-489C-BAC5-81494C9CEF7A}.Release|x86.ActiveCfg = Release|Win32
|
||||||
|
{8F78D8D2-A837-489C-BAC5-81494C9CEF7A}.Release|x86.Build.0 = Release|Win32
|
||||||
|
{F0DEE5F3-4B62-47A3-B00B-61C614C924FD}.Debug|x64.ActiveCfg = Debug|x86
|
||||||
|
{F0DEE5F3-4B62-47A3-B00B-61C614C924FD}.Debug|x86.ActiveCfg = Debug|x86
|
||||||
|
{F0DEE5F3-4B62-47A3-B00B-61C614C924FD}.Debug|x86.Build.0 = Debug|x86
|
||||||
|
{F0DEE5F3-4B62-47A3-B00B-61C614C924FD}.Release|x64.ActiveCfg = Release|x86
|
||||||
|
{F0DEE5F3-4B62-47A3-B00B-61C614C924FD}.Release|x86.ActiveCfg = Release|x86
|
||||||
|
{F0DEE5F3-4B62-47A3-B00B-61C614C924FD}.Release|x86.Build.0 = Release|x86
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
|
HideSolutionNode = FALSE
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||||
|
SolutionGuid = {F99E6564-0425-4E77-8927-C2B5AEBE9872}
|
||||||
|
EndGlobalSection
|
||||||
|
EndGlobal
|
69
mish/Product.wxs
Normal file
69
mish/Product.wxs
Normal file
@ -0,0 +1,69 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
|
||||||
|
xmlns:fire="http://schemas.microsoft.com/wix/FirewallExtension">
|
||||||
|
<Product Id="*" Name="Moonlight Internet Streaming Helper" Language="1033" Version="1.0.0.0" Manufacturer="Cameron Gutman" UpgradeCode="cfc2fb53-88e2-4867-851d-9ed9fe7ab2a3">
|
||||||
|
<Package InstallerVersion="500" Compressed="yes" InstallScope="perMachine" />
|
||||||
|
|
||||||
|
<MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
|
||||||
|
<MediaTemplate EmbedCab="yes" />
|
||||||
|
|
||||||
|
<Feature Id="ProductFeature" Title="MISHSetup" Level="1">
|
||||||
|
<ComponentGroupRef Id="ProductComponents" />
|
||||||
|
</Feature>
|
||||||
|
</Product>
|
||||||
|
|
||||||
|
<Fragment>
|
||||||
|
<Directory Id="TARGETDIR" Name="SourceDir">
|
||||||
|
<Directory Id="ProgramFilesFolder">
|
||||||
|
<Directory Id="INSTALLFOLDER" Name="Moonlight Internet Streaming Helper" />
|
||||||
|
</Directory>
|
||||||
|
<Directory Id="ProgramMenuFolder">
|
||||||
|
<Directory Id="ApplicationProgramsFolder" Name="Moonlight Internet Streaming Helper" />
|
||||||
|
</Directory>
|
||||||
|
<Directory Id="CommonAppDataFolder">
|
||||||
|
<Directory Name="MISS" Id="MISSLogFolder" />
|
||||||
|
</Directory>
|
||||||
|
</Directory>
|
||||||
|
</Fragment>
|
||||||
|
|
||||||
|
<Fragment>
|
||||||
|
<ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
|
||||||
|
<Component Id="MISS">
|
||||||
|
<File Source="$(var.miss.TargetPath)" KeyPath="yes">
|
||||||
|
<fire:FirewallException Id="MISSFwException"
|
||||||
|
Scope="any"
|
||||||
|
Name="Moonlight Internet Streaming Service"/>
|
||||||
|
</File>
|
||||||
|
<CreateFolder Directory="MISSLogFolder" />
|
||||||
|
<ServiceInstall Type="ownProcess"
|
||||||
|
Name="MISS"
|
||||||
|
DisplayName="Moonlight Internet Streaming Service"
|
||||||
|
Description="Automatically manages router port forwarding rules required to use Moonlight over the Internet"
|
||||||
|
Start="auto"
|
||||||
|
Account="LocalSystem"
|
||||||
|
ErrorControl="ignore"
|
||||||
|
Interactive="no">
|
||||||
|
<ServiceConfig DelayedAutoStart="no" OnInstall="yes" OnReinstall="yes" />
|
||||||
|
</ServiceInstall>
|
||||||
|
<ServiceControl Id="StartService" Start="install" Stop="both" Remove="uninstall" Name="MISS" Wait="yes" />
|
||||||
|
</Component>
|
||||||
|
<Component Id="MIST">
|
||||||
|
<File Id="MistExe" Source="$(var.mist.TargetPath)" KeyPath="yes">
|
||||||
|
<fire:FirewallException Id="MISTFwException"
|
||||||
|
Scope="any"
|
||||||
|
Name="Moonlight Internet Streaming Tester"/>
|
||||||
|
</File>
|
||||||
|
</Component>
|
||||||
|
<Component Id="Shortcuts" Guid="*">
|
||||||
|
<Shortcut Id="StartMenuShortcut"
|
||||||
|
Name="Moonlight Internet Streaming Tester"
|
||||||
|
Description="Test your configuration for streaming with Moonlight over the Internet"
|
||||||
|
Target="[#MistExe]"
|
||||||
|
Directory="ApplicationProgramsFolder"
|
||||||
|
WorkingDirectory="INSTALLFOLDER" />
|
||||||
|
<RemoveFolder Id="CleanupStartMenuShortcut" Directory="ApplicationProgramsFolder" On="uninstall" />
|
||||||
|
<RegistryValue Root="HKCU" Key="Software\Moonlight Internet Streaming Tester" Name="Installed" Type="integer" Value="1" KeyPath="yes" />
|
||||||
|
</Component>
|
||||||
|
</ComponentGroup>
|
||||||
|
</Fragment>
|
||||||
|
</Wix>
|
61
mish/mish.wixproj
Normal file
61
mish/mish.wixproj
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<PropertyGroup>
|
||||||
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||||
|
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
|
||||||
|
<ProductVersion>3.10</ProductVersion>
|
||||||
|
<ProjectGuid>f0dee5f3-4b62-47a3-b00b-61c614c924fd</ProjectGuid>
|
||||||
|
<SchemaVersion>2.0</SchemaVersion>
|
||||||
|
<OutputName>mish</OutputName>
|
||||||
|
<OutputType>Package</OutputType>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
|
||||||
|
<OutputPath>bin\$(Configuration)\</OutputPath>
|
||||||
|
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
|
||||||
|
<DefineConstants>Debug</DefineConstants>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
|
||||||
|
<OutputPath>bin\$(Configuration)\</OutputPath>
|
||||||
|
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Compile Include="Product.wxs" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\miss\miss.vcxproj">
|
||||||
|
<Name>miss</Name>
|
||||||
|
<Project>{b71c4e7f-0d92-4e19-bbd2-d33f0ef879b1}</Project>
|
||||||
|
<Private>True</Private>
|
||||||
|
<DoNotHarvest>True</DoNotHarvest>
|
||||||
|
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
|
||||||
|
<RefTargetDir>INSTALLFOLDER</RefTargetDir>
|
||||||
|
</ProjectReference>
|
||||||
|
<ProjectReference Include="..\mist\mist.vcxproj">
|
||||||
|
<Name>mist</Name>
|
||||||
|
<Project>{8f78d8d2-a837-489c-bac5-81494c9cef7a}</Project>
|
||||||
|
<Private>True</Private>
|
||||||
|
<DoNotHarvest>True</DoNotHarvest>
|
||||||
|
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
|
||||||
|
<RefTargetDir>INSTALLFOLDER</RefTargetDir>
|
||||||
|
</ProjectReference>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<WixExtension Include="WixFirewallExtension">
|
||||||
|
<HintPath>$(WixExtDir)\WixFirewallExtension.dll</HintPath>
|
||||||
|
<Name>WixFirewallExtension</Name>
|
||||||
|
</WixExtension>
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(WixTargetsPath)" Condition=" '$(WixTargetsPath)' != '' " />
|
||||||
|
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets" Condition=" '$(WixTargetsPath)' == '' AND Exists('$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets') " />
|
||||||
|
<Target Name="EnsureWixToolsetInstalled" Condition=" '$(WixTargetsImported)' != 'true' ">
|
||||||
|
<Error Text="The WiX Toolset v3.11 (or newer) build tools must be installed to build this project. To download the WiX Toolset, see http://wixtoolset.org/releases/" />
|
||||||
|
</Target>
|
||||||
|
<!--
|
||||||
|
To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||||
|
Other similar extension points exist, see Wix.targets.
|
||||||
|
<Target Name="BeforeBuild">
|
||||||
|
</Target>
|
||||||
|
<Target Name="AfterBuild">
|
||||||
|
</Target>
|
||||||
|
-->
|
||||||
|
</Project>
|
BIN
miss/miss.cpp
Normal file
BIN
miss/miss.cpp
Normal file
Binary file not shown.
21
miss/miss.rc
Normal file
21
miss/miss.rc
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
#include <windows.h>
|
||||||
|
#include "version.h"
|
||||||
|
|
||||||
|
VS_VERSION_INFO VERSIONINFO
|
||||||
|
FILEVERSION VER_FILEVERSION
|
||||||
|
BEGIN
|
||||||
|
BLOCK "StringFileInfo"
|
||||||
|
BEGIN
|
||||||
|
BLOCK "040904E4"
|
||||||
|
BEGIN
|
||||||
|
VALUE "CompanyName", VER_COMPANYNAME_STR
|
||||||
|
VALUE "FileDescription", VER_FILEDESCRIPTION_STR
|
||||||
|
VALUE "FileVersion", VER_FILEVERSION_STR
|
||||||
|
END
|
||||||
|
END
|
||||||
|
|
||||||
|
BLOCK "VarFileInfo"
|
||||||
|
BEGIN
|
||||||
|
VALUE "Translation", 0x409, 1252
|
||||||
|
END
|
||||||
|
END
|
175
miss/miss.vcxproj
Normal file
175
miss/miss.vcxproj
Normal file
@ -0,0 +1,175 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<VCProjectVersion>15.0</VCProjectVersion>
|
||||||
|
<ProjectGuid>{B71C4E7F-0D92-4E19-BBD2-D33F0EF879B1}</ProjectGuid>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
<RootNamespace>miss</RootNamespace>
|
||||||
|
<WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<CharacterSet>NotSet</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>NotSet</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<CharacterSet>NotSet</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>NotSet</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="Shared">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<SDLCheck>true</SDLCheck>
|
||||||
|
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ConformanceMode>true</ConformanceMode>
|
||||||
|
<PrecompiledHeaderFile>
|
||||||
|
</PrecompiledHeaderFile>
|
||||||
|
<AdditionalIncludeDirectories>..\libs\include;..\libs\include\miniupnpc;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>..\libs\x86\Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<SDLCheck>true</SDLCheck>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ConformanceMode>true</ConformanceMode>
|
||||||
|
<PrecompiledHeaderFile>
|
||||||
|
</PrecompiledHeaderFile>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<SDLCheck>true</SDLCheck>
|
||||||
|
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ConformanceMode>true</ConformanceMode>
|
||||||
|
<PrecompiledHeaderFile>
|
||||||
|
</PrecompiledHeaderFile>
|
||||||
|
<AdditionalIncludeDirectories>..\libs\include;..\libs\include\miniupnpc;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>..\libs\x86\Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<SDLCheck>true</SDLCheck>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ConformanceMode>true</ConformanceMode>
|
||||||
|
<PrecompiledHeaderFile>
|
||||||
|
</PrecompiledHeaderFile>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="miss.cpp" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ResourceCompile Include="miss.rc" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClInclude Include="version.h" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
32
miss/miss.vcxproj.filters
Normal file
32
miss/miss.vcxproj.filters
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup>
|
||||||
|
<Filter Include="Source Files">
|
||||||
|
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||||
|
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||||
|
</Filter>
|
||||||
|
<Filter Include="Header Files">
|
||||||
|
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
||||||
|
<Extensions>h;hh;hpp;hxx;hm;inl;inc;ipp;xsd</Extensions>
|
||||||
|
</Filter>
|
||||||
|
<Filter Include="Resource Files">
|
||||||
|
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
||||||
|
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
|
||||||
|
</Filter>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="miss.cpp">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ResourceCompile Include="miss.rc">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ResourceCompile>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClInclude Include="version.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
6
miss/version.h
Normal file
6
miss/version.h
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#define VER_COMPANYNAME_STR "Moonlight Game Streaming Project"
|
||||||
|
#define VER_FILEVERSION 1,0,0,0
|
||||||
|
#define VER_FILEVERSION_STR "1.0.0.0\0"
|
||||||
|
#define VER_FILEDESCRIPTION_STR "Moonlight Internet Streaming Service"
|
BIN
mist/mist.cpp
Normal file
BIN
mist/mist.cpp
Normal file
Binary file not shown.
167
mist/mist.vcxproj
Normal file
167
mist/mist.vcxproj
Normal file
@ -0,0 +1,167 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<VCProjectVersion>15.0</VCProjectVersion>
|
||||||
|
<ProjectGuid>{8F78D8D2-A837-489C-BAC5-81494C9CEF7A}</ProjectGuid>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
<RootNamespace>mist</RootNamespace>
|
||||||
|
<WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<CharacterSet>NotSet</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>NotSet</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="Shared">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<LinkIncremental>true</LinkIncremental>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<LinkIncremental>false</LinkIncremental>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<SDLCheck>true</SDLCheck>
|
||||||
|
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ConformanceMode>true</ConformanceMode>
|
||||||
|
<PrecompiledHeaderFile>
|
||||||
|
</PrecompiledHeaderFile>
|
||||||
|
<AdditionalIncludeDirectories>..\libs\include;..\libs\include\miniupnpc;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>..\libs\x86\Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<SDLCheck>true</SDLCheck>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ConformanceMode>true</ConformanceMode>
|
||||||
|
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<SDLCheck>true</SDLCheck>
|
||||||
|
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ConformanceMode>true</ConformanceMode>
|
||||||
|
<PrecompiledHeaderFile>
|
||||||
|
</PrecompiledHeaderFile>
|
||||||
|
<AdditionalIncludeDirectories>..\libs\include;..\libs\include\miniupnpc;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<AdditionalLibraryDirectories>..\libs\x86\Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<SDLCheck>true</SDLCheck>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ConformanceMode>true</ConformanceMode>
|
||||||
|
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="mist.cpp" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
22
mist/mist.vcxproj.filters
Normal file
22
mist/mist.vcxproj.filters
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup>
|
||||||
|
<Filter Include="Source Files">
|
||||||
|
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||||
|
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||||
|
</Filter>
|
||||||
|
<Filter Include="Header Files">
|
||||||
|
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
||||||
|
<Extensions>h;hh;hpp;hxx;hm;inl;inc;ipp;xsd</Extensions>
|
||||||
|
</Filter>
|
||||||
|
<Filter Include="Resource Files">
|
||||||
|
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
||||||
|
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
|
||||||
|
</Filter>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="mist.cpp">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
Loading…
x
Reference in New Issue
Block a user