Changelog.txt 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557
  1. $Id: Changelog.txt,v 1.185 2013/05/03 09:05:38 nanard Exp $
  2. miniUPnP client Changelog.
  3. 2013/05/03:
  4. Fix Solaris build thanks to Maciej Małecki
  5. 2013/04/27:
  6. Fix testminiwget.sh for BSD
  7. 2013/03/23:
  8. Fixed Makefile for *BSD
  9. 2013/03/11:
  10. Update Makefile to use JNAerator version 0.11
  11. 2013/02/11:
  12. Fix testminiwget.sh for use with dash
  13. Use $(DESTDIR) in Makefile
  14. VERSION 1.8 : released 2013/02/06
  15. 2012/10/16:
  16. fix testminiwget with no IPv6 support
  17. 2012/09/27:
  18. Rename all include guards to not clash with C99
  19. (7.1.3 Reserved identifiers).
  20. 2012/08/30:
  21. Added -e option to upnpc program (set description for port mappings)
  22. 2012/08/29:
  23. Python 3 support (thanks to Christopher Foo)
  24. 2012/08/11:
  25. Fix a memory link in UPNP_GetValidIGD()
  26. Try to handle scope id in link local IPv6 URL under MS Windows
  27. 2012/07/20:
  28. Disable HAS_IP_MREQN on DragonFly BSD
  29. 2012/06/28:
  30. GetUPNPUrls() now inserts scope into link-local IPv6 addresses
  31. 2012/06/23:
  32. More error return checks in upnpc.c
  33. #define MINIUPNPC_GET_SRC_ADDR enables receivedata() to get scope_id
  34. parseURL() now parses IPv6 addresses scope
  35. new parameter for miniwget() : IPv6 address scope
  36. increment API_VERSION to 9
  37. 2012/06/20:
  38. fixed CMakeLists.txt
  39. 2012/05/29
  40. Improvements in testminiwget.sh
  41. VERSION 1.7 : released 2012/05/24
  42. 2012/05/01:
  43. Cleanup settings of CFLAGS in Makefile
  44. Fix signed/unsigned integer comparaisons
  45. 2012/04/20:
  46. Allow to specify protocol with TCP or UDP for -A option
  47. 2012/04/09:
  48. Only try to fetch XML description once in UPNP_GetValidIGD()
  49. Added -ansi flag to compilation, and fixed C++ comments to ANSI C comments.
  50. 2012/04/05:
  51. minor improvements to minihttptestserver.c
  52. 2012/03/15:
  53. upnperrors.c returns valid error string for unrecognized error codes
  54. 2012/03/08:
  55. make minihttptestserver listen on loopback interface instead of 0.0.0.0
  56. 2012/01/25:
  57. Maven installation thanks to Alexey Kuznetsov
  58. 2012/01/21:
  59. Replace WIN32 macro by _WIN32
  60. 2012/01/19:
  61. Fixes in java wrappers thanks to Alexey Kuznetsov :
  62. https://github.com/axet/miniupnp/tree/fix-javatest/miniupnpc
  63. Make and install .deb packages (python) thanks to Alexey Kuznetsov :
  64. https://github.com/axet/miniupnp/tree/feature-debbuild/miniupnpc
  65. 2012/01/07:
  66. The multicast interface can now be specified by name with IPv4.
  67. 2012/01/02:
  68. Install man page
  69. 2011/11/25:
  70. added header to Port Mappings list in upnpc.c
  71. 2011/10/09:
  72. Makefile : make clean now removes jnaerator generated files.
  73. MINIUPNPC_VERSION in miniupnpc.h (updated by make)
  74. 2011/09/12:
  75. added rootdescURL to UPNPUrls structure.
  76. VERSION 1.6 : released 2011/07/25
  77. 2011/07/25:
  78. Update doc for version 1.6 release
  79. 2011/06/18:
  80. Fix for windows in miniwget.c
  81. 2011/06/04:
  82. display remote host in port mapping listing
  83. 2011/06/03:
  84. Fix in make install : there were missing headers
  85. 2011/05/26:
  86. Fix the socket leak in miniwget thanks to Richard Marsh.
  87. Permit to add leaseduration in -a command. Display lease duration.
  88. 2011/05/15:
  89. Try both LinkLocal and SiteLocal multicast address for SSDP in IPv6
  90. 2011/05/09:
  91. add a test in testminiwget.sh.
  92. more error checking in miniwget.c
  93. 2011/05/06:
  94. Adding some tool to test and validate miniwget.c
  95. simplified and debugged miniwget.c
  96. 2011/04/11:
  97. moving ReceiveData() to a receivedata.c file.
  98. parsing presentation url
  99. adding IGD v2 WANIPv6FirewallControl commands
  100. 2011/04/10:
  101. update of miniupnpcmodule.c
  102. comments in miniwget.c, update in testminiwget
  103. Adding errors codes from IGD v2
  104. new functions in upnpc.c for IGD v2
  105. 2011/04/09:
  106. Support for litteral ip v6 address in miniwget
  107. 2011/04/08:
  108. Adding support for urn:schemas-upnp-org:service:WANIPv6FirewallControl:1
  109. Updating APIVERSION
  110. Supporting IPV6 in upnpDiscover()
  111. Adding a -6 option to upnpc command line tool
  112. 2011/03/18:
  113. miniwget/parseURL() : return an error when url param is null.
  114. fixing GetListOfPortMappings()
  115. 2011/03/14:
  116. upnpDiscover() now reporting an error code.
  117. improvements in comments.
  118. 2011/03/11:
  119. adding miniupnpcstrings.h.cmake and CMakeLists.txt files.
  120. 2011/02/15:
  121. Implementation of GetListOfPortMappings()
  122. 2011/02/07:
  123. updates to minixml to support character data starting with spaces
  124. minixml now support CDATA
  125. upnpreplyparse treats <NewPortListing> specificaly
  126. change in simpleUPnPcommand to return the buffer (simplification)
  127. 2011/02/06:
  128. Added leaseDuration argument to AddPortMapping()
  129. Starting to implement GetListOfPortMappings()
  130. 2011/01/11:
  131. updating wingenminiupnpcstrings.c
  132. 2011/01/04:
  133. improving updateminiupnpcstrings.sh
  134. VERSION 1.5 : released 2011/01/01
  135. 2010/12/21:
  136. use NO_GETADDRINFO macro to disable the use of getaddrinfo/freeaddrinfo
  137. 2010/12/11:
  138. Improvements on getHTTPResponse() code.
  139. 2010/12/09:
  140. new code for miniwget that handle Chunked transfer encoding
  141. using getHTTPResponse() in SOAP call code
  142. Adding MANIFEST.in for 'python setup.py bdist_rpm'
  143. 2010/11/25:
  144. changes to minissdpc.c to compile under Win32.
  145. see http://miniupnp.tuxfamily.org/forum/viewtopic.php?t=729
  146. 2010/09/17:
  147. Various improvement to Makefile from Michał Górny
  148. 2010/08/05:
  149. Adding the script "external-ip.sh" from Reuben Hawkins
  150. 2010/06/09:
  151. update to python module to match modification made on 2010/04/05
  152. update to Java test code to match modification made on 2010/04/05
  153. all UPNP_* function now return an error if the SOAP request failed
  154. at HTTP level.
  155. 2010/04/17:
  156. Using GetBestRoute() under win32 in order to find the
  157. right interface to use.
  158. 2010/04/12:
  159. Retrying with HTTP/1.1 if HTTP/1.0 failed. see
  160. http://miniupnp.tuxfamily.org/forum/viewtopic.php?p=1703
  161. 2010/04/07:
  162. avoid returning duplicates in upnpDiscover()
  163. 2010/04/05:
  164. Create a connecthostport.h/.c with connecthostport() function
  165. and use it in miniwget and miniupnpc.
  166. Use getnameinfo() instead of inet_ntop or inet_ntoa
  167. Work to make miniupnpc IPV6 compatible...
  168. Add java test code.
  169. Big changes in order to support device having both WANIPConnection
  170. and WANPPPConnection.
  171. 2010/04/04:
  172. Use getaddrinfo() instead of gethostbyname() in miniwget.
  173. 2010/01/06:
  174. #define _DARWIN_C_SOURCE for Mac OS X
  175. 2009/12/19:
  176. Improve MinGW32 build
  177. 2009/12/11:
  178. adding a MSVC9 project to build the static library and executable
  179. 2009/12/10:
  180. Fixing some compilation stuff for Windows/MinGW
  181. 2009/12/07:
  182. adaptations in Makefile and updateminiupnpcstring.sh for AmigaOS
  183. some fixes for Windows when using virtual ethernet adapters (it is the
  184. case with VMWare installed).
  185. 2009/12/04:
  186. some fixes for AmigaOS compilation
  187. Changed HTTP version to HTTP/1.0 for Soap too (to prevent chunked
  188. transfer encoding)
  189. 2009/12/03:
  190. updating printIDG and testigddescparse.c for debug.
  191. modifications to compile under AmigaOS
  192. adding a testminiwget program
  193. Changed miniwget to advertise itself as HTTP/1.0 to prevent chunked
  194. transfer encoding
  195. 2009/11/26:
  196. fixing updateminiupnpcstrings.sh to take into account
  197. which command that does not return an error code.
  198. VERSION 1.4 : released 2009/10/30
  199. 2009/10/16:
  200. using Py_BEGIN_ALLOW_THREADS and Py_END_ALLOW_THREADS in python module.
  201. 2009/10/10:
  202. Some fixes for compilation under Solaris
  203. compilation fixes : http://miniupnp.tuxfamily.org/forum/viewtopic.php?p=1464
  204. 2009/09/21:
  205. fixing the code to ignore EINTR during connect() calls.
  206. 2009/08/07:
  207. Set socket timeout for connect()
  208. Some cleanup in miniwget.c
  209. 2009/08/04:
  210. remove multiple redirections with -d in upnpc.c
  211. Print textual error code in upnpc.c
  212. Ignore EINTR during the connect() and poll() calls.
  213. 2009/07/29:
  214. fix in updateminiupnpcstrings.sh if OS name contains "/"
  215. Sending a correct value for MX: field in SSDP request
  216. 2009/07/20:
  217. Change the Makefile to compile under Mac OS X
  218. Fixed a stackoverflow in getDevicesFromMiniSSDPD()
  219. 2009/07/09:
  220. Compile under Haiku
  221. generate miniupnpcstrings.h.in from miniupnpcstrings.h
  222. 2009/06/04:
  223. patching to compile under CygWin and cross compile for minGW
  224. VERSION 1.3 :
  225. 2009/04/17:
  226. updating python module
  227. Use strtoull() when using C99
  228. 2009/02/28:
  229. Fixed miniwget.c for compiling under sun
  230. 2008/12/18:
  231. cleanup in Makefile (thanks to Paul de Weerd)
  232. minissdpc.c : win32 compatibility
  233. miniupnpc.c : changed xmlns prefix from 'm' to 'u'
  234. Removed NDEBUG (using DEBUG)
  235. 2008/10/14:
  236. Added the ExternalHost argument to DeletePortMapping()
  237. 2008/10/11:
  238. Added the ExternalHost argument to AddPortMapping()
  239. Put a correct User-Agent: header in HTTP requests.
  240. VERSION 1.2 :
  241. 2008/10/07:
  242. Update docs
  243. 2008/09/25:
  244. Integrated sameport patch from Dario Meloni : Added a "sameport"
  245. argument to upnpDiscover().
  246. 2008/07/18:
  247. small modif to make Clang happy :)
  248. 2008/07/17:
  249. #define SOAPPREFIX "s" in miniupnpc.c in order to remove SOAP-ENV...
  250. 2008/07/14:
  251. include declspec.h in installation (to /usr/include/miniupnpc)
  252. VERSION 1.1 :
  253. 2008/07/04:
  254. standard options for install/ln instead of gnu-specific stuff.
  255. 2008/07/03:
  256. now builds a .dll and .lib with win32. (mingw32)
  257. 2008/04/28:
  258. make install now install the binary of the upnpc tool
  259. 2008/04/27:
  260. added testupnpigd.py
  261. added error strings for miniupnpc "internal" errors
  262. improved python module error/exception reporting.
  263. 2008/04/23:
  264. Completely rewrite igd_desc_parse.c in order to be compatible with
  265. Linksys WAG200G
  266. Added testigddescparse
  267. updated python module
  268. VERSION 1.0 :
  269. 2008/02/21:
  270. put some #ifdef DEBUG around DisplayNameValueList()
  271. 2008/02/18:
  272. Improved error reporting in upnpcommands.c
  273. UPNP_GetStatusInfo() returns LastConnectionError
  274. 2008/02/16:
  275. better error handling in minisoap.c
  276. improving display of "valid IGD found" in upnpc.c
  277. 2008/02/03:
  278. Fixing UPNP_GetValidIGD()
  279. improved make install :)
  280. 2007/12/22:
  281. Adding upnperrors.c/h to provide a strupnperror() function
  282. used to translate UPnP error codes to string.
  283. 2007/12/19:
  284. Fixing getDevicesFromMiniSSDPD()
  285. improved error reporting of UPnP functions
  286. 2007/12/18:
  287. It is now possible to specify a different location for MiniSSDPd socket.
  288. working with MiniSSDPd is now more efficient.
  289. python module improved.
  290. 2007/12/16:
  291. improving error reporting
  292. 2007/12/13:
  293. Try to improve compatibility by using HTTP/1.0 instead of 1.1 and
  294. XML a bit different for SOAP.
  295. 2007/11/25:
  296. fixed select() call for linux
  297. 2007/11/15:
  298. Added -fPIC to CFLAG for better shared library code.
  299. 2007/11/02:
  300. Fixed a potential socket leak in miniwget2()
  301. 2007/10/16:
  302. added a parameter to upnpDiscover() in order to allow the use of another
  303. interface than the default multicast interface.
  304. 2007/10/12:
  305. Fixed the creation of symbolic link in Makefile
  306. 2007/10/08:
  307. Added man page
  308. 2007/10/02:
  309. fixed memory bug in GetUPNPUrls()
  310. 2007/10/01:
  311. fixes in the Makefile
  312. Added UPNP_GetIGDFromUrl() and adapted the sample program accordingly.
  313. Added SONAME in the shared library to please debian :)
  314. fixed MS Windows compilation (minissdpd is not available under MS Windows).
  315. 2007/09/25:
  316. small change to Makefile to be able to install in a different location
  317. (default is /usr)
  318. 2007/09/24:
  319. now compiling both shared and static library
  320. 2007/09/19:
  321. Cosmetic changes on upnpc.c
  322. 2007/09/02:
  323. adapting to new miniSSDPd (release version ?)
  324. 2007/08/31:
  325. Usage of miniSSDPd to skip discovery process.
  326. 2007/08/27:
  327. fixed python module to allow compilation with Python older than Python 2.4
  328. 2007/06/12:
  329. Added a python module.
  330. 2007/05/19:
  331. Fixed compilation under MinGW
  332. 2007/05/15:
  333. fixed a memory leak in AddPortMapping()
  334. Added testupnpreplyparse executable to check the parsing of
  335. upnp soap messages
  336. minixml now ignore namespace prefixes.
  337. 2007/04/26:
  338. upnpc now displays external ip address with -s or -l
  339. 2007/04/11:
  340. changed MINIUPNPC_URL_MAXSIZE to 128 to accomodate the "BT Voyager 210"
  341. 2007/03/19:
  342. cleanup in miniwget.c
  343. 2007/03/01:
  344. Small typo fix...
  345. 2007/01/30:
  346. Now parsing the HTTP header from SOAP responses in order to
  347. get content-length value.
  348. 2007/01/29:
  349. Fixed the Soap Query to speedup the HTTP request.
  350. added some Win32 DLL stuff...
  351. 2007/01/27:
  352. Fixed some WIN32 compatibility issues
  353. 2006/12/14:
  354. Added UPNPIGD_IsConnected() function in miniupnp.c/.h
  355. Added UPNP_GetValidIGD() in miniupnp.c/.h
  356. cleaned upnpc.c main(). now using UPNP_GetValidIGD()
  357. 2006/12/07:
  358. Version 1.0-RC1 released
  359. 2006/12/03:
  360. Minor changes to compile under SunOS/Solaris
  361. 2006/11/30:
  362. made a minixml parser validator program
  363. updated minixml to handle attributes correctly
  364. 2006/11/22:
  365. Added a -r option to the upnpc sample thanks to Alexander Hubmann.
  366. 2006/11/19:
  367. Cleanup code to make it more ANSI C compliant
  368. 2006/11/10:
  369. detect and display local lan address.
  370. 2006/11/04:
  371. Packets and Bytes Sent/Received are now unsigned int.
  372. 2006/11/01:
  373. Bug fix thanks to Giuseppe D'Angelo
  374. 2006/10/31:
  375. C++ compatibility for .h files.
  376. Added a way to get ip Address on the LAN used to reach the IGD.
  377. 2006/10/25:
  378. Added M-SEARCH to the services in the discovery process.
  379. 2006/10/22:
  380. updated the Makefile to use makedepend, added a "make install"
  381. update Makefile
  382. 2006/10/20:
  383. fixing the description url parsing thanks to patch sent by
  384. Wayne Dawe.
  385. Fixed/translated some comments.
  386. Implemented a better discover process, first looking
  387. for IGD then for root devices (as some devices only reply to
  388. M-SEARCH for root devices).
  389. 2006/09/02:
  390. added freeUPNPDevlist() function.
  391. 2006/08/04:
  392. More command line arguments checking
  393. 2006/08/01:
  394. Added the .bat file to compile under Win32 with minGW32
  395. 2006/07/31:
  396. Fixed the rootdesc parser (igd_desc_parse.c)
  397. 2006/07/20:
  398. parseMSEARCHReply() is now returning the ST: line as well
  399. starting changes to detect several UPnP devices on the network
  400. 2006/07/19:
  401. using GetCommonLinkProperties to get down/upload bitrate