Commit Graph

596 Commits

Author SHA1 Message Date
Tengiz Sharafiev 530b272350
Modernize and cleanup CMakeLists.txt
[Effective Modern CMake](https://gist.github.com/mbinna/c61dbb39bca0e4fb7d1f73b0d66a4fd1)

- Set the minimum required version for CMake to 3.5
- Added `UPNPC_BUILD_SAMPLE` option for building sample client application (upnpc.c)
- Added interface target library `miniupnpc-private` for common settings like compile
  definitions, flags and include directories. It helps to keep global scope clean.
  https://cmake.org/cmake/help/v3.11/manual/cmake-buildsystem.7.html#interface-libraries
- Replaced `-fPIC` compile option with `POSITION_INDEPENDENT_CODE` target property
  https://cmake.org/cmake/help/v3.11/prop_tgt/POSITION_INDEPENDENT_CODE.html#prop_tgt:POSITION_INDEPENDENT_CODE
- Set usage requirements for `libminiupnpc-*` targets for more convenient
  usage through `add_subdirectory()` (as cmake subproject)
  https://cmake.org/cmake/help/v3.11/manual/cmake-buildsystem.7.html#build-specification-and-usage-requirements
- Removed old and outdated code from CMakeLists.txt
2018-04-27 21:38:25 +07:00
Thomas Bernard b7e1b2ef09 miniupnpc/miniupnpcmodule.c: small fix 2018-04-26 22:27:05 +02:00
Thomas Bernard 9663c55c61 miniupnpc/Makefile.mingw: Support cross compiling for Ming32
fixes #293
2018-04-26 22:13:06 +02:00
Thomas Bernard 9d569438d3 update MS VS 2010 project files 2018-04-20 16:34:44 +02:00
Thomas Bernard 154d27c773 miniupnpc/upnpc.c: 2017=>2018 2018-04-20 16:34:42 +02:00
Thomas Bernard 0d0b4d2372 .gitignore: add miniupnpc.pc 2018-04-10 09:47:18 +02:00
Thomas Bernard f8acab6d38 miniupnpc: increments API_VERSION to 17 2018-04-06 12:48:24 +02:00
Thomas Bernard 284db0bb49 miniupnpc: use SOCKET type instead of int for copilation under Win64
see #289
2018-04-06 12:21:36 +02:00
Thomas Bernard a4af4a66b2 miniupnpc: cleanup includes in upnpcommands.h
see #289
2018-03-14 00:36:12 +01:00
Thomas Bernard 8945a6ee15 miniupnpc/miniwget.c: remove useless test
see #289
2018-03-14 00:23:10 +01:00
Thomas Bernard ce2673118d miniupnpc: disable call to MiniSSDPd when -m option is used
fixes #269
2018-02-22 15:58:25 +01:00
Thomas Bernard 90b8f3711c miniupnpc: add miniupnpc.pc for pkg-config
fixes #281
2018-02-22 15:31:34 +01:00
Thomas Bernard a752cf30b5 Add project files for MS Visual Studio 2010 2018-02-17 18:06:57 +01:00
Thomas BERNARD 348e5c405a Fix Makefile for GNU make 3.80
"else ifeq" on the same line is not compatible with GNU Make 3.80
2018-02-03 18:29:35 +01:00
yangfl 2b0a6dd163 Makefile: Use crosscompile target as OS 2018-02-03 11:29:58 +08:00
yangfl b40e6e4eb6 miniupnpc: fix typo 2018-02-03 01:12:45 +08:00
Thomas Bernard 718deea11e Update file headers. 2017 => 2018 etc. 2018-01-16 02:06:46 +01:00
Thomas Bernard 34ac268fc2 minihttptestserver: int => size_t when possible 2018-01-15 17:39:08 +01:00
yangfl d492fa39ef fix typo 2018-01-09 09:33:31 +08:00
Thomas Bernard 37d54ed207 miniupnpc: update Changelog.txt 2017-12-12 12:27:05 +01:00
Thomas Bernard 377cef2dc8 upnpreplyparse.c: NameValueParserEndElt() rename arg to avoid confusion 2017-12-12 12:21:38 +01:00
Thomas Bernard 1f5ca16931 miniupnpc: improve testupnpreplyparse 2017-12-12 11:07:09 +01:00
Thomas Bernard a0573e2518 minixml.c: fix heap buffer overflow
should fix #268
2017-12-11 14:59:29 +01:00
Thomas Bernard 7aeb624b44 properly initialize data structure for SOAP parsing in ParseNameValue()
topelt field was not properly initialized.

should fix #268
2017-12-11 14:27:27 +01:00
Thomas Bernard b4bbee1df9 testminiwget.sh: test IPV6 availability 2017-11-02 18:24:08 +01:00
Thomas Bernard 6600c52b67 testminiwget.sh: display network confing in case of error 2017-11-02 18:11:29 +01:00
Thomas Bernard dfb3115bc3 minihttptestserver.c: fix minor warning in build_favicon_content() 2017-11-02 18:01:57 +01:00
Thomas Bernard 38a20e4849 testminiwget.sh: don't get stuck if the http test server does not starts 2017-11-02 17:53:33 +01:00
Thomas Bernard 7848d799a4 Merge remote-tracking branch 'raspopov/patch-2' 2017-09-29 11:16:20 +02:00
DQ 4afc0edbe3 Update external-ip.sh, only output on success
change sed pattern to only match when GetExternalIPAaddress succeeds and output nothing if it fails

$ upnpc -s | grep ExternalIPAddress | sed 's/[^0-9\.]//g'
.3
$ upnpc -s | grep ExternalIPAddress 
GetExternalIPAddress failed. (errorcode=-3)
$ upnpc -s | sed -n -e 's/^ExternalIPAddress = \([0-9.]*\)$/\1/p'
$
2017-09-28 15:14:22 -07:00
Nikolay Raspopov 1ffb2ea580 Fixed incompatible types (from 'int *' to 'const char *') warning #2
https://msdn.microsoft.com/en-us/library/windows/desktop/ms738574(v=vs.85).aspx
2017-09-18 20:27:10 +03:00
Dmytro Milinevskyy 74c6ab5a46 cli:py: do not ship binaries in sdist
#252
2017-08-25 16:06:26 +02:00
Dmytro Milinevskyy 587f33c3c9 py: include version file in the package file 2017-08-08 19:55:24 +02:00
Thomas Bernard a5f3436cfd Merge remote-tracking branch 'niamster/master' 2017-07-19 20:07:02 +02:00
Thomas Bernard d40e9a9f52 allow setup.py to call another make executable that 'make'
closes #246
2017-07-19 19:44:30 +02:00
Dmytro Milinevskyy a677dccc4d miniupnpc:py: allow desc and remote to be None for addportmapping and addanyportmapping 2017-07-19 13:44:26 +02:00
Dmytro Milinevskyy ae0c3489bf miniupnpc:py: build libminiupnpc.a 2017-07-18 13:00:28 +02:00
Thomas Bernard d13f840a4a =>2017. http => https 2017-07-06 00:03:12 +02:00
Thomas Bernard 04d1e4e3f5 miniupnpc: Add MS VS 2015 solution/project files 2017-06-20 11:45:27 +02:00
Sean Li 1988b54fec Fix issue in CMakeLists.txt.
CMAKE_COMPILER_IS_GNUC should be CMAKE_COMPILER_IS_GNUCC.
2017-06-12 19:13:18 +08:00
Thomas Bernard 15cd905f6f => 2017
also http://miniupnp.tuxfamily.org => HTTPS
2017-05-26 17:27:20 +02:00
Thomas Bernard f0f1f4b22d miniupnpc: Fix CVE-2017-8798
Thanks to tin/Team OSTStrom
2017-05-09 12:00:47 +02:00
Thomas Bernard 086c387924 miniwget.c: use sizeof(buf) 2017-05-05 12:46:09 +02:00
Matthieu Nottale af5c091002 Send error logs to stderr. 2017-04-21 11:25:49 +02:00
Thomas Bernard e6ed3c5b8a do not stop discovery on sendto() failure 2017-03-13 15:33:38 +01:00
Thomas Bernard d36853118e connecthostport.c: fix compilation with -DNO_GETADDRINFO 2017-03-13 14:34:16 +01:00
Darexon 2c262a8793 AddPortMapping() now returns an error code 2017-02-15 00:01:41 -06:00
Thomas Bernard 8c9ce4dbb4 make sure no unitialized memory is accessed in the sockaddr_un structure 2017-01-09 10:18:16 +01:00
Thomas Bernard c8b42602a2 fix potential mem leaks in upnpcommands.c
fixes #225
2017-01-09 10:18:16 +01:00
Thomas Bernard e7068a7d34 LDLIBS, not LDFLAGS :) 2016-12-30 20:07:59 +01:00
Thomas Bernard b433902c02 update .gitignore for win32 files 2016-12-30 16:42:33 +01:00
Thomas Bernard 9e73075752 initialize Winsock in python module
fixes #221
2016-12-28 10:16:47 +01:00
Thomas Bernard 6bbdb817f7 miniupnpc: update Changelog.txt and 2015=>2016 2016-12-16 09:59:10 +01:00
Thomas Bernard 0aa7c46227 remove unsigned/signed comparison 2016-11-11 17:53:21 +01:00
Thomas Bernard ec1c49bb0c check strlen before memcmp
1st try to fix #220
2016-11-11 17:24:39 +01:00
Thomas Bernard d33e1be3a8 avoid useless setsockopt() under solaris
fixes #218
2016-11-11 10:14:14 -05:00
Thomas Bernard c39dda549d better error msg for setsockopt() calls 2016-11-11 10:13:48 -05:00
Thomas Bernard edc1974126 pid_t is not int.. 2016-11-11 08:54:24 -05:00
Thomas Bernard 2dcdf7749f enable extensions when compiling under Solaris 2016-11-11 08:54:07 -05:00
Thomas Bernard 960f8666e8 remove warning: variable 'reason_phrase_len' set but not used
when DEBUG is disabled
also
warning: variable 'reason_phrase' set but not used
2016-11-11 12:35:59 +01:00
Thomas Bernard 6c3e21352e remove -fPIC with CYGWIN
remove "warning: -fPIC ignored for target (all code is position independent)"

