miniupnp/miniupnpc
Thomas Bernard e6ed3c5b8a do not stop discovery on sendto() failure 2017-03-13 15:33:38 +01:00
..
java changes java sample according to change of upnpDiscover() 2015-09-04 18:15:07 +02:00
man3 Allow user to explicitly specify local (source) port 2015-05-12 19:05:48 -04:00
msvc miniupnpc: update MSVC project file 2015-09-18 18:12:19 +02:00
testdesc miniupnpc: Add linksys_WAG200G_desc.xml to test 2014-11-26 12:39:43 +01:00
testreplyparse miniupnpc: added test cases for XML parsing 2014-01-27 16:27:51 +01:00
.gitignore update .gitignore for win32 files 2016-12-30 16:42:33 +01:00
CMakeLists.txt Fix cmake file so project can be used as a subproject 2016-08-26 00:12:19 +02:00
Changelog.txt miniupnpc: update Changelog.txt and 2015=>2016 2016-12-16 09:59:10 +01:00
LICENSE 2015 => 2016 2016-10-06 15:51:07 +03:30
MANIFEST.in Added miniupnpc 2011-09-27 22:25:35 +02:00
Makefile connecthostport.c: fix compilation with -DNO_GETADDRINFO 2017-03-13 14:34:16 +01:00
Makefile.mingw build listdevices.exe with mingw32 2016-01-17 19:33:13 +01:00
README miniupnpc: update README 2016-04-19 22:58:48 +02:00
VERSION miniupnpd & miniupnpc version 2.0 2016-04-19 23:17:29 +02:00
apiversions.txt miniupnpc: change miniwget to return HTTP status code 2016-01-24 18:30:41 +01:00
codelength.h miniupnpc: update getDevicesFromMiniSSDPD() to process longer minissdpd responses 2015-06-16 17:33:59 +02:00
connecthostport.c connecthostport.c: fix compilation with -DNO_GETADDRINFO 2017-03-13 14:34:16 +01:00
connecthostport.h Rename all include guards to not clash with C99 (7.1.3 Reserved identifiers). 2012-09-20 17:52:51 -03:00
external-ip.sh Added miniupnpc 2011-09-27 22:25:35 +02:00
igd_desc_parse.c igd_desc_parse.c: fix buffer overflow 2015-09-15 15:32:33 +02:00
igd_desc_parse.h igd_desc_parse.c: define printIGD() only in DEBUG 2014-11-17 20:32:41 +01:00
listdevices.c Merge branch 'master' into local_port 2015-10-08 17:42:45 +02:00
mingw32make.bat Added miniupnpc 2011-09-27 22:25:35 +02:00
minihttptestserver.c miniupnpc: update Changelog.txt and 2015=>2016 2016-12-16 09:59:10 +01:00
minisoap.c minisoap.c: make soapPostSubmit() return -1 for errors 2015-10-26 11:27:10 +01:00
minisoap.h Rename all include guards to not clash with C99 (7.1.3 Reserved identifiers). 2012-09-20 17:52:51 -03:00
minissdpc.c do not stop discovery on sendto() failure 2017-03-13 15:33:38 +01:00
minissdpc.h Merge branch 'master' into local_port 2015-10-08 17:42:45 +02:00
miniupnpc.c miniupnpc: change miniwget to return HTTP status code 2016-01-24 18:30:41 +01:00
miniupnpc.def Dynamic build fails 2014-07-29 11:07:43 -04:00
miniupnpc.h miniupnpd & miniupnpc version 2.0 2016-04-19 23:17:29 +02:00
miniupnpc_declspec.h miniupnpc: renamed declspec.h in order to avoid conflicts 2015-07-21 12:39:40 +02:00
miniupnpcmodule.c initialize Winsock in python module 2016-12-28 10:16:47 +01:00
miniupnpcstrings.h.cmake miniupnpc: use #define UPNP_VERSION_STRING "UPnP/1.1" 2014-11-05 06:34:51 +01:00
miniupnpcstrings.h.in miniupnpc: use #define UPNP_VERSION_STRING "UPnP/1.1" 2014-11-05 06:34:51 +01:00
miniupnpctypes.h Rename all include guards to not clash with C99 (7.1.3 Reserved identifiers). 2012-09-20 17:52:51 -03:00
miniwget.c remove warning: variable 'reason_phrase_len' set but not used 2016-11-11 12:35:59 +01:00
miniwget.h miniupnpc: change miniwget to return HTTP status code 2016-01-24 18:30:41 +01:00
minixml.c minixml.c: now handle XML comments 2014-02-03 11:28:31 +01:00
minixml.h Rename all include guards to not clash with C99 (7.1.3 Reserved identifiers). 2012-09-20 17:52:51 -03:00
minixmlvalid.c Check malloc/calloc return values 2015-07-15 18:10:10 +02:00
portlistingparse.c miniupnpc: update Changelog.txt and 2015=>2016 2016-12-16 09:59:10 +01:00
portlistingparse.h miniupnpc: renamed declspec.h in order to avoid conflicts 2015-07-21 12:39:40 +02:00
pymoduletest.py Support of older Python 2. 2015-10-25 19:49:03 +01:00
pymoduletest3.py pymoduletest3.py: python3 version of the test program 2015-02-16 22:59:13 +01:00
receivedata.c compilation fix 2015-11-17 10:08:34 +01:00
receivedata.h Rename all include guards to not clash with C99 (7.1.3 Reserved identifiers). 2012-09-20 17:52:51 -03:00
setup.py chmod +x setup*.py 2015-10-25 19:52:54 +01:00
setupmingw32.py chmod +x setup*.py 2015-10-25 19:52:54 +01:00
testigddescparse.c miniupnpc: mem leaks fixes. 2015-07-30 01:10:03 +02:00
testminiwget.c miniupnpc: change miniwget to return HTTP status code 2016-01-24 18:30:41 +01:00
testminiwget.sh miniupnpc/testminiwget.sh: fix for OS X mktemp 2015-09-04 17:47:11 +02:00
testminixml.c igd_desc_parse.c: define printIGD() only in DEBUG 2014-11-17 20:32:41 +01:00
testportlistingparse.c miniupnpc: remove bsdqueue.h 2014-11-01 11:41:31 +01:00
testupnpigd.py Add python 3 compatibility to IGD test 2016-10-11 21:14:04 +02:00
testupnpreplyparse.c fix miniupnpc/testupnpreplyparse.c 2014-01-27 16:29:35 +01:00
testupnpreplyparse.sh miniupnpc: validate upnpreplyparse.c code with "make check" 2013-05-14 23:09:42 +02:00
updateminiupnpcstrings.sh Added miniupnpc 2011-09-27 22:25:35 +02:00
upnpc.c AddPortMapping() now returns an error code 2017-02-15 00:01:41 -06:00
upnpcommands.c fix potential mem leaks in upnpcommands.c 2017-01-09 10:18:16 +01:00
upnpcommands.h miniupnpc: renamed declspec.h in order to avoid conflicts 2015-07-21 12:39:40 +02:00
upnpdev.c miniupnpc: update Changelog / dependencies / comments 2015-08-28 14:23:38 +02:00
upnpdev.h miniupnpc: update Changelog / dependencies / comments 2015-08-28 14:23:38 +02:00
upnperrors.c Add support for IGD2 AddAnyPortMapping and DeletePortMappingRange 2014-05-13 21:50:07 +01:00
upnperrors.h miniupnpc: renamed declspec.h in order to avoid conflicts 2015-07-21 12:39:40 +02:00
upnpreplyparse.c miniupnpc: Check malloc/calloc return values 2015-07-15 14:48:57 +02:00
upnpreplyparse.h remove need of sys/queue.h or bsdqueue.h in upnpreplyparse.c/.h 2014-10-27 17:38:26 +01:00
wingenminiupnpcstrings.c fix realloc failure issues detected thanks to cppcheck 2015-02-08 10:23:22 +01:00

