UPnP IGD implementation http://miniupnp.free.fr/
Go to file
Pali Rohár bfbe42d392 miniupnpc: Fix usage of IP_MULTICAST_IF with struct ip_mreqn
When struct ip_mreqn is passed to IP_MULTICAST_IF setsockopt option it is
always required to set also ipv4 source address. Otherwise Linux kernel
will choose default system multicast ipv4 address which does not have to
belong to chosen interface specified in struct ip_mreqn.

Therefore on system with more multicast interfaces and more ipv4 addresses,
it may happen that interface chosen by upnpc -m option would use ipv4
address which does not belong to this interface.

This change is fixing above issue and ensure that if interface is chosen by
upnpc -m option then source address which belongs to this interface would
be used.

Without this change upnpc -m eth1 can send multicast traffic over interface
eth1 but with source ipv4 address of interface eth0, which obviously would
be rejected by upnp gateway.
2021-01-04 00:29:58 +01:00
.github/workflows mingw32: build resources for .dll 2020-11-30 01:21:26 +01:00
minissdpd 2019 => 2020 2020-10-31 11:36:06 +01:00
miniupnpc miniupnpc: Fix usage of IP_MULTICAST_IF with struct ip_mreqn 2021-01-04 00:29:58 +01:00
miniupnpc-async update miniupnpc-async/minixml.h 2019-04-23 13:23:07 +02:00
miniupnpc-libevent miniupnpc-libevent: update minixml.c/.h 2019-04-23 13:31:50 +02:00
miniupnpc-libuv Check command line, clean warnings. 2019-02-12 15:46:48 +01:00
miniupnpd miniupnpd: version 2.2.1 2020-12-20 19:12:47 +01:00
.gitlab-ci.yml update CI scripts 2020-05-02 18:26:46 +02:00
.travis.yml Fix compilation on Travis, add missing WINDRES 2020-12-12 12:41:37 +01:00
CODE_OF_CONDUCT simple CODE_OF_CONDUCT 2017-07-05 23:53:58 +02:00
CONTRIBUTING add CONTRIBUTING file 2017-07-05 23:50:21 +02:00
LICENSE 2019 => 2020 2020-10-31 11:36:06 +01:00
README update thanks list 2020-10-07 00:19:45 +02:00
SECURITY.md Update SECURITY.md 2020-11-11 16:11:09 +01:00
appveyor.yml appveyor: python in path 2020-05-06 23:55:10 +02:00
miniupnp.podspec Fix: change dylib id to use @rpath. 2017-05-17 12:56:01 +02:00

README

 -= MiniUPnP project =-

Main author : Thomas BERNARD

Web site : http://miniupnp.free.fr/ or https://miniupnp.tuxfamily.org/
Gitlab : https://framagit.org/miniupnp/miniupnp/
Github : https://github.com/miniupnp/miniupnp/
Travis CI : https://travis-ci.org/miniupnp/miniupnp
Appveyor : https://ci.appveyor.com/project/miniupnp/miniupnp

miniupnpc/ : MiniUPnP client - an UPnP IGD control point
miniupnpd/ : MiniUPnP daemon - an implementation of a UPnP IGD
                               + NAT-PMP / PCP gateway
minissdpd/ : SSDP managing daemon. Designed to work with miniupnpc,
             miniupnpd, ReadyMedia (formerly MiniDLNA), etc.
miniupnpc-async/    : Proof of concept for a UPnP IGD control point using
                      asynchronous (non blocking) sockets.
miniupnpc-libevent/ : UPnP IGD control point using libevent2
                      http://libevent.org/

Thanks to :
    * Ryan Wagoner
    * João Paulo Barraca
    * Craig Kadziolka
    * Seth Mos
    * Rick Richard
    * Michael van Tellingen
    * Julien Wajsberg
    * Jeremy Collake
    * Matthew Sporleder
    * Greg Hazel
    * Rico Huber
    * Jelle Huitema
    * Xavier Martin
    * Thomas Goirand
    * Darren Reed
    * Robbie Hanson
    * Nikos Mavrogiannopoulos
    * Elsö András
    * Justin Maggard
    * David Wu
    * Michael Trebilcock
    * Soren Dreijer
    * Colin McFarlane
    * Daniel Dickinson
    * Guillaume Habault
    * Alexey Osipov
    * Alexey Kuznetsov
    * Chiaki Ishikawa
    * David Kerr
    * Jardel Weyrich
    * Leah X. Schmidt
    * Peter Tatrai
    * Leo Moll
    * Daniel Becker
    * Yonetani Tomokazu
    * Markus Stenberg
    * Tomofumi Hayashi
    * Konstantin Tokarev
    * Mike Tzou
    * Nevo Hed
    * Salva Peiró
    * Stephan Zeisberg
    * Ben Barnea of VDOO
    * Sven Auhagen
    * Paul Chambers
    * Pali Rohár