fixes #217
2016-11-11 12:31:25 +01:00
Thomas Bernard 71ce1d6dfa fix for Solaris 11 compilation
see #216
2016-11-10 21:55:33 +01:00
Sylvain Pelissier 7db2ae5cdd Add python 3 compatibility to IGD test 2016-10-11 21:14:04 +02:00
Thomas Bernard 1579f4a2af 2015 => 2016 2016-10-07 11:16:03 +02:00
Thomas Bernard 3b2fe1c3e7 Merge remote-tracking branch 'ifarbod/patch-1' 2016-10-07 10:54:09 +02:00
iFarbod cc9639d597 2015 => 2016 2016-10-06 15:51:07 +03:30
Yann GARRAS 3f0bcbf7b5 RemoveRedirect() now return an error code
fixes #210
2016-09-23 17:22:45 +02:00
Thomas Bernard a4916a4c94 SetRedirectAndTest() now return an error code
fixes #210
2016-09-22 22:02:00 +02:00
Thomas Bernard dadbc62f80 Merge remote-tracking branch 'kingduckz/master' 2016-09-05 13:27:18 +02:00
Stefan Hertenberger 00121e9830 add NetBSD support 2016-09-03 09:34:15 +02:00
King_DuckZ 69d70d6721 Fix cmake file so project can be used as a subproject 2016-08-26 00:12:19 +02:00
Thomas Bernard 5f34c62ce3 CMake : use LINK_PRIVATE instead of PRIVATE for compatibility with older versions 2016-06-26 21:07:43 +02:00
Thomas BERNARD 4af956a393 update CMakeLists.txt to build upnpc-static/upnpc-shared executables 2016-06-26 14:19:38 +02:00
Thomas BERNARD f8e3f6fcd6 tab->spaces 2016-06-26 14:19:18 +02:00
Thomas BERNARD 2d20c05935 fix CMakeLists.txt for Darwin/FreeBSD
see d6700c5d 6728b129 and 3fc23c3b
2016-06-26 10:51:07 +02:00
Thomas Bernard 1337158fcf miniupnpd & miniupnpc version 2.0 2016-04-19 23:17:29 +02:00
Thomas Bernard 413db201fe miniupnpc: update README 2016-04-19 22:58:48 +02:00
Thomas Bernard dc9eb0df1c remove useless check
see http://miniupnp.tuxfamily.org/forum/viewtopic.php?t=1834
2016-03-07 09:59:06 +01:00
Thomas Bernard c4991916e5 miniupnpc: change miniwget to return HTTP status code
increments API_VERSION to 16
2016-01-24 18:30:41 +01:00
Thomas Bernard d274456d07 UPNP_GetValidIGD() checks external ip address = 0.0.0.0
(or empty string)
2016-01-24 17:38:40 +01:00
Thomas Bernard 4f0e9d20e5 fix previous commit d1243e157d 2016-01-22 17:12:48 +01:00
Thomas Bernard d1243e157d parse HTTP response status line in miniwget.c 2016-01-22 16:53:19 +01:00
Thomas Bernard 2808e5c1c8 upnpc.c: do not use uninitialized bytes 2016-01-22 16:52:18 +01:00
Thomas Bernard cf9a2940e6 2015=>2016 2016-01-22 15:22:23 +01:00
Thomas Bernard 99c7aeef4d Improve UPNPIGD_IsConnected() to check if WAN address is not private. 2016-01-22 15:22:01 +01:00
Thomas Bernard 2e30127cee 2016 ! 2016-01-17 19:36:29 +01:00
Thomas Bernard 02e64e9f85 build listdevices.exe with mingw32 2016-01-17 19:33:13 +01:00
Thomas Bernard 5a284d6b21 fix previous commit. Win32 doesn't have SIOCGIFETADDR 2016-01-17 19:32:05 +01:00
Thomas Bernard aaecdd4190 allow to use interface name for multicast if with *BSD
use SIOCGIFADDR to get interface IP

