File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / miniupnpd / Changelog.txt
Revision 1.1.1.3 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Mon Jul 22 00:32:35 2013 UTC (11 years, 5 months ago) by misho
Branches: miniupnpd, elwix, MAIN
CVS tags: v1_8p0, v1_8, HEAD
1.8

    1: $Id: Changelog.txt,v 1.1.1.3 2013/07/22 00:32:35 misho Exp $
    2: 
    3: VERSION 1.8 : released on 2013/02/06
    4: 
    5: 2013/02/06:
    6:   Check source address of incomining HTTP connections and SSDP
    7:     packets in order to filter out WAN SSDP and HTTP trafic.
    8:   Implement get_src_for_route_to() for *BSD
    9:   fix 2 potential memory leaks in GetListOfPortMappings()
   10: 
   11: 2013/01/29:
   12:   upnphttp.c: Fix and comment the findendheaders() function
   13:   upnphttp.c: remove strchr() call in ParseHttpHeaders()
   14:     add comments to explain how buffer is checked before calls
   15:     to ParseHttpHeaders()
   16: 
   17: 2013/01/27:
   18:   upnphttp.c: ParseHttpHeaders() now checks atoi() return
   19: 
   20: 2012/12/11:
   21:   More return value check for malloc() and realloc()
   22: 
   23: 2012/10/23:
   24:   minor modifications to linux/getroute.c and testgetroute.c
   25: 
   26: 2012/10/04:
   27:   updated DEFAULTCONNECTIONSERVICE_MAGICALVALUE for IGDv2
   28:   increased default buffer size for HTTP response
   29:   More argument check for SOAP actions in UPNP_STRICT mode
   30:   Better error checking after connect() in upnpevent
   31: 
   32: 2012/10/03:
   33:   Fix atoi() on null pointer in upnpsoap.c
   34:   properly set service/device version in SSDP messages
   35:   fix newSubscriber() for IP6FirewallControl and DeviceProtection services
   36:   Enforce compliance for SUBSCRIBE messages (UPNP_STRICT mode)
   37:   Enforce compliance for UNSUBSCRIBE messages (UPNP_STRICT mode)
   38:   Ignore "-Wmissing-field-initializers" in upnpdescgen.c
   39:   check size of h->res_buf before building HTTP response
   40:   ENABLE_HTTP_DATE : add a Date: header to all HTTP responses
   41: 
   42: 2012/09/27:
   43:   Fixes with DISABLE_CONFIG_FILE
   44:   and UPNP_STRICT
   45:   UPC must be a 12 decimal digit code
   46:   SetDefaultConnectionService() checks its argumnents in UPNP_STRICT mode
   47:   Support for Accept-Language/Content-Language HTTP headers
   48:   Content-Type is now text/xml; charset="utf-8" to conform with UDA v1.1
   49:   Support Expect: 100-continue for POST HTTP requests
   50:   Manage services/devices versions in minissdp.c
   51:   Rename all include guards to not clash with C99.
   52:    (7.1.3 Reserved identifiers)
   53: 
   54: 2012/09/20:
   55:   Cleaning code in ipfw (Jardel Weyrich)
   56: 
   57: 2012/09/18:
   58:   Fixing a bug in clean_pinhole_list() under linux/netfilter
   59: 
   60: 2012/09/15:
   61:   Adding an informational message at startup
   62: 
   63: 2012/08/24:
   64:   Moved man page to section 8. miniupnpd.1 => miniupnpd.8
   65:   Added install of miniupnpd.8 man page in Makefile.linux
   66: 
   67: 2012/08/10:
   68:   improved SubmitServicesToMiniSSDPD() function fiability
   69: 
   70: 2012/07/17:
   71:   Add -A command line option to add permission rules
   72: 
   73: 2012/07/14:
   74:   Add -z command line option to change friendly name (thanks to Shawn Fisher)
   75: 
   76: 2012/06/29:
   77:   added DISABLE_CONFIG_FILE in options.h to disable miniupnpd.conf parsing
   78:   Add command line parsing for clean_ruleset_interval option
   79: 
   80: 2012/06/28:
   81:   Only activate -L option for PF and IPF
   82:   -a option takes two arguments with MULTIPLE_EXTERNAL_IP defined
   83: 
   84: 2012/06/23:
   85:   in UPNP_STRICT mode, the literal IPv6 address in "location:" of SSDP
   86:   messages is the source address used to send the message
   87: 
   88: 2012/06/08:
   89:   Disable -ansi CFLAGS in Makefile.linux because recent iptables headers
   90:   make use of typeof keyword which is a GCC extension.
   91: 
   92: 2012/05/31:
   93:   Improvements in autodetecting firewall under (Free)BSD
   94: 
   95: 2012/05/28:
   96:   Cleanup HTTP request handling. Answer 405 when relevant
   97: 
   98: VERSION 1.7 : released the 2012/05/28
   99: 
  100: 2012/05/28:
  101:   clean linux/ifacewatcher.c
  102:   set natpmp socket non blocking
  103: 
  104: 2012/05/24:
  105:   More solaris fixes
  106: 
  107: 2012/05/21:
  108:   Clean signal handling
  109: 
  110: 2012/05/08:
  111:   Clean expired IPv6 pinholes correctly. and also with linux/netfilter.
  112: 
  113: 2012/05/07:
  114:   Finalizing netfilter version of get_pinhole_info()
  115: 
  116: 2012/05/01:
  117:   Move IPv6FirewallControl related code from upnpredirect.c to upnppinhole.c
  118:   Add netfilter implementation for
  119:     delete_pinhole()/update_pinhole()/get_pinhole_info()
  120: 
  121: 2012/04/30:
  122:   Clean up settings of CFLAGS in Makefile's
  123:   Remove Warnings caused by signed/unsigned integer comparaisons
  124:   Also fix a couple of integer/pointer comparaisons.
  125:   Add UNUSED(arg) macro to remove unused argument warning.
  126:   Fix error handling in upnpevents.c (was causing segfault on Solaris !)
  127: 
  128: 2012/04/26:
  129:   Started to implement add_pinhole() for netfilter (linux)
  130: 
  131: 2012/04/25:
  132:   Fixed a bug in upnphttp that happened when POST is received in several
  133:   recv() calls and realloc() is called so the buffer used is moved.
  134: 
  135: 2012/04/23:
  136:   Implement CheckPinholeWorking GetPinholePackets. WANIPv6FirewallControl
  137:   UpdatePinhole still to be done. And also netfilter/ipf/ipfw versions
  138: 
  139: 2012/04/20:
  140:   Enough WANIPv6FirewallControl is implemented on pf so that AddPinhole() and
  141:     DeletePinhole() works !
  142: 
  143: 2012/04/19:
  144:   First working experiment of IPv6 "pinhole" with pf
  145: 
  146: 2012/04/15:
  147:   More C++ => ANSI C comments to compile with -ansi option
  148:   Add command line arguments to genconfig.sh config script.
  149: 
  150: 2012/04/12:
  151:   Set TTL on SSDP Notify sockets (IPv4). TTL is set to 2 (recommendation from
  152:     UPnP Device Architecture v1.1)
  153: 
  154: 2012/04/06:
  155:   Implementing IPv6 support :
  156:     Send SSDP NOTIFY ssdp:alive and ssdp:goodbye messages in IPv6.
  157:   Use UPnP/1.1 in SERVER: string as required in UPnP Device architecture 1.1.
  158:   Allow LAN interface to be given as interface names, instead of interface
  159:     IP addresses. It will allow IPv6 operations.
  160:   fix linux/getifstats.c when bitrate is unknown
  161: 
  162: 2012/03/31:
  163:   Only remove pidfile if one was written in the first place.
  164: 
  165: 2012/03/19:
  166:   Fix ipfilter support (thanks dhowland https://github.com/dhowland)
  167: 
  168: 2012/03/14:
  169:   Changes to miniupnpd.init.d.script by Shawn Landden
  170: 
  171: 2012/03/05:
  172:   fixed reload_from_lease_file().
  173: 
  174: 2012/02/15:
  175:   Change parselanaddr() function to allow 192.168.1.1/255.255.255.0 in
  176:     configuration file.
  177:   Change read_permission_line() to allow 192.168.1.1/255.255.255.0 in
  178:     permission line (in configuration file).
  179: 
  180: 2012/02/12:
  181:   More syntax checks in upnppermissions.c
  182: 
  183: 2012/02/11:
  184:   Fix ipfw/Mac OS X specific source files to compile ok with -ansi flag
  185: 
  186: 2012/02/09:
  187:   Make HTTP listen socket non blocking (so accept() can't block)
  188:   Make SSDP receive sockets non blocking
  189:   use sockaddr_to_string() in SendSSDPAnnonce2 to handle IPv6 addresses
  190: 
  191: 2012/02/06:
  192:   Make HTTP (SOAP) sockets non blocking.
  193: 
  194: 2012/02/05:
  195:   Compile ok with -ansi flag.
  196:   Save a few bytes in options.c using a string repository, instead of a fixed size
  197:     buffer for each option value.
  198: 
  199: 2012/02/04:
  200:   Added friendly_name= option to config file
  201: 
  202: 2012/02/03:
  203:   Anchor name (PF) is now configurable through the config file with anchor=
  204:   Added test of presence of /lib/libip4tc.so and /lib/libip6tc.so files in
  205:     Makefile.linux in order to add -lip4tc and -lip6tc to LIBS accordingly.
  206: 
  207: 2012/02/01:
  208:   always handle EAGAIN, EWOULDBLOCK and EINTR after recv()/recvfrom() calls
  209: 
  210: 2012/01/20:
  211:   Always #include <netinet/in.h> before #include <arpa/inet.h> (for OpenBSD)
  212:   .onrdomain field was added in pf with OpenBSD 5.0. Add PFRULE_HAS_ONRDOMAIN
  213: 
  214: 2012/01/02:
  215:   Fixing netfilter/iptables_*.sh scripts for new ifconfig output format.
  216:   getifaddr.c: added additional checks on structure returned by getifaddrs()
  217:   Fixing Mac OS X makefile for installation
  218: 
  219: 2011/11/18:
  220:   avoid infinite loop in SendResp_upnphttp() in case of error
  221:   Replaced SendResp_upnphttp() + CloseSocket_upnphttp() by
  222:     SendRespAndClose_upnphttp()
  223:   Tomato specifics in genconfig.sh
  224: 
  225: 2011/07/30:
  226:   netfilter : Added a tiny_nf_nat.h file to compile with iptables
  227:     installed headers.
  228:     include xtables.h instead of iptables.h
  229: 
  230: VERSION 1.6 : released the 2011/07/25
  231: 
  232: 2011/07/25:
  233:   Update doc for version 1.6
  234: 
  235: 2011/07/15:
  236:   Fixing code with MULTIPLE_EXTERNAL_IP defined.
  237: 
  238: 2011/06/27:
  239:   IPv6 support for UPnP events.
  240:   Security checks in UPnP events.
  241: 
  242: 2011/06/22:
  243:   Remote host for GetListOfPortMappings
  244:   Remote host support for ipfw (tested on Mac OS X)
  245: 
  246: 2011/06/20:
  247:   support for iptables-1.4.11.1
  248: 
  249: 2011/06/18:
  250:   Remote host support for pf version
  251: 
  252: 2011/06/04:
  253:   Supporting RemoteHost (mandatory in IGD v2)
  254: 
  255: 2011/06/03:
  256:   Enabling events by default
  257: 
  258: 2011/06/01:
  259:   Fixing Timeout missing in SUBSCRIBE renewal responses
  260:   (thanks to Pranesh Kulkarni)
  261:   Added comments about changes between IGD v1 and IGD v2
  262: 
  263: 2011/05/28:
  264:   Description and leaseduration kept in ipfw version of the code.
  265:   Fixing ipfw code after testing under Mac OS X 10.6.7 (darwin 10.7.0)
  266: 
  267: 2011/05/27:
  268:   Finishing and testing LeaseDuration support under OpenBSD.
  269:   Changing NAT-PMP port mapping lifetime support to match
  270:   lease duration support.
  271:   NAT-PMP address change announce broadcasted to both port
  272:   5350 and 5351 to be compatible with client following the
  273:   version of NAT PMP specification from 2008 or earlier.
  274:   writepidfile() Overwrite file if already existing
  275: 
  276: 2011/05/26:
  277:   fix in linux/getifstats.c.
  278:   See http://miniupnp.tuxfamily.org/forum/viewtopic.php?p=2212
  279:   Implementation of LeaseDuration support.
  280: 
  281: 2011/05/23:
  282:   added get_wan_connection_status_str()
  283: 
  284: 2011/05/20:
  285:   adding ifacewatcher thanks to Alexey Osipov
  286:   GET /DP.xml is now available. The description has to be completed.
  287: 
  288: 2011/05/19:
  289:   Add getconnstatus.c/.h. Dont always have ConnectionStatus to "Connected"
  290:   Events for WANIPv6FirewallControll
  291: 
  292: 2011/05/16:
  293:   patches for gentoo linux.
  294:   generation of the DeviceProtection service description.
  295: 
  296: 2011/05/15:
  297:   Making the SSDP receiving socket work in IPv6 !
  298: 
  299: 2011/05/14:
  300:   Support for HTTP in both IPv6 and IPv4.
  301:   IPv6 for SSDP receiving socket.
  302: 
  303: 2011/05/13:
  304:   add new options in genconfig.sh (IGD_V2, ENABLE_DP_SERVICE)
  305:   add global vars ipv6fc_firewall_enabled and ipv6fc_inbound_pinhole_allowed
  306:   have MACROS for magical values in upnpdescgen.c, add eventing vars for WanIPv6FirewallControl.
  307:   applied 0001-Cosmetic-changes.patch(see http://miniupnp.tuxfamily.org/forum/viewtopic.php?t=764)
  308:   applied 0002-Remove-lan-addresses-limit-by-changing-storage-type-.patch
  309:   replaced some of the urn:schemas-upnp-org:device:* literal strings by macros.
  310:   adding some support for IP v6. #define ENABLE_IPV6
  311:   added -fno-strict-aliasing to compile options.
  312: 
  313: 2011/05/09:
  314:   updating upnp descriptions for IGDv2
  315: 
  316: 2011/05/07:
  317:   Adding WANIPv6FirewallContro to upnp description
  318: 
  319: 2011/04/30:
  320:   adding a UPNP_STRICT config macro. Use it now for checking RemoteHost.
  321:   ENABLE_6FC_SERVICE : add the implementations of WANIPv6FirewallControl actions
  322: 
  323: 2011/04/11:
  324:   preparing getifaddr() for IP v6
  325:   preparing SSDP stuff for IP v6. Trying to conform to UDA v1.1
  326: 
  327: 2011/03/09:
  328:   Some modifications thanks to Daniel Dickinson to improve OpenWRT
  329:   build.
  330:   Fixed some warnings.
  331: 
  332: 2011/03/03:
  333:   Added code to generate devices/services descriptions for IGD v2
  334:   (to be continued)
  335: 
  336: 2011/03/02:
  337:   improved netfilter/delete_redirect_and_filter_rules() in order
  338:   to remove the right filter rule, even if it has another index than
  339:   the nat rule.
  340: 
  341: 2011/03/01:
  342:   clean up an fixes to make netfilter/testiptcrdr compile
  343: 
  344: 2011/02/21:
  345:   Make "Makefile" work under Mac OS X with bsdmake.
  346:   added get_portmappings_in_range() in ipfwrdr.c
  347: 
  348: 2011/02/07:
  349:   added get_portmappings_in_range() / upnp_get_portmappings_in_range()
  350: 
  351: 2011/02/06:
  352:   Implementation of GetListOfPortMappings
  353: 
  354: 2011/01/27:
  355:   Reverting "fixes" done in linux/iptables code the 2010/09/27.
  356:   see http://miniupnp.tuxfamily.org/forum/viewtopic.php?t=741
  357: 
  358: 2011/01/04:
  359:   added MINIUPNPD_VERSION in config.h. Taken from VERSION file.
  360: 
  361: VERSION 1.5 : released the 2011/01/01
  362: 
  363: 2011/01/01:
  364:   Started to implement some of the new methods from WANIPConnection v2
  365: 
  366: 2010/09/27:
  367:   Some fixes in the linux/iptables code when
  368:   miniupnpd_nat_chain <> miniupnpd_forward_chain
  369: 
  370: 2010/09/21:
  371:   Patch to support nfqueue thanks to Colin McFarlane
  372: 
  373: 2010/08/07:
  374:   Update Mac OS X / ipfw stuff from Jardel Weyrich
  375:   Fix in Makefile.linux for x86_64
  376: 
  377: 2010/05/06:
  378:   Bugfix un CleanNATPMPRules() : see http://miniupnp.tuxfamily.org/forum/viewtopic.php?t=640
  379: 
  380: 2010/03/14:
  381:   Fixing natpmp sockets.
  382: 
  383: 2010/03/08:
  384:   Fix Makefile.linux to compile properly under Mandriva/rh/Fedora with
  385:     Iptables >= 1.4.3
  386:   Workaround for bad uptime when started with a bad time set.
  387: 
  388: 2010/03/07:
  389:   Tried to make a OpenBSD version 4.7 compatible code... still some
  390:   issues.
  391: 
  392: 2010/03/06:
  393:   updates to testobsdrdr
  394: 
  395: 2010/03/03:
  396:   -lip4tc in Makefile.linux.
  397: 
  398: 2010/02/15:
  399:   some more error handling in set_startup_time()
  400:   silencing some warnings
  401: 
  402: 2010/01/14:
  403:   Open Several sockets for NAT-PMP to make sure the source address
  404:   of NAT-PMP replies is right.
  405:   see http://miniupnp.tuxfamily.org/forum/viewtopic.php?t=609
  406: 
  407: 2009/12/31:
  408:   miniupnpdctl now output command line arguments.
  409:   added a -h option to get help. improved help.
  410: 
  411: 2009/12/22:
  412:   using PRIu64 format to printf u_int64_t
  413:   Fixing calls to get_redirect_rule_by_index() : ifname should be initialized.
  414:   Add header lines to miniupnpdctl output
  415: 
  416: 2009/11/06:
  417:   implementing sending of ip address change notification when receiving
  418:     the signal SIGUSR1
  419: 
  420: VERSION 1.4 : released the 2009/10/30
  421: 
  422: 2009/10/10:
  423:   Integrate IPfilter patch from Roy Marples.
  424:   Fix Netfilter code for old netfilter :
  425:     see http://miniupnp.tuxfamily.org/forum/viewtopic.php?t=584
  426:   trim the description string in reload_from_lease_file()
  427: 
  428: 2009/09/21:
  429:   Fixing unclosed raw sockets bug with netfilter code.
  430: 
  431: 2009/09/04:
  432:   Fixes in ipf code thanks to Roy Marples
  433:   Enable DragonFly BSD Support thanks to Roy Marples.
  434:   Allow packager to define default location of config file via CFLAGS
  435:   Respect $DESTDIR when installing
  436: 
  437: 2009/08/20:
  438:   Adding some support for MacOS X and IPFW
  439:   SO_REUSEADDR in minissdp.c for SSDP listening socket
  440: 
  441: 2009/06/05:
  442:   unlink lease file in reload_from_lease_file()
  443: 
  444: 2009/05/16:
  445:   Fixed a buffer overflow in ProcessSSDPRequest()
  446: 
  447: 2009/05/11:
  448:   improving genconfig.sh for NetBSD : detecting use of pf or ipf
  449: 
  450: VERSION 1.3 :
  451: 2009/04/17:
  452:   working support for iptables >= 1.4.3
  453: 
  454: 2009/04/13:
  455:   work to support iptables-1.4.3 and up
  456: 
  457: 2009/04/10:
  458:   fix in upnpevents_removeSubscriber()
  459: 
  460: 2009/02/14:
  461:   added reload_from_lease_file()
  462: 
  463: 2009/02/13:
  464:   Changes in upnpdescgen.c to allow to remove empty elements
  465:   strcasecmp instead of strcmp on path comparaisons to allow
  466:   bugged clients to work
  467: 
  468: 2009/01/29:
  469:   Some minor changes to Makefile
  470:   improving Makefile.linux in order to build with iptables not properly
  471:   installed on the system.
  472: 
  473: 2009/01/23:
  474:   Fixing upnpevents thanks to Justin Maggard
  475: 
  476: 2008/10/15:
  477:   getifstats() return -1 when supplied with bad arguments
  478: 
  479: 2008/10/11:
  480:   Fixed NAT-PMP response when IP not allocated to external interface
  481: 
  482: 2008/10/09:
  483:   adding testgetifaddr
  484:   Reporting Unconnected status when the "external interface" has
  485:   no IP address assigned. Also added some comments
  486: 
  487: VERSION 1.2 :
  488: 
  489: 2008/10/07:
  490:   updating docs
  491: 
  492: 2008/10/06:
  493:   MiniUPnPd is now able to use MiniSSDPd to manage SSDP M-SEARCH answering
  494: 
  495: 2008/10/03:
  496:   You can now let miniupnpd choose itself the HTTP port used.
  497: 
  498: 2008/10/01:
  499:   Improvements in genconfig.sh for detecting ipf or pf (under FreeBSD)
  500:   and improve debian/ubuntu stuff.
  501:   custom chain name patch from :
  502:     http://miniupnp.tuxfamily.org/forum/viewtopic.php?t=493
  503: 
  504: 2008/08/24:
  505:   added USE_IFNAME_IN_RULES macro that can be disabled in order to
  506:   remove interface name from rules.
  507: 
  508: 2008/07/10:
  509:   Fixed compilation without ENABLE_L3F_SERVICE
  510: 
  511: 2008/04/27:
  512:   correct UNSUBSCRIBE processing
  513: 
  514: 2008/04/25(bis):
  515:   changed iptables_removeall.sh and iptables_init.sh in order
  516:   to remove IP from the rules
  517: 
  518: VERSION 1.1 :
  519: 
  520: 2008/04/25:
  521:   Eventing is allmost completly implemented
  522: 
  523: 2008/04/24:
  524:   Correct event handling ?
  525: 
  526: 2008/04/08:
  527:   enabling tag in PF rules. quick can be set off.
  528: 
  529: 2008/03/13:
  530:   implementing event notify
  531: 
  532: 2008/03/11:
  533:   fixing a command line parsing error
  534: 
  535: 2008/03/09:
  536:   optimisations in upnpsoap.c
  537: 
  538: 2008/03/08:
  539:   optimizing upnpsoap.c for size
  540: 
  541: 2008/03/06:
  542:   Worked on the Eventing : generating XML event notifications
  543:     Send initial notification after subscribe
  544:   Improved pretty print of testupnpdescgen
  545:   Reduced Memory usage of upnpdescgen
  546:   fixed a small bug in the description
  547: 
  548: 2008/03/03:
  549:   Fixed miniupnpd.c for compiling without natpmp support
  550:   fixed presentationURL not there with L3F
  551:   fixing lease file creation/modification
  552: 
  553: 2008/02/25:
  554:   Rewrite of Send501() and Send404()
  555:   More work on events
  556:   genconfig.sh autodetects pf/ipf
  557: 
  558: 2008/02/24:
  559:   Started to implement UPnP Events. do NOT use it at the moment !
  560: 
  561: 2008/02/21:
  562:   Added support for the Layer3Forwarding Service
  563:   added init_redirect() and shutdown_redirect() functions
  564: 
  565: 2008/02/20:
  566:   Removed Ext: HTTP header when useless
  567:   enabled the dummy service by default to please windows XP !
  568: 
  569: 2008/02/07:
  570:   upnp_enable patch by Nikos Mavrogiannopoulos.
  571:   lease_file patch by Nikos Mavrogiannopoulos.
  572: 
  573: 2008/01/29:
  574:   some changes to Makefile.openwrt
  575:   use daemon() - daemonize() is still available for systems lacking daemon()
  576: 
  577: VERSION 1.0 :
  578: 2008/01/27:
  579:   moved lan_addr to upnpglobalvars.h/.c
  580:   Adding experimental multiple external IP support.
  581: 
  582: 2008/01/22:
  583:   removed dummy service from description to improve compatibility
  584:   with emule client
  585:   Add "secure mode". put runtime flags in the same variable
  586: 
  587: 2008/01/14:
  588:   Fixed a bug in options.c for the parsing of empty lines.
  589: 
  590: 2008/01/03:
  591:   Fixed CleanExpiredNATPMP()
  592: 
  593: 2008/01/02:
  594:   Adding a queue parameter for setting ALTQ in pf
  595: 
  596: 2007/12/27:
  597:   improving some stuff with the PF_ENABLE_FILTER_RULE.
  598: 
  599: 2007/12/22:
  600:   Adding a runtime option to enable/disable NAT-PMP
  601: 
  602: 2007/12/20:
  603:   Added a cache in linux getifstats(). Please enable by editing config.h
  604: 
  605: 2007/12/14:
  606:   Updating an existing NAT-PMP mapping now works
  607: 
  608: 2007/12/13:
  609:   NAT-PMP code now remove expired mappings
  610:   TCP/UDP where swapped in NAT-PMP code
  611: 
  612: 2007/12/04:
  613:   Adding details to the error message for sendto(udp_notify)
  614: 
  615: 2007/11/27:
  616:   pf code doesn't generate filter rules by default anymore. The
  617:   #ifdef PF_ENABLE_FILTER_RULES must be uncommented in config.h.
  618: 
  619: 2007/11/02:
  620:   moved some of the prototypes common to all firewalls to commonrdr.h
  621:   Added functionalities to NAT-PMP
  622: 
  623: 2007/11/01:
  624:   Debugged NAT-PMP code
  625: 
  626: 2007/10/28:
  627:   Cleaning and improving NAT-PMP code
  628: 
  629: 2007/10/25:
  630:   improved the NAT-PMP experimental support
  631:   updated README and INSTALL files
  632: 
  633: 2007/10/24:
  634:   Adding support for NAT-PMP (from apple !)
  635: 
  636: 2007/10/11:
  637:   Checking the commandline for errors.
  638: 
  639: 2007/10/08:
  640:   Improved the BSD/Solaris Makefile
  641:   Merging last code from Darren Reed. Solaris/IPF should work now !
  642:   added a man page.
  643: 
  644: 2007/10/07:
  645:   Adding Darren Reed code for ipf.
  646: 
  647: 2007/10/06:
  648:   Adding SunOS support thanks to Darren Reed.
  649:   Reorganizing os/firewall dependent code thanks to Darren Reed.
  650: 
  651: 2007/09/27:
  652:   linux make install support PREFIX variable
  653: 
  654: 2007/09/25:
  655:   reorganizing LAN sockets/address to improve multi LAN support.
  656:   SSDP announces are sent to all configured networks.
  657:   SSDP responses are "customized" by subnetwork.
  658: 
  659: 2007/09/24:
  660:   prototype code to remove unused rules
  661:   miniupnpdctl now display current rules
  662:   synchronised add_filter_rule2() prototype between pf and netfilter code.
  663: 
  664: 2007/09/19:
  665:   Correctly filling the Cache-control header in SSDP packets
  666: 
  667: 2007/08/28:
  668:   update PFRULE_INOUT_COUNTS detection for FreeBSD
  669: 
  670: 2007/08/27:
  671:   update version in genconfig.sh
  672:   do not error when a duplicate redirection is requested.
  673: 
  674: 2007/07/16:
  675:   really fixed the compilation bug with linux>=2.6.22
  676: 
  677: 2007/07/04:
  678:   fixed an error in options.c that prevented to use packet_log option
  679: 
  680: 2007/07/03:
  681:   improved genconfig.sh
  682:   fixed a compilation bug with linux>=2.6.22
  683: 
  684: 2007/06/22:
  685:   added PFRULE_INOUT_COUNTS macro to enable separate in/out packet and
  686:   bytes counts in pf for OpenBSD >= 3.8
  687: 
  688: 2007/06/15:
  689:   removed a possible racecondition in writepidfile()
  690: 
  691: 2007/06/12:
  692:   improved genconfig.sh : no more "echo -e", use lsb_release when available
  693: 
  694: 2007/06/11:
  695:   get_redirect_rule*() functions now return some statistics about
  696:   rule usage (bytes and packets)
  697: 
  698: 2007/06/07:
  699:   Fixed the get_redirect_desc() in the linux/netfilter code
  700: 
  701: 2007/06/05:
  702:   Clean up init code in miniupnpd.c
  703:   Added a syslog message in SoapError()
  704: 
  705: 2007/06/04:
  706:   Now store redirection descriptions in the linux/netfilter code
  707: 
  708: 2007/05/21:
  709:   Answers to SSDP M-SEARCH requests with ST: ssdp:all
  710:   added make install to Makefile.linux
  711: 
  712: 2007/05/10:
  713:   Fixed a bug int the DeletePortMapping linux/netfilter implementation
  714:   It was allways the 1st rule that was deleted.
  715: 
  716: 2007/04/26:
  717:   Fixed config.h.openwrt
  718: 
  719: 2007/04/16:
  720:   added something in the INSTALL file about the FreeBSD send(udp_notify)
  721:   problem fix (allowing 239.0.0.0/8 explicitely in pf.conf)
  722: 
  723: 2007/03/30:
  724:   added setsockopt(s, SOL_SOCKET, SO_BROADCAST ...) for broadcasting
  725:   socket
  726: 
  727: 2007/03/17:
  728:   Fixed filter rule under linux : it was using wrong port !
  729:   thanks to Wesley W. Terpstra
  730: 
  731: 2007/03/01:
  732:   Moved some of the SSDP code from miniupnpd.c to minissdp.c
  733: 
  734: 2007/02/28:
  735:   creating miniupnpdctl
  736: 
  737: 2007/02/26:
  738:   use LOG_MINIUPNPD macro for openlog()
  739:   simplify miniupndShutdown()
  740: 
  741: 2007/02/09:
  742:   improved genconfig.h
  743:   Added stuff to change the pf rule "rdr" to "rdr pass"
  744: 
  745: 2007/02/07:
  746:   Corrected Bytes per seconds to bits per second.
  747:   Ryan cleaned up comments and typos.
  748:   Ryan cleaned up daemonize stuff.
  749:   Ryan added possibility to configure model number and serial number
  750: 
  751: 2007/01/30:
  752:   ryan improved the robustness of most UPnP Soap methods
  753:   I added a target in the Makefiles to properly generate an uuid using
  754:   command line tools.
  755:   Improved configuration file parsing.
  756: 
  757: 2007/01/29:
  758:   Adding uuid option in miniupnpd.conf
  759: 
  760: 2007/01/27:
  761:   Added upnppermissions stuff : adding some security to UPnP !
  762:   fixed XML description thanks to Ryan Wagoner
  763:   improved QueryStateVariable thanks to Ryan Wagoner
  764: 
  765: 2007/01/22:
  766:   use getifaddr() for each GetExtenalIPAddress() Call.
  767:   We can change the ip during execution without pb
  768: 
  769: 2007/01/17:
  770:   Lots of code cleanup
  771: 
  772: 2007/01/12:
  773:   Fixed a nasty bug in the linux/netfilter version of get_filter_rule()
  774: 
  775: 2007/01/11:
  776:   Improved the handling of the miniupnpd.conf file.
  777:   added -f option to choose which config file to read.
  778: 
  779: 2007/01/10:
  780:   Fixed potential bugs with ClearNameValueList()
  781: 
  782: 2007/01/08:
  783:   All by Ryan Wagoner :
  784:   - coding style and comments cleanup
  785:   - using now option file miniupnpd.conf
  786: 
  787: 2007/01/03:
  788:   changed "xx active incoming HTTP connections" msg
  789: 
  790: 2007/01/02:
  791:   Patch from Ryan Wagoner :
  792:   - no need to open sockets if we can't set the error handlers
  793:   - format the usage so it fits nicely on a standard size terminal
  794:   - fix up log_err message so they have the same format and you know what
  795:     they are related to
  796:   - use same "white space" style throughout
  797:   - on shutdown no need to continue if opening socket or setsockopt fails
  798: 
  799: 2006/12/14:
  800:   reduce amount of log lines (keeping the same information)
  801: 
  802: 2006/12/07:
  803:   Fixed Makefiles
  804:   fixed typos in logs
  805:   version 1.0-RC1 released
  806: 
  807: 2006/12/02:
  808:   moved strings from upnpdescgen.c to upnpdescstrings.h for
  809:   easier modification
  810:   Server: HTTP header now comes from a #define
  811:   added a compilation-time generated config.h
  812: 
  813: 2006/11/30:
  814:   minixml updated. should have no impact
  815:   Added support for presentationURL with -w switch
  816:   implemented getifstats() for linux. Added testgetifstats program
  817:   improved error handling in getifstats() BSD
  818: 
  819: 2006/11/26:
  820:   no need to have miniupnpc sources to compile miniupnpd.
  821:   Makefile.openwrt updated
  822:   Closing sockets on exit thanks to Ryan Wagoner
  823: 
  824: 2006/11/23:
  825:   now handling signal SIGINT
  826:   setting HTTP socket with REUSEADDR thanks to Ryan Wagoner
  827:   daemon now tested on a Linksys WRT54G device running OpenWRT !
  828: 
  829: 2006/11/21:
  830:   disabling rtableid in pf code.
  831: 
  832: 2006/11/22:
  833:   Also responds on M-SEARCH with the uuid
  834: 
  835: 2006/11/20:
  836:   gaining some space in upnpsoap.c
  837: 
  838: 2006/11/19:
  839:   Cleaning up code to comply with ANSI C89
  840: 
  841: 2006/11/17:
  842:   Linux version now deleting both nat and accept rules
  843:   implemented -U option under Linux
  844: 
  845: 2006/11/16:
  846:   implemented delete_redirect_rule() for linux
  847:   returning error 714 in DeletePortMapping() when needed
  848: 
  849: 2006/11/12:
  850:   The linux/netfilter version should now WORK !
  851:   fix in the writepidfile() function. open with a mode !
  852: 
  853: 2006/11/10:
  854:   fixing the XML description generation for big endian machines
  855:   working on the linux/netfilter port
  856: 
  857: 2006/11/09:
  858:   improved a lot the handling of HTTP error cases
  859: 
  860: 2006/11/08:
  861:   Tried to make the Makefile compatible with both BSDmake
  862:   and GNUmake. It was hard because of $^ and $<
  863: 
  864: 2006/11/07:
  865:   Makefile compatible with BSD make
  866:   make install target.
  867:   getifstats.c compatible with both OpenBSD and FreeBSD.
  868: 
  869: 2006/11/06:
  870:   added getifstats.c for openBSD. May not work under FreeBSD ?
  871:   now reports bytes/packets sent/received
  872:   reporting bitrates
  873:   possibility to report system uptime
  874: 
  875: 2006/10/29:
  876:   added a -L option to enable loggin (is off by default now).
  877: 
  878: 2006/10/28:
  879:   Patch by Ryan Wagoner to correct the XML description (was NewUpTime
  880:   instead of NewUptime) and implement uptime.
  881:   Trying to fix the memory leak. Added some comments
  882:   added a -d option for debugging purpose
  883:   Tnaks to valgrind (under linux!) I removed a small memory access error.
  884: 
  885: 2006/10/27:
  886:   Thanks to a patch sent by Michael van Tellingen, miniupnpd is
  887:   now ignoring NOTIFY packets sent by other devices and is
  888:   writing is own pid to /var/run/miniupnpd.pid
  889: 
  890: 2006/10/23:
  891:   Allways set sendEvents="no" in XML description (was causing
  892:   pb with winXP as SUBSCRIBE is not implemented)
  893: 
  894: 2006/10/22:
  895:   added translation from hostname to IP in the AddPortMapping() method
  896:   Thanks to Ryan Wagoner.
  897: 
  898: 2006/10/18:
  899:   Added an INSTALL file
  900: 
  901: 2006/10/13:
  902:   Added the possibility to change the notify interval
  903: 
  904: 2006/09/29:
  905:   Improved compliance of the XML Descriptions
  906:   pretty print for testupnpdescgen
  907: 
  908: 2006/09/25:
  909:   improved the Error 404 response.
  910:   Better serviceType and serviceId for dummy service...
  911: 
  912: 2006/09/24:
  913:   updating the XML description generator
  914: 
  915: 2006/09/18:
  916:   Thanks to Rick Richard, support for SSDP "alive" and "byebye" notifications
  917:   was added. The -u options was also added. The SSDP response are now
  918:   improved.
  919:   The -o option is now working (to force a specific external IP address).
  920:   The Soap Methods errors are correctly responded (401 Invalid Action)
  921: 
  922: 2006/09/09:
  923:   Added code to handle filter rules. Thanks to Seth Mos (pfsense.com)
  924:   storing the descriptions in the label of the rule
  925: 
  926: 2006/09/02:
  927:   improved the generation of the XML descriptions.
  928:   I still need to add allowed values to variables.
  929: 
  930: 2006/07/29:
  931:   filtering SSDP requests and responding with same ST: field
  932: 
  933: 2006/07/25:
  934:   Added a dummy description for the WANDevice
  935: 
  936: 2006/07/20:
  937:   Command line arguments processing
  938:   Added possibility to listen internally on several interfaces
  939: 

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