Annotation of embedaddon/miniupnpd/miniupnpc/Changelog.txt, revision 1.1

1.1     ! misho       1: $Id: Changelog.txt,v 1.254 2022/10/21 21:13:12 nanard Exp $
        !             2: miniUPnP client Changelog.
        !             3: 
        !             4: VERSION 2.2.4 : released 2022/10/21
        !             5: 
        !             6: 2022/02/20:
        !             7:   upnpc: use of @ to replace local lan address
        !             8: 
        !             9: 2021/11/09:
        !            10:   python module : Allow to specify the root description url
        !            11: 
        !            12: VERSION 2.2.3 : released 2021/09/28
        !            13: 
        !            14: 2021/08/13:
        !            15:   Change directory structure : include/ and src/ directories.
        !            16: 
        !            17: VERSION 2.2.2 : released 2021/03/03
        !            18: 
        !            19: 2021/01/15:
        !            20:   miniupnpcmodule.c: throw an exception in UPnP_discover()
        !            21: 
        !            22: 2020/12/30:
        !            23:   Fix usage of IP_MULTICAST_IF with struct ip_mreqn
        !            24: 
        !            25: VERSION 2.2.1 : released 2020/12/20
        !            26: 
        !            27: 2020/11/30:
        !            28:   Add miniupnpc.rc for .dll description
        !            29: 
        !            30: VERSION 2.2.0 : released 2020/11/09
        !            31: 
        !            32: 2020/09/24:
        !            33:   Check properly for reserved IP addresses
        !            34: 
        !            35: 2020/09/23:
        !            36:   prevent infinite loop in upnpDiscover()
        !            37: 
        !            38: 2020/02/16:
        !            39:   Add Haiku support
        !            40: 
        !            41: 2019/10/22:
        !            42:   testminiwget.sh can use either "ip addr" or "ifconfig -a
        !            43: 
        !            44: 2019/10/13:
        !            45:   fix UPNP_GetValidIGD() when several devices are found
        !            46:   which are reachable from != local address
        !            47: 
        !            48: 2019/08/24:
        !            49:   Allow Remote Host on upnpc command line
        !            50:   fix error 708 description in strupnperror()
        !            51: 
        !            52: 2019/04/05:
        !            53:   Fix memory leak in upnpreplyparse.c with NewPortListing element
        !            54: 
        !            55: 2019/03/10:
        !            56:   connecthostport.c: Code simplification, error trace fix
        !            57: 
        !            58: 2019/01/23:
        !            59:   set timeout for select() in connecthostport()
        !            60: 
        !            61: 2018/10/31:
        !            62:   miniupnpcmodule.c: check return of WSAStartup()
        !            63: 
        !            64: 2018/07/14:
        !            65:   Fix and improve MSVC project :
        !            66:     Add Dll configurations
        !            67:     improve genminiupnpcstrings.vbs
        !            68: 
        !            69: 2018/06/18:
        !            70:   Fixes for windows 64-bits.
        !            71: 
        !            72: VERSION 2.1 : released 2018/05/07
        !            73: 
        !            74: 2018/05/07:
        !            75:   CMake Modernize and cleanup CMakeLists.txt
        !            76:   Update MS Visual Studio projects
        !            77: 
        !            78: 2018/04/30:
        !            79:   listdevices: show devices sorted by XML desc URL
        !            80: 
        !            81: 2018/04/26:
        !            82:   Small fix in miniupnpcmodule.c (python module)
        !            83:   Support cross compiling in Makefile.mingw
        !            84: 
        !            85: 2018/04/06:
        !            86:   Use SOCKET type instead of int (for Win64 compilation)
        !            87:   Increments API_VERSION to 17
        !            88: 
        !            89: 2018/02/22:
        !            90:   Disable usage of MiniSSDPd when using -m option
        !            91: 
        !            92: 2017/12/11:
        !            93:   Fix buffer over run in minixml.c
        !            94:   Fix uninitialized variable access in upnpreplyparse.c
        !            95: 
        !            96: 2017/05/05:
        !            97:   Fix CVE-2017-8798   Thanks to tin/Team OSTStrom
        !            98: 
        !            99: 2016/11/11:
        !           100:   check strlen before memcmp in XML parsing portlistingparse.c
        !           101:   fix build under SOLARIS and CYGWIN
        !           102: 
        !           103: 2016/10/11:
        !           104:   Add python 3 compatibility to IGD test
        !           105: 
        !           106: VERSION 2.0 : released 2016/04/19
        !           107: 
        !           108: 2016/01/24:
        !           109:   change miniwget to return HTTP status code
        !           110:   increments API_VERSION to 16
        !           111: 
        !           112: 2016/01/22:
        !           113:   Improve UPNPIGD_IsConnected() to check if WAN address is not private.
        !           114:   parse HTTP response status line in miniwget.c
        !           115: 
        !           116: 2015/10/26:
        !           117:   snprintf() overflow check. check overflow in simpleUPnPcommand2()
        !           118: 
        !           119: 2015/10/25:
        !           120:   fix compilation with old macs
        !           121:   fix compilation with mingw32 (for Appveyor)
        !           122:   fix python module for python <= 2.3
        !           123: 
        !           124: 2015/10/08:
        !           125:   Change sameport to localport
        !           126:     see https://github.com/miniupnp/miniupnp/pull/120
        !           127:   increments API_VERSION to 15
        !           128: 
        !           129: 2015/09/15:
        !           130:   Fix buffer overflow in igd_desc_parse.c/IGDstartelt()
        !           131:     Discovered by Aleksandar Nikolic of Cisco Talos
        !           132: 
        !           133: 2015/08/28:
        !           134:   move ssdpDiscoverDevices() to minissdpc.c
        !           135: 
        !           136: 2015/08/27:
        !           137:   avoid unix socket leak in getDevicesFromMiniSSDPD()
        !           138: 
        !           139: 2015/08/16:
        !           140:   Also accept "Up" as ConnectionStatus value
        !           141: 
        !           142: 2015/07/23:
        !           143:   split getDevicesFromMiniSSDPD
        !           144:   add ttl argument to upnpDiscover() functions
        !           145:   increments API_VERSION to 14
        !           146: 
        !           147: 2015/07/22:
        !           148:   Read USN from SSDP messages.
        !           149: 
        !           150: 2015/07/15:
        !           151:   Check malloc/calloc
        !           152: 
        !           153: 2015/06/16:
        !           154:   update getDevicesFromMiniSSDPD() to process longer minissdpd
        !           155:     responses
        !           156: 
        !           157: 2015/05/22:
        !           158:   add searchalltypes param to upnpDiscoverDevices()
        !           159:   increments API_VERSION to 13
        !           160: 
        !           161: 2015/04/30:
        !           162:   upnpc: output version on the terminal
        !           163: 
        !           164: 2015/04/27:
        !           165:   _BSD_SOURCE is deprecated in favor of _DEFAULT_SOURCE
        !           166:   fix CMakeLists.txt COMPILE_DEFINITIONS
        !           167:   fix getDevicesFromMiniSSDPD() not setting scope_id
        !           168:   improve -r command of upnpc command line tool
        !           169: 
        !           170: 2014/11/17:
        !           171:   search all :
        !           172:     upnpDiscoverDevices() / upnpDiscoverAll() functions
        !           173:     listdevices executable
        !           174:   increment API_VERSION to 12
        !           175:   validate igd_desc_parse
        !           176: 
        !           177: 2014/11/13:
        !           178:   increment API_VERSION to 11
        !           179: 
        !           180: 2014/11/05:
        !           181:   simplified function GetUPNPUrls()
        !           182: 
        !           183: 2014/09/11:
        !           184:   use remoteHost arg of DeletePortMapping
        !           185: 
        !           186: 2014/09/06:
        !           187:   Fix python3 build
        !           188: 
        !           189: 2014/07/01:
        !           190:   Fix parsing of IGD2 root descriptions
        !           191: 
        !           192: 2014/06/10:
        !           193:   rename LIBSPEC to MINIUPNP_LIBSPEC
        !           194: 
        !           195: 2014/05/15:
        !           196:   Add support for IGD2 AddAnyPortMapping and DeletePortMappingRange
        !           197: 
        !           198: 2014/02/05:
        !           199:   handle EINPROGRESS after connect()
        !           200: 
        !           201: 2014/02/03:
        !           202:   minixml now handle XML comments
        !           203: 
        !           204: VERSION 1.9 : released 2014/01/31
        !           205: 
        !           206: 2014/01/31:
        !           207:   added argument remoteHost to UPNP_GetSpecificPortMappingEntry()
        !           208:   increment API_VERSION to 10
        !           209: 
        !           210: 2013/12/09:
        !           211:   --help and -h arguments in upnpc.c
        !           212: 
        !           213: 2013/10/07:
        !           214:   fixed potential buffer overrun in miniwget.c
        !           215:   Modified UPNP_GetValidIGD() to check for ExternalIpAddress
        !           216: 
        !           217: 2013/08/01:
        !           218:   define MAXHOSTNAMELEN if not already done
        !           219: 
        !           220: 2013/06/06:
        !           221:   update upnpreplyparse to allow larger values (128 chars instead of 64)
        !           222: 
        !           223: 2013/05/14:
        !           224:   Update upnpreplyparse to take into account "empty" elements
        !           225:   validate upnpreplyparse.c code with "make check"
        !           226: 
        !           227: 2013/05/03:
        !           228:   Fix Solaris build thanks to Maciej Małecki
        !           229: 
        !           230: 2013/04/27:
        !           231:   Fix testminiwget.sh for BSD
        !           232: 
        !           233: 2013/03/23:
        !           234:   Fixed Makefile for *BSD
        !           235: 
        !           236: 2013/03/11:
        !           237:   Update Makefile to use JNAerator version 0.11
        !           238: 
        !           239: 2013/02/11:
        !           240:   Fix testminiwget.sh for use with dash
        !           241:   Use $(DESTDIR) in Makefile
        !           242: 
        !           243: VERSION 1.8 : released 2013/02/06
        !           244: 
        !           245: 2012/10/16:
        !           246:   fix testminiwget with no IPv6 support
        !           247: 
        !           248: 2012/09/27:
        !           249:   Rename all include guards to not clash with C99
        !           250:   (7.1.3 Reserved identifiers).
        !           251: 
        !           252: 2012/08/30:
        !           253:   Added -e option to upnpc program (set description for port mappings)
        !           254: 
        !           255: 2012/08/29:
        !           256:   Python 3 support (thanks to Christopher Foo)
        !           257: 
        !           258: 2012/08/11:
        !           259:   Fix a memory link in UPNP_GetValidIGD()
        !           260:   Try to handle scope id in link local IPv6 URL under MS Windows
        !           261: 
        !           262: 2012/07/20:
        !           263:   Disable HAS_IP_MREQN on DragonFly BSD
        !           264: 
        !           265: 2012/06/28:
        !           266:   GetUPNPUrls() now inserts scope into link-local IPv6 addresses
        !           267: 
        !           268: 2012/06/23:
        !           269:   More error return checks in upnpc.c
        !           270:   #define MINIUPNPC_GET_SRC_ADDR enables receivedata() to get scope_id
        !           271:   parseURL() now parses IPv6 addresses scope
        !           272:   new parameter for miniwget() : IPv6 address scope
        !           273:   increment API_VERSION to 9
        !           274: 
        !           275: 2012/06/20:
        !           276:   fixed CMakeLists.txt
        !           277: 
        !           278: 2012/05/29
        !           279:   Improvements in testminiwget.sh
        !           280: 
        !           281: VERSION 1.7 : released 2012/05/24
        !           282: 
        !           283: 2012/05/01:
        !           284:   Cleanup settings of CFLAGS in Makefile
        !           285:   Fix signed/unsigned integer comparaisons
        !           286: 
        !           287: 2012/04/20:
        !           288:   Allow to specify protocol with TCP or UDP for -A option
        !           289: 
        !           290: 2012/04/09:
        !           291:   Only try to fetch XML description once in UPNP_GetValidIGD()
        !           292:   Added -ansi flag to compilation, and fixed C++ comments to ANSI C comments.
        !           293: 
        !           294: 2012/04/05:
        !           295:   minor improvements to minihttptestserver.c
        !           296: 
        !           297: 2012/03/15:
        !           298:   upnperrors.c returns valid error string for unrecognized error codes
        !           299: 
        !           300: 2012/03/08:
        !           301:   make minihttptestserver listen on loopback interface instead of 0.0.0.0
        !           302: 
        !           303: 2012/01/25:
        !           304:   Maven installation thanks to Alexey Kuznetsov
        !           305: 
        !           306: 2012/01/21:
        !           307:   Replace WIN32 macro by _WIN32
        !           308: 
        !           309: 2012/01/19:
        !           310:   Fixes in java wrappers thanks to Alexey Kuznetsov :
        !           311:     https://github.com/axet/miniupnp/tree/fix-javatest/miniupnpc
        !           312:   Make and install .deb packages (python) thanks to Alexey Kuznetsov :
        !           313:     https://github.com/axet/miniupnp/tree/feature-debbuild/miniupnpc
        !           314: 
        !           315: 2012/01/07:
        !           316:   The multicast interface can now be specified by name with IPv4.
        !           317: 
        !           318: 2012/01/02:
        !           319:   Install man page
        !           320: 
        !           321: 2011/11/25:
        !           322:   added header to Port Mappings list in upnpc.c
        !           323: 
        !           324: 2011/10/09:
        !           325:   Makefile : make clean now removes jnaerator generated files.
        !           326:   MINIUPNPC_VERSION in miniupnpc.h (updated by make)
        !           327: 
        !           328: 2011/09/12:
        !           329:   added rootdescURL to UPNPUrls structure.
        !           330: 
        !           331: VERSION 1.6 : released 2011/07/25
        !           332: 
        !           333: 2011/07/25:
        !           334:   Update doc for version 1.6 release
        !           335: 
        !           336: 2011/06/18:
        !           337:   Fix for windows in miniwget.c
        !           338: 
        !           339: 2011/06/04:
        !           340:   display remote host in port mapping listing
        !           341: 
        !           342: 2011/06/03:
        !           343:   Fix in make install : there were missing headers
        !           344: 
        !           345: 2011/05/26:
        !           346:   Fix the socket leak in miniwget thanks to Richard Marsh.
        !           347:   Permit to add leaseduration in -a command. Display lease duration.
        !           348: 
        !           349: 2011/05/15:
        !           350:   Try both LinkLocal and SiteLocal multicast address for SSDP in IPv6
        !           351: 
        !           352: 2011/05/09:
        !           353:   add a test in testminiwget.sh.
        !           354:   more error checking in miniwget.c
        !           355: 
        !           356: 2011/05/06:
        !           357:   Adding some tool to test and validate miniwget.c
        !           358:   simplified and debugged miniwget.c
        !           359: 
        !           360: 2011/04/11:
        !           361:   moving ReceiveData() to a receivedata.c file.
        !           362:   parsing presentation url
        !           363:   adding IGD v2 WANIPv6FirewallControl commands
        !           364: 
        !           365: 2011/04/10:
        !           366:   update of miniupnpcmodule.c
        !           367:   comments in miniwget.c, update in testminiwget
        !           368:   Adding errors codes from IGD v2
        !           369:   new functions in upnpc.c for IGD v2
        !           370: 
        !           371: 2011/04/09:
        !           372:   Support for litteral ip v6 address in miniwget
        !           373: 
        !           374: 2011/04/08:
        !           375:   Adding support for urn:schemas-upnp-org:service:WANIPv6FirewallControl:1
        !           376:   Updating APIVERSION
        !           377:   Supporting IPV6 in upnpDiscover()
        !           378:   Adding a -6 option to upnpc command line tool
        !           379: 
        !           380: 2011/03/18:
        !           381:   miniwget/parseURL() : return an error when url param is null.
        !           382:   fixing GetListOfPortMappings()
        !           383: 
        !           384: 2011/03/14:
        !           385:   upnpDiscover() now reporting an error code.
        !           386:   improvements in comments.
        !           387: 
        !           388: 2011/03/11:
        !           389:   adding miniupnpcstrings.h.cmake and CMakeLists.txt files.
        !           390: 
        !           391: 2011/02/15:
        !           392:   Implementation of GetListOfPortMappings()
        !           393: 
        !           394: 2011/02/07:
        !           395:   updates to minixml to support character data starting with spaces
        !           396:   minixml now support CDATA
        !           397:   upnpreplyparse treats <NewPortListing> specificaly
        !           398:   change in simpleUPnPcommand to return the buffer (simplification)
        !           399: 
        !           400: 2011/02/06:
        !           401:   Added leaseDuration argument to AddPortMapping()
        !           402:   Starting to implement GetListOfPortMappings()
        !           403: 
        !           404: 2011/01/11:
        !           405:   updating wingenminiupnpcstrings.c
        !           406: 
        !           407: 2011/01/04:
        !           408:   improving updateminiupnpcstrings.sh
        !           409: 
        !           410: VERSION 1.5 : released 2011/01/01
        !           411: 
        !           412: 2010/12/21:
        !           413:   use NO_GETADDRINFO macro to disable the use of getaddrinfo/freeaddrinfo
        !           414: 
        !           415: 2010/12/11:
        !           416:   Improvements on getHTTPResponse() code.
        !           417: 
        !           418: 2010/12/09:
        !           419:   new code for miniwget that handle Chunked transfer encoding
        !           420:   using getHTTPResponse() in SOAP call code
        !           421:   Adding MANIFEST.in for 'python setup.py bdist_rpm'
        !           422: 
        !           423: 2010/11/25:
        !           424:   changes to minissdpc.c to compile under Win32.
        !           425:   see http://miniupnp.tuxfamily.org/forum/viewtopic.php?t=729
        !           426: 
        !           427: 2010/09/17:
        !           428:   Various improvement to Makefile from Michał Górny
        !           429: 
        !           430: 2010/08/05:
        !           431:   Adding the script "external-ip.sh" from Reuben Hawkins
        !           432: 
        !           433: 2010/06/09:
        !           434:   update to python module to match modification made on 2010/04/05
        !           435:   update to Java test code to match modification made on 2010/04/05
        !           436:   all UPNP_* function now return an error if the SOAP request failed
        !           437:   at HTTP level.
        !           438: 
        !           439: 2010/04/17:
        !           440:   Using GetBestRoute() under win32 in order to find the
        !           441:   right interface to use.
        !           442: 
        !           443: 2010/04/12:
        !           444:   Retrying with HTTP/1.1 if HTTP/1.0 failed. see
        !           445:   http://miniupnp.tuxfamily.org/forum/viewtopic.php?p=1703
        !           446: 
        !           447: 2010/04/07:
        !           448:   avoid returning duplicates in upnpDiscover()
        !           449: 
        !           450: 2010/04/05:
        !           451:   Create a connecthostport.h/.c with connecthostport() function
        !           452:   and use it in miniwget and miniupnpc.
        !           453:   Use getnameinfo() instead of inet_ntop or inet_ntoa
        !           454:   Work to make miniupnpc IPV6 compatible...
        !           455:   Add java test code.
        !           456:   Big changes in order to support device having both WANIPConnection
        !           457:   and WANPPPConnection.
        !           458: 
        !           459: 2010/04/04:
        !           460:   Use getaddrinfo() instead of gethostbyname() in miniwget.
        !           461: 
        !           462: 2010/01/06:
        !           463:   #define _DARWIN_C_SOURCE for Mac OS X
        !           464: 
        !           465: 2009/12/19:
        !           466:   Improve MinGW32 build
        !           467: 
        !           468: 2009/12/11:
        !           469:   adding a MSVC9 project to build the static library and executable
        !           470: 
        !           471: 2009/12/10:
        !           472:   Fixing some compilation stuff for Windows/MinGW
        !           473: 
        !           474: 2009/12/07:
        !           475:   adaptations in Makefile and updateminiupnpcstring.sh for AmigaOS
        !           476:   some fixes for Windows when using virtual ethernet adapters (it is the
        !           477:   case with VMWare installed).
        !           478: 
        !           479: 2009/12/04:
        !           480:   some fixes for AmigaOS compilation
        !           481:   Changed HTTP version to HTTP/1.0 for Soap too (to prevent chunked
        !           482:   transfer encoding)
        !           483: 
        !           484: 2009/12/03:
        !           485:   updating printIDG and testigddescparse.c for debug.
        !           486:   modifications to compile under AmigaOS
        !           487:   adding a testminiwget program
        !           488:   Changed miniwget to advertise itself as HTTP/1.0 to prevent chunked
        !           489:   transfer encoding
        !           490: 
        !           491: 2009/11/26:
        !           492:   fixing updateminiupnpcstrings.sh to take into account
        !           493:   which command that does not return an error code.
        !           494: 
        !           495: VERSION 1.4 : released 2009/10/30
        !           496: 
        !           497: 2009/10/16:
        !           498:   using Py_BEGIN_ALLOW_THREADS and Py_END_ALLOW_THREADS in python module.
        !           499: 
        !           500: 2009/10/10:
        !           501:   Some fixes for compilation under Solaris
        !           502:   compilation fixes : http://miniupnp.tuxfamily.org/forum/viewtopic.php?p=1464
        !           503: 
        !           504: 2009/09/21:
        !           505:   fixing the code to ignore EINTR during connect() calls.
        !           506: 
        !           507: 2009/08/07:
        !           508:   Set socket timeout for connect()
        !           509:   Some cleanup in miniwget.c
        !           510: 
        !           511: 2009/08/04:
        !           512:   remove multiple redirections with -d in upnpc.c
        !           513:   Print textual error code in upnpc.c
        !           514:   Ignore EINTR during the connect() and poll() calls.
        !           515: 
        !           516: 2009/07/29:
        !           517:   fix in updateminiupnpcstrings.sh if OS name contains "/"
        !           518:   Sending a correct value for MX: field in SSDP request
        !           519: 
        !           520: 2009/07/20:
        !           521:   Change the Makefile to compile under Mac OS X
        !           522:   Fixed a stackoverflow in getDevicesFromMiniSSDPD()
        !           523: 
        !           524: 2009/07/09:
        !           525:   Compile under Haiku
        !           526:   generate miniupnpcstrings.h.in from miniupnpcstrings.h
        !           527: 
        !           528: 2009/06/04:
        !           529:   patching to compile under CygWin and cross compile for minGW
        !           530: 
        !           531: VERSION 1.3 :
        !           532: 
        !           533: 2009/04/17:
        !           534:   updating python module
        !           535:   Use strtoull() when using C99
        !           536: 
        !           537: 2009/02/28:
        !           538:   Fixed miniwget.c for compiling under sun
        !           539: 
        !           540: 2008/12/18:
        !           541:   cleanup in Makefile (thanks to Paul de Weerd)
        !           542:   minissdpc.c : win32 compatibility
        !           543:   miniupnpc.c : changed xmlns prefix from 'm' to 'u'
        !           544:   Removed NDEBUG (using DEBUG)
        !           545: 
        !           546: 2008/10/14:
        !           547:   Added the ExternalHost argument to DeletePortMapping()
        !           548: 
        !           549: 2008/10/11:
        !           550:   Added the ExternalHost argument to AddPortMapping()
        !           551:   Put a correct User-Agent: header in HTTP requests.
        !           552: 
        !           553: VERSION 1.2 :
        !           554: 
        !           555: 2008/10/07:
        !           556:   Update docs
        !           557: 
        !           558: 2008/09/25:
        !           559:   Integrated sameport patch from Dario Meloni : Added a "sameport"
        !           560:   argument to upnpDiscover().
        !           561: 
        !           562: 2008/07/18:
        !           563:   small modif to make Clang happy :)
        !           564: 
        !           565: 2008/07/17:
        !           566:   #define SOAPPREFIX "s" in miniupnpc.c in order to remove SOAP-ENV...
        !           567: 
        !           568: 2008/07/14:
        !           569:   include declspec.h in installation (to /usr/include/miniupnpc)
        !           570: 
        !           571: VERSION 1.1 :
        !           572: 
        !           573: 2008/07/04:
        !           574:   standard options for install/ln instead of gnu-specific stuff.
        !           575: 
        !           576: 2008/07/03:
        !           577:   now builds a .dll and .lib with win32. (mingw32)
        !           578: 
        !           579: 2008/04/28:
        !           580:   make install now install the binary of the upnpc tool
        !           581: 
        !           582: 2008/04/27:
        !           583:   added testupnpigd.py
        !           584:   added error strings for miniupnpc "internal" errors
        !           585:   improved python module error/exception reporting.
        !           586: 
        !           587: 2008/04/23:
        !           588:   Completely rewrite igd_desc_parse.c in order to be compatible with
        !           589:   Linksys WAG200G
        !           590:   Added testigddescparse
        !           591:   updated python module
        !           592: 
        !           593: VERSION 1.0 :
        !           594: 
        !           595: 2008/02/21:
        !           596:   put some #ifdef DEBUG around DisplayNameValueList()
        !           597: 
        !           598: 2008/02/18:
        !           599:   Improved error reporting in upnpcommands.c
        !           600:   UPNP_GetStatusInfo() returns LastConnectionError
        !           601: 
        !           602: 2008/02/16:
        !           603:   better error handling in minisoap.c
        !           604:   improving display of "valid IGD found" in upnpc.c
        !           605: 
        !           606: 2008/02/03:
        !           607:   Fixing UPNP_GetValidIGD()
        !           608:   improved make install :)
        !           609: 
        !           610: 2007/12/22:
        !           611:   Adding upnperrors.c/h to provide a strupnperror() function
        !           612:   used to translate UPnP error codes to string.
        !           613: 
        !           614: 2007/12/19:
        !           615:   Fixing getDevicesFromMiniSSDPD()
        !           616:   improved error reporting of UPnP functions
        !           617: 
        !           618: 2007/12/18:
        !           619:   It is now possible to specify a different location for MiniSSDPd socket.
        !           620:   working with MiniSSDPd is now more efficient.
        !           621:   python module improved.
        !           622: 
        !           623: 2007/12/16:
        !           624:   improving error reporting
        !           625: 
        !           626: 2007/12/13:
        !           627:   Try to improve compatibility by using HTTP/1.0 instead of 1.1 and
        !           628:   XML a bit different for SOAP.
        !           629: 
        !           630: 2007/11/25:
        !           631:   fixed select() call for linux
        !           632: 
        !           633: 2007/11/15:
        !           634:   Added -fPIC to CFLAG for better shared library code.
        !           635: 
        !           636: 2007/11/02:
        !           637:   Fixed a potential socket leak in miniwget2()
        !           638: 
        !           639: 2007/10/16:
        !           640:   added a parameter to upnpDiscover() in order to allow the use of another
        !           641:   interface than the default multicast interface.
        !           642: 
        !           643: 2007/10/12:
        !           644:   Fixed the creation of symbolic link in Makefile
        !           645: 
        !           646: 2007/10/08:
        !           647:   Added man page
        !           648: 
        !           649: 2007/10/02:
        !           650:   fixed memory bug in GetUPNPUrls()
        !           651: 
        !           652: 2007/10/01:
        !           653:   fixes in the Makefile
        !           654:   Added UPNP_GetIGDFromUrl() and adapted the sample program accordingly.
        !           655:   Added SONAME in the shared library to please debian :)
        !           656:   fixed MS Windows compilation (minissdpd is not available under MS Windows).
        !           657: 
        !           658: 2007/09/25:
        !           659:   small change to Makefile to be able to install in a different location
        !           660:   (default is /usr)
        !           661: 
        !           662: 2007/09/24:
        !           663:   now compiling both shared and static library
        !           664: 
        !           665: 2007/09/19:
        !           666:   Cosmetic changes on upnpc.c
        !           667: 
        !           668: 2007/09/02:
        !           669:   adapting to new miniSSDPd (release version ?)
        !           670: 
        !           671: 2007/08/31:
        !           672:   Usage of miniSSDPd to skip discovery process.
        !           673: 
        !           674: 2007/08/27:
        !           675:   fixed python module to allow compilation with Python older than Python 2.4
        !           676: 
        !           677: 2007/06/12:
        !           678:   Added a python module.
        !           679: 
        !           680: 2007/05/19:
        !           681:   Fixed compilation under MinGW
        !           682: 
        !           683: 2007/05/15:
        !           684:   fixed a memory leak in AddPortMapping()
        !           685:   Added testupnpreplyparse executable to check the parsing of
        !           686:   upnp soap messages
        !           687:   minixml now ignore namespace prefixes.
        !           688: 
        !           689: 2007/04/26:
        !           690:   upnpc now displays external ip address with -s or -l
        !           691: 
        !           692: 2007/04/11:
        !           693:   changed MINIUPNPC_URL_MAXSIZE to 128 to accommodate the "BT Voyager 210"
        !           694: 
        !           695: 2007/03/19:
        !           696:   cleanup in miniwget.c
        !           697: 
        !           698: 2007/03/01:
        !           699:   Small typo fix...
        !           700: 
        !           701: 2007/01/30:
        !           702:   Now parsing the HTTP header from SOAP responses in order to
        !           703:   get content-length value.
        !           704: 
        !           705: 2007/01/29:
        !           706:   Fixed the Soap Query to speedup the HTTP request.
        !           707:   added some Win32 DLL stuff...
        !           708: 
        !           709: 2007/01/27:
        !           710:   Fixed some WIN32 compatibility issues
        !           711: 
        !           712: 2006/12/14:
        !           713:   Added UPNPIGD_IsConnected() function in miniupnp.c/.h
        !           714:   Added UPNP_GetValidIGD() in miniupnp.c/.h
        !           715:   cleaned upnpc.c main(). now using UPNP_GetValidIGD()
        !           716: 
        !           717: 2006/12/07:
        !           718:   Version 1.0-RC1 released
        !           719: 
        !           720: 2006/12/03:
        !           721:   Minor changes to compile under SunOS/Solaris
        !           722: 
        !           723: 2006/11/30:
        !           724:   made a minixml parser validator program
        !           725:   updated minixml to handle attributes correctly
        !           726: 
        !           727: 2006/11/22:
        !           728:   Added a -r option to the upnpc sample thanks to Alexander Hubmann.
        !           729: 
        !           730: 2006/11/19:
        !           731:   Cleanup code to make it more ANSI C compliant
        !           732: 
        !           733: 2006/11/10:
        !           734:   detect and display local lan address.
        !           735: 
        !           736: 2006/11/04:
        !           737:   Packets and Bytes Sent/Received are now unsigned int.
        !           738: 
        !           739: 2006/11/01:
        !           740:   Bug fix thanks to Giuseppe D'Angelo
        !           741: 
        !           742: 2006/10/31:
        !           743:   C++ compatibility for .h files.
        !           744:   Added a way to get ip Address on the LAN used to reach the IGD.
        !           745: 
        !           746: 2006/10/25:
        !           747:   Added M-SEARCH to the services in the discovery process.
        !           748: 
        !           749: 2006/10/22:
        !           750:   updated the Makefile to use makedepend, added a "make install"
        !           751:   update Makefile
        !           752: 
        !           753: 2006/10/20:
        !           754:   fixing the description url parsing thanks to patch sent by
        !           755:   Wayne Dawe.
        !           756:   Fixed/translated some comments.
        !           757:   Implemented a better discover process, first looking
        !           758:   for IGD then for root devices (as some devices only reply to
        !           759:   M-SEARCH for root devices).
        !           760: 
        !           761: 2006/09/02:
        !           762:   added freeUPNPDevlist() function.
        !           763: 
        !           764: 2006/08/04:
        !           765:   More command line arguments checking
        !           766: 
        !           767: 2006/08/01:
        !           768:   Added the .bat file to compile under Win32 with minGW32
        !           769: 
        !           770: 2006/07/31:
        !           771:   Fixed the rootdesc parser (igd_desc_parse.c)
        !           772: 
        !           773: 2006/07/20:
        !           774:   parseMSEARCHReply() is now returning the ST: line as well
        !           775:   starting changes to detect several UPnP devices on the network
        !           776: 
        !           777: 2006/07/19:
        !           778:   using GetCommonLinkProperties to get down/upload bitrate
        !           779: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>