TODO : check how it works under Win32 ...
2016-01-17 18:49:41 +01:00
Thomas Bernard 6e8fda2358 fix previous commit 53804c3db
allow calling UPNP_GetValidIGD() with lanaddr=NULL
2015-12-11 17:48:43 +01:00
Denis Leroy 53804c3db3 Fix bug in returning IGD LAN address 2015-12-11 16:59:38 +01:00
Thomas Bernard ba05a5aefe compilation fix 2015-11-17 10:08:34 +01:00
Thomas Bernard 87fbbd0e5b define INADDR_LOOPBACK when needed
fixes #161
2015-11-17 10:08:01 +01:00
Thomas Bernard be9ab60dea 2014=>2015 :) 2015-11-05 12:36:33 +01:00
Thomas Bernard 372ad64bb5 update Changelog.txt files 2015-11-05 12:04:26 +01:00
Thomas Bernard 3c18a3ef02 Merge branch '2015_10_strprintf_fixes'
see PR #157 : String handling fixes
2015-10-26 11:46:41 +01:00
Thomas Bernard 06417600f8 miniupnpc.c: simpleUPnPcommand2() C++ => C comments
also reindentation, move declaration of soapbodylen up
vim stuff :)
2015-10-26 11:44:40 +01:00
Thomas Bernard 899ccb9575 ssdpDiscoverDevices() set error 2015-10-26 11:35:09 +01:00
Thomas Bernard bbbbb0c95a minisoap.c: make soapPostSubmit() return -1 for errors 2015-10-26 11:27:10 +01:00
Thomas Bernard cc3eefd912 still trying to fix stuff for appveyor
https://ci.appveyor.com/project/miniupnp/miniupnp
2015-10-26 11:04:47 +01:00
Thomas Bernard 42461f4e41 I don't know what is wrong with appveyor, this is another try to get things working 2015-10-26 10:48:45 +01:00
Thomas BERNARD 53367cf85a fix/update Makefile so it is possible to build universal binaries on OS X
use such commandline :
LDFLAGS="-arch ppc64 -arch ppc -mmacosx-version-min=10.4" CFLAGS="-arch ppc64 -arch ppc" make
2015-10-25 22:24:33 +01:00
Wladimir J. van der Laan fb02299fff More accurate checking while writing buffer in simpleUPnPcommand2
Account exactly for bytes when building buffer in simpleUPnPcommand2.
The margin of 100 is not guaranteed to always be enough. When long
parameters are passed in, it was possible to overflow the buffer.
2015-10-25 21:48:00 +01:00
Wladimir J. van der Laan 4c90b87ce3 Check snprintf result
Verify that the buffer size was large enough to write the output,
raise an error condition if not.
2015-10-25 21:13:23 +01:00
Thomas BERNARD f4b173d3b9 chmod +x setup*.py
+ add a few python build dir to .gitignore
2015-10-25 19:52:54 +01:00
Thomas BERNARD 121e1be10b Support of older Python 2.
tested with Python 2.3.5 under OS X 10.4.11
2015-10-25 19:49:03 +01:00
Thomas Hipp 3c78e9c78c miniupnpc: fix while-loop condition 2015-10-09 15:18:08 +02:00
Thomas Bernard 128c8ba7e8 PORT => SSDP_PORT 2015-10-08 18:08:43 +02:00
Thomas Bernard 45a4347809 increments API_VERSION to 15 2015-10-08 17:59:55 +02:00
Thomas Bernard f407d5a7ee formatting 2015-10-08 17:48:04 +02:00
Thomas Bernard d4af610c51 Merge branch 'master' into local_port
Conflicts:
	miniupnpc/miniupnpc.c
	miniupnpc/miniupnpc.h
	miniupnpc/miniupnpcmodule.c
	miniupnpc/upnpc.c