README

Project: miniupnp
Project web page: http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/
github: https://github.com/miniupnp/miniupnp
freecode: http://freecode.com/projects/miniupnp
Author: Thomas Bernard
Copyright (c) 2005-2016 Thomas Bernard
This software is subject to the conditions detailed in the
LICENSE file provided within this distribution.


* miniUPnP Client - miniUPnPc *

To compile, simply run 'gmake' (could be 'make' on your system).
Under win32, to compile with MinGW, type "mingw32make.bat".
MS Visual C solution and project files are supplied in the msvc/ subdirectory.

The compilation is known to work under linux, FreeBSD,
OpenBSD, MacOS X, AmigaOS and cygwin.
The official AmigaOS4.1 SDK was used for AmigaOS4 and GeekGadgets for AmigaOS3.
upx (http://upx.sourceforge.net) is used to compress the win32 .exe files.

To install the library and headers on the system use :
> su
> make install
> exit

alternatively, to install into a specific location, use :
> INSTALLPREFIX=/usr/local make install

upnpc.c is a sample client using the libminiupnpc.
To use the libminiupnpc in your application, link it with
libminiupnpc.a (or .so) and use the following functions found in miniupnpc.h,
upnpcommands.h and miniwget.h :
- upnpDiscover()
- UPNP_GetValidIGD()
- miniwget()
- parserootdesc()
- GetUPNPUrls()
- UPNP_* (calling UPNP methods)

Note : use #include <miniupnpc/miniupnpc.h> etc... for the includes
and -lminiupnpc for the link

Discovery process is speeded up when MiniSSDPd is running on the machine.


* Python module *

you can build a python module with 'make pythonmodule'
and install it with 'make installpythonmodule'.
setup.py (and setupmingw32.py) are included in the distribution.


Feel free to contact me if you have any problem :
e-mail : miniupnp@free.fr

If you are using libminiupnpc in your application, please
send me an email !

For any question, you can use the web forum :
http://miniupnp.tuxfamily.org/forum/

Bugs should be reported on github :
https://github.com/miniupnp/miniupnp/issues