2015-10-08 17:42:45 +02:00
Thomas Bernard be410fded8 2014 => 2015 2015-10-08 17:01:12 +02:00
Thomas BERNARD 3fc23c3b88 fix miniupnpc compilation under OS X 10.4 (darwin 8) 2015-10-01 23:37:05 +02:00
Thomas Bernard 85d43c6e96 Mention a buffer overflow vulnerability in Changelog.txt
Credit : "Discovered by Aleksandar Nikolic of Cisco Talos"
2015-10-01 11:26:58 +02:00
Thomas Bernard 146164a5ca Merge remote-tracking branch 'rat4/patch' 2015-09-20 17:32:04 +02:00
Pavel Vasin 7a99b7c1d1 miniupnpc/CMakeLists.txt: add new source files 2015-09-19 02:15:31 +03:00
Thomas Bernard d8dc8ff95b miniupnpc: update MSVC project file 2015-09-18 18:12:19 +02:00
Thomas Bernard 6092fdb4f8 miniupnpc: fix Win32 build, both MinGW and MSVC 2015-09-18 18:11:56 +02:00
Pavel Vasin 1315c47353 install upnpdev.h
It's required by miniupnpc.h
2015-09-18 04:43:30 +03:00
Pavel Vasin 3a6e41f516 miniupnpc/CMakeLists.txt: fix missed renaming of declspec.h 2015-09-16 18:59:12 +03:00
Thomas Bernard d2d913e304 minissdpc.c: remove "comparaison btw signed and unsigned" Warnings 2015-09-16 14:55:42 +02:00
Thomas Bernard f6d84e6705 fix a few warnings (WIN32) 2015-09-16 00:31:34 +02:00
Thomas Bernard b7b8711dd2 iphlpapi.h is needed for Win32 2015-09-16 00:19:43 +02:00
Thomas Bernard c4df1c9e83 try to fix win32/MinGW link 2015-09-16 00:12:43 +02:00
Thomas Bernard e1344f74aa removed unused variable under win32 2015-09-16 00:12:35 +02:00
Thomas Bernard 92294994a1 Makefile.mingw: add upnpdev.c / minissdpc.c 2015-09-16 00:08:52 +02:00
Thomas Bernard c9af50b644 Makefile.mingw: fix dependencies 2015-09-16 00:01:54 +02:00
Thomas Bernard 79cca974a4 igd_desc_parse.c: fix buffer overflow 2015-09-15 15:32:33 +02:00
Thomas Bernard e5ed3a7019 miniupnpc/Makefile: improve readability 2015-09-04 18:15:15 +02:00
Thomas Bernard 3b417915cb miniupnpc: jnaerator-0.11 => jnaerator-0.12 2015-09-04 18:15:07 +02:00
Thomas Bernard b6668e628d changes java sample according to change of upnpDiscover()
should have been included in 1da63faa4f
2015-09-04 18:15:07 +02:00
Thomas Bernard 26960a8a25 miniupnpc/testminiwget.sh: fix for OS X mktemp 2015-09-04 17:47:11 +02:00
Thomas Bernard 46f4679508 miniupnpc.c: clean #define's 2015-09-04 17:37:11 +02:00
Thomas Bernard 6728b12965 dont define _XOPEN_SOURCE with FreeBSD 2015-09-04 12:16:16 +02:00
Thomas Bernard 2889f0a6ca miniupnpc: don't compile with -ansi 2015-09-04 10:22:34 +02:00
Thomas Bernard d6700c5d1f _XOPEN_SOURCE=600 instead of _POSIX_C_SOURCE=200112L 2015-08-31 00:10:33 +02:00
Thomas Bernard f68edea0fa miniupnpc/minissdpc.c: tries to fix compilation issue with FreeBSD 10.2
see #151
2015-08-29 11:05:32 +02:00
Thomas Bernard b7654b557f comments / param.h 2015-08-28 14:32:14 +02:00
Thomas Bernard e5eabdb3d7 strncasecmp for WIN32 2015-08-28 14:29:20 +02:00
Thomas Bernard ead5afaaeb miniupnpc: update Changelog / dependencies / comments 2015-08-28 14:23:38 +02:00
Thomas Bernard 2400d2f8d2 Merge branch 'refact_ssdpc'
Conflicts:
	miniupnpc/miniupnpc.c

was because of aba8c3f3d7
2015-08-27 22:29:53 +02:00
Thomas Bernard d0c8154d74 miniupnpc.c: add minissdpd and discovered devices list 2015-08-27 22:22:35 +02:00
Thomas Bernard cdccc0290d minissdpc.c: avoid unix socket leak in getDevicesFromMiniSSDPD() 2015-08-27 10:03:22 +02:00
Thomas Bernard aba8c3f3d7 miniupnpc.c: use unsigned long for IP_MULTICAST_TTL with win32
fixes 1da63faa4f for win32
2015-08-26 18:47:27 +02:00
Thomas Bernard cdb23ff377 python module: change UPnP_discover() invocation
fixes #148
2015-08-17 16:22:03 +02:00
Thomas Bernard fd8e8e7593 miniupnpc: Also accept "Up" as ConnectionStatus value 2015-08-16 22:10:48 +02:00
Konstantin Tokarev a95c501959 Use MINISSDPC_* error codes instead of UPNPDISCOVER_*. 2015-08-04 14:15:56 +03:00
Konstantin Tokarev 353f101655 Moved SSDP discovery code into minissdpc.c 2015-08-03 20:09:26 +03:00
Konstantin Tokarev fd65c0a9df Moved UPNPDev definition to separate header. 2015-08-03 20:09:26 +03:00
Thomas Bernard b55ecd70ef miniupnpc: mem leaks fixes. 2015-07-30 01:10:03 +02:00
Thomas Bernard d9b25c25c0 miniupnpc: declspec.h => miniupnpc_declspec.h 2015-07-30 00:03:58 +02:00
Thomas Bernard 1da63faa4f miniupnpc: add ttl argument to upnpDiscover() functions
increments API_VERSION to 14
2015-07-23 22:44:37 +02:00
Thomas Bernard 20efc8f03e 2015 2015-07-23 22:44:03 +02:00
Thomas Bernard 507c664706 miniupnpc/Changelog.txt: update 2015-07-23 19:16:20 +02:00
Konstantin Tokarev 7ccbdb6511 Report more error kinds from minissdpc functions. 2015-07-23 16:23:39 +03:00
Konstantin Tokarev f29b026f38 Use /var/run/minissdpd.sock as default socketpath in connectToMiniSSDPD(). 2015-07-23 16:22:54 +03:00
Konstantin Tokarev cffba15387 Split getDevicesFromMiniSSDPD into 4 steps to allow reuse of local socket.
It allows allows client application to use event loop instead of blocking
in read() while waiting for server reply.
2015-07-23 16:22:23 +03:00
Konstantin Tokarev 2c56ffceeb Fixed typo in setsockopt invocation which sets TTL. 2015-07-23 12:40:42 +03:00
Thomas Bernard af2ec81f14 Merge branch 'read_usn' 2015-07-22 23:50:44 +02:00
Thomas Bernard 963eefcae5 miniupnpc.c: dont break if USN is not set
USN is mandatory, but don't break if the packet don't follow the standard and misses USN: header
2015-07-22 23:46:44 +02:00
Thomas Bernard bfc7c4f042 listdevices.c: print both ST: and USN: 2015-07-22 23:37:40 +02:00
Thomas Bernard 151b16a1ed miniupnpc.c: set multicast TTL to 2 by default 2015-07-22 15:00:01 +02:00
Konstantin Tokarev eb74f5c886 Read USN from SSDP messages. 2015-07-22 12:08:52 +03:00
Thomas Bernard d456889b52 miniupnpc: renamed declspec.h in order to avoid conflicts 2015-07-21 12:39:40 +02:00
Thomas Bernard 5aa2181336 testigddescparse.c: check fread() return value 2015-07-21 12:02:10 +02:00
Thomas Bernard 6db99a1a40 use mktemp properly ?
-t option to put in /tmp dir
2015-07-16 17:16:52 +02:00
Thomas Bernard 904399cd62 => (c) 2015 2015-07-16 17:16:09 +02:00
Thomas Bernard a3179fb284 Check malloc/calloc return values 2015-07-15 18:10:10 +02:00
Thomas Bernard e516851a40 miniupnpc/listdevices.c: call WSAStartup()
fixes #135
2015-07-15 14:52:10 +02:00
Thomas Bernard e0999ace78 miniupnpc: Check malloc/calloc return values
fixes #136
2015-07-15 14:48:57 +02:00
Vladimir Sapronov ce56baf81e Moving to setuptools to enable wheel 2015-07-08 09:21:35 -04:00
Thomas Bernard 27e2aa3841 miniupnpc: update getDevicesFromMiniSSDPD() to process longer minissdpd responses 2015-06-16 17:33:59 +02:00
Thomas Bernard eec3f12012 miniupnpc: minor code/comments modifications 2015-06-11 14:28:35 +02:00
Thomas Bernard 76f52c81de fixes 5c6a140098 2015-06-09 17:20:30 +02:00
Thomas Bernard a2adfcd05d miniupnpc/miniupnpc.c: don't wait several times for the timeout in upnpDiscoverDevices() 2015-05-22 12:44:38 +02:00
Thomas Bernard 0bf168d306 miniupnpc.c: minor comment reformatting 2015-05-22 12:27:38 +02:00
Thomas Bernard fce3099080 miniupnpc/listdevices.c: add -l option to search for several dev types 2015-05-22 12:26:54 +02:00
Thomas Bernard 5c6a140098 miniupnpc: add searchalltypes param to upnpDiscoverDevices()
increase API_VERSION to 13
2015-05-22 12:25:51 +02:00
Nevo Hed 94a5af0c15 Allow user to explicitly specify local (source) port
See https://github.com/miniupnp/miniupnp/issues/119

- Replace the sameport parameter to the upnpDiscover* functions
- Added constants UPNP_LOCAL_PORT_ANY(0) & UPNP_LOCAL_PORT_SAME(1).  The
  value "1" was chosen for presumed backwards compatability with the
  previous "sameport" parameter (assuming usesr would have set to 1 if
  they wanted same port)
- Can be specified with "-z" to the test programs "upnpc" & "pymoduletest.py"
2015-05-12 19:05:48 -04:00
Nevo Hed f11b8b2a0d Init accepts multicastif, minissdpdsocket, discoverdelay
+ Created initialize for the UPnP class.  Initializer accepts named
  arguments to override defaults.
+ multicastif & minissdpdsocket ars strduped and thus freed in the dealloc
  (tho could/should they be native py objects instead?)
+ The pymoduletest.py test has been modified to support these but I only
  tested multicastif & discoverdelay.
2015-05-06 13:12:43 -04:00
Nevo Hed 82969aec1d Wrong field mapped for minissdpdsocket 2015-05-05 13:16:10 -04:00
Thomas Bernard 9b9c7dfe1d upnpc: output version on the terminal 2015-04-30 10:34:22 +02:00
Thomas Bernard c7943b6db3 upnpc.c: output Version on the terminal
fixes #115
2015-04-30 10:31:53 +02:00
Thomas Bernard 1df576c72e miniupnpc: update Changelog.txt 2015-04-27 18:02:41 +02:00
Thomas Bernard e501f5625d minissdpc.c: Fix uninitialized dev->scope_id 2015-04-24 22:58:46 +02:00
Thomas Bernard 1e7d13f34f improve -r command
fixes #104
2015-04-24 22:55:37 +02:00
sanderjo a0614ecfb3 add optional parameter <external_port> to option -r 2015-04-24 19:24:20 +02:00
Thomas Bernard d00db100c1 _BSD_SOURCE => _DEFAULT_SOURCE
with glibc 2.20+ _BSD_SOURCE is deprecated in favor of _DEFAULT_SOURCE
use both to please everyone

fixes #107
2015-04-23 12:40:54 +02:00
Mike Gelfand 5de2bcb561 Fix MINIUPNP_STATICLIB being lost in CMake configuration 2015-04-21 14:28:23 +03:00
Thomas Bernard 46533e6f6c pymoduletest3.py: python3 version of the test program 2015-02-16 22:59:13 +01:00
Thomas Bernard c7d7efd230 fix realloc failure issues detected thanks to cppcheck 2015-02-08 10:23:22 +01:00
Thomas Bernard e280c3dd3a miniupnpc/upnpcommands.c: minor fix to UPNP_GetStatusInfo()
*uptime = 0; instead of the useless uptime = 0;
2015-02-06 11:39:39 +01:00
Thomas Bernard 557fd71fb1 miniupnpc: check realloc() return 2015-02-06 11:39:16 +01:00
Maks Naumov 81dc08d290 Fix setsockopt() for IPV6_MULTICAST_IF
32bit: sizeof(&ifindex) == sizeof(void *) == 4
64bit: sizeof(&ifindex) == sizeof(void *) == 8

As a result, it is "ifindex" oob acces on 64bit platforms.
2015-01-21 16:44:36 +01:00
Thomas Bernard f795af5f54 2014 => 2015 2015-01-20 14:12:10 +01:00
Thomas Bernard a30bdc5e71 miniupnpc/Makefile: install-static target 2015-01-07 10:23:59 +01:00
Thomas Bernard 3875d61c9e miniupnpc/upnpc.c: avoid printing imaginary error when using -u 2015-01-01 19:40:44 +01:00
Thomas Bernard 6eef80dab0 miniupnpc.h: UPNP_GetIGDFromUrl() doc 2015-01-01 19:39:47 +01:00
Thomas Bernard 3a3072ee8c miniupnpc/upnpc.c: call WSACleanup() 2014-12-01 10:33:00 +01:00
Thomas Bernard c72591e72e miniupnpc/miniupnpc.c: fix compilation under WIN32 2014-12-01 10:31:50 +01:00
Thomas Bernard 4cae31c948 miniupnpc.c: dont use if_indextoname() under MS Windows
fixes #85
2014-11-27 12:59:12 +01:00
Thomas Bernard 725632f27d miniupnpc: Add linksys_WAG200G_desc.xml to test 2014-11-26 12:39:43 +01:00
Mike Gelfand c490b42547 Fix _POSIX_C_SOURCE definition
Current code makes use of `snprintf` function defined in C99 standard
but _POSIX_C_SOURCE is set to "1" which is not correct. To access C99
definitions, this macro should be set to at least "200112L".

Also, `strncasecmp` function is being used but corresponding <strings.h>
header is not being included in miniwget.c.

Changes have been tested on FreeBSD 10.1 amd64 with default compiler
(Clang).
2014-11-19 17:06:14 +03:00
Thomas Bernard 3690785a79 miniupnpc/miniupnpc.c: accept all versions of urn:schemas-upnp-org:service:WANCommonInterfaceConfig: service 2014-11-18 00:01:48 +01:00
Thomas Bernard d44d16a688 igd_desc_parse.c: define printIGD() only in DEBUG 2014-11-17 20:32:41 +01:00
Thomas Bernard 6e8106688c miniupnpc: validate igd_desc_parse 2014-11-17 20:31:11 +01:00
Thomas Bernard eefb134e09 miniupnpc/listdevices.c: add -m option 2014-11-17 10:54:09 +01:00
Thomas Bernard e60c3a8ce5 Merge branch 'master' into search_all
Conflicts:
	miniupnpc/apiversions.txt
2014-11-17 10:29:29 +01:00
Thomas Bernard 8d5a9d72da miniupnpc/receivedata.c: zero src_addr to silence valgrind 2014-11-13 14:53:50 +01:00
Thomas Bernard 8b22c4d7f4 miniupnpc/receivedata.c: clean up comments 2014-11-13 14:52:58 +01:00
Thomas Bernard b6438f2f72 miniupnpc: API_VERSION 11 2014-11-13 11:28:20 +01:00
Thomas Bernard 04b7126079 miniupnpc: fix LIBSPEC => MINIUPNP_LIBSPEC 2014-11-13 11:05:09 +01:00
Thomas Bernard 9325bacbfc Merge branch 'master' into search_all
Conflicts:
	miniupnpc/.gitignore
	miniupnpc/Makefile
	miniupnpc/miniupnpc.c
2014-11-13 11:02:28 +01:00
Thomas Bernard edfd211276 miniupnpc/miniupnpc.c: simplified function GetUPNPUrls() 2014-11-05 07:09:42 +01:00
Thomas Bernard 55fc3e4c3c miniupnpc: use #define UPNP_VERSION_STRING "UPnP/1.1" 2014-11-05 06:34:51 +01:00
Thomas Bernard 80268b203c miniupnpc/upnpreplyparse.c: Fix compiling with DEBUG
DEBUG only enabled code was forgotten in commit a80c87fb8d
2014-11-05 06:32:43 +01:00
Thomas Bernard c333c3218d miniupnpc/msvc/miniupnpc.vcproj: remove bsdqueue.h 2014-11-01 22:10:55 +01:00
Thomas Bernard 06bf746cc2 miniupnpc: remove bsdqueue.h 2014-11-01 11:41:31 +01:00
Thomas Bernard 00fd13abe5 miniupnpc/Makefile: fix dependencies 2014-11-01 11:40:15 +01:00
Thomas Bernard 63964448b6 miniupnpc: add testportlistringparse 2014-11-01 11:18:26 +01:00
Thomas Bernard a80c87fb8d remove need of sys/queue.h or bsdqueue.h in upnpreplyparse.c/.h 2014-10-27 17:38:26 +01:00
Thomas Bernard 5973d53736 miniupnpc/Makefile: fix installation of man page 2014-10-25 22:04:10 +02:00
Thomas BERNARD c68c435827 Merge pull request #39 from rofl0r/master
get rid of bsd sys/queue.h dependency
2014-10-25 21:56:33 +02:00
Thomas Bernard 28e3bda6dd miniupnpc/connecthostport.c: fix for compilation with SunOS 2014-10-06 14:42:28 +02:00
Thomas Bernard 0436d03757 miniupnpc/upnpc.c: use remoteHost arg of DeletePortMapping 2014-09-11 16:31:36 +02:00
Thomas Bernard 05cc5daf14 update Changelog.txt files 2014-09-06 10:37:08 +02:00
Thomas Bernard 658c5bd0dc miniupnpc/Makefile: clean minihttptestserver 2014-09-06 10:36:58 +02:00
Thomas Bernard c7b0c20502 miniupnpc/miniupnpcmidule.c: fix for both python2 and python3 2014-09-06 10:01:15 +02:00
Mr. Snow f3fb046e45 Repair python3 build under Homebrew Python 3.4 with OSX 10.9. 2014-09-06 09:58:31 +02:00
Thomas Bernard 626cd2cd6c miniupnpc/miniwget.c: define MIN only when not defined by system headers 2014-08-26 20:48:34 +02:00
Jason Huntley 000f9be7fd Dynamic build fails
Dynamic build fails as a result of undefined reference for UPNP_AddAnyPortMapping and UPNP_DeletePortMappingRange
2014-07-29 11:07:43 -04:00
Thomas Bernard f8cb84e393 miniupnpc/igd_desc_parse.c: Fix parsing of IGD:2 root descriptions
fixes #083
2014-07-01 15:03:34 +02:00
Thomas Bernard bd4de468ad update Changelog.txt 2014-07-01 15:03:08 +02:00
Thomas Bernard 78d32ba012 Merge remote branch 'mikedld/remove-macosx-macro' 2014-06-16 10:54:03 +02:00
Mike Gelfand c08833f9e8 Use _WIN32 instead of WIN32 to check for Windows
MinGW defines both _WIN32 and WIN32 (and may even be the only compiler
doing so). Microsoft and Intel compilers only define _WIN32. Use the
common one to eliminate the need in defining WIN32 explicitly.
2014-06-15 09:37:13 +03:00
Mike Gelfand 920845b107 Use built-in __APPLE__ macro instead of MACOSX
GCC and Clang on Mac OS have a built-in __APPLE__ macro. Use it instead of
manually-defined MACOSX.
2014-06-15 04:14:43 +03:00
Thomas Bernard ebd7138cc0 miniupnpc/Makefile: Add test executables to clean target 2014-06-10 11:55:03 +02:00
Thomas BERNARD 011e7e7acd Merge pull request #77 from mikedld/miniupnp-staticlib
Rename STATICLIB macro to resolve natpmp/miniupnp conflict
2014-06-02 18:54:33 +02:00
Thomas Bernard e222e50b24 miniupnpc: Compile with GNU/Hurd and GNU/kFreeBSD 2014-06-02 17:13:52 +02:00
Mike Gelfand 2e4011ce33 Rename LIBSPEC macro to resolve natpmp/miniupnp conflict
Same macro name is used in both natpmp and miniupnp libraries so it's
impossble to link one statically and another dynamically. This patch
renames the macro to have library-specific name.
2014-06-01 13:35:13 +03:00
Mike Gelfand f6774e3316 Rename STATICLIB macro to resolve natpmp/miniupnp conflict
Same macro name is used in both natpmp and miniupnp libraries so it's
impossble to link one statically and another dynamically. This patch
renames the macro to have library-specific name.
2014-06-01 13:22:35 +03:00
Thomas Bernard 1213033912 => 2014 2014-05-20 00:25:35 +02:00
Thomas Bernard 126bf58d23 miniupnpc: add more info to python packages 2014-05-20 00:24:59 +02:00
Thomas Bernard de96dd47d5 update Changelog.txt files 2014-05-15 10:42:08 +02:00
Arran Cudbard-Bell 0490d16221 Don't print garbage values on failure 2014-05-13 21:50:16 +01:00
Arran Cudbard-Bell b9362f32a7 Add support for IGD2 AddAnyPortMapping and DeletePortMappingRange
Added python bindings for both AddAnyPortMapping and DeletePortMappingRange
2014-05-13 21:50:07 +01:00
Arran Cudbard-Bell be9584d156 Fix formatting in areas the next commit will touch 2014-05-13 21:49:51 +01:00
Thomas Bernard 242aceceb4 miniupnpc/CMakeLists.txt: install portlistingparse.h upnpreplyparse.h
Was in Makefile, but forgotten in CMakeLists.txt
Fixes #68
2014-04-17 12:53:11 +02:00
Thomas Bernard c2b3c70f3d miniupnpc/listdevices.c: improve output 2014-04-14 18:11:01 +02:00
Thomas Bernard c2273b584e miniupnpc: API_VERSION incremented to 11 2014-04-14 17:48:50 +02:00