miniupnp/miniupnp

Sagemcom BCM6846 F@st5684 gives "GetGenericPortMappingEntry() returned 713 (SpecifiedArrayIndexInvalid)"

Closed this issue · 3 comments

With a Sagemcom BCM6846 F@st5684 software version SGCA510000045 (quite a new modem?) I get the below

sander@zwart2204:~/git/miniupnp/miniupnpc$ build/upnpc-static -l
upnpc : miniupnpc library test client, version 2.2.5.
 (c) 2005-2023 Thomas Bernard.
Go to http://miniupnp.free.fr/ or https://miniupnp.tuxfamily.org/
for more information.
List of UPNP devices found on the network :
 desc: http://192.168.1.250:49152/7a573845/gatedesc0b.xml
 st: urn:schemas-upnp-org:device:InternetGatewayDevice:1

Found a (not connected?) IGD : http://192.168.1.250:49152/upnp/control/WANIPConn1
No valid UPNP Internet Gateway Device found.

Let's continue with -i ignore:

sander@zwart2204:~/git/miniupnp/miniupnpc$ build/upnpc-static -i -l
upnpc : miniupnpc library test client, version 2.2.5.
 (c) 2005-2023 Thomas Bernard.
Go to http://miniupnp.free.fr/ or https://miniupnp.tuxfamily.org/
for more information.
List of UPNP devices found on the network :
 desc: http://192.168.1.217:80/description.xml
 st: urn:schemas-upnp-org:device:basic:1

 desc: http://192.168.1.217:80/description.xml
 st: uuid:2f402f80-da50-11e1-9b23-001788721f4f

 desc: http://192.168.1.217:80/description.xml
 st: upnp:rootdevice

 desc: http://192.168.1.250:49152/7a573845/gatedesc0b.xml
 st: urn:schemas-upnp-org:device:InternetGatewayDevice:1

Found a (not connected?) IGD : http://192.168.1.250:49152/upnp/control/WANIPConn1
Trying to continue anyway
Local LAN ip address : 192.168.1.242
Connection Type : IP_Routed
Status : Connected, uptime=989s, LastConnectionError : ERROR_NONE
  Time started : Sun Jul  9 18:56:36 2023
MaxBitRateDown : 1024000000 bps (1024.0 Mbps)   MaxBitRateUp 1024000000 bps (1024.0 Mbps)
ExternalIPAddress = 100.64.192.115
 i protocol exPort->inAddr:inPort description remoteHost leaseTime
GetGenericPortMappingEntry() returned 713 (SpecifiedArrayIndexInvalid)

That 100.64.192.115 is correct, but no further luck.

Let's try -L

sander@zwart2204:~/git/miniupnp/miniupnpc$ build/upnpc-static -i -L
upnpc : miniupnpc library test client, version 2.2.5.
 (c) 2005-2023 Thomas Bernard.
Go to http://miniupnp.free.fr/ or https://miniupnp.tuxfamily.org/
for more information.
List of UPNP devices found on the network :
...
 desc: http://192.168.1.250:49152/7a573845/gatedesc0b.xml
 st: urn:schemas-upnp-org:device:InternetGatewayDevice:1

Found a (not connected?) IGD : http://192.168.1.250:49152/upnp/control/WANIPConn1
Trying to continue anyway
Local LAN ip address : 192.168.1.242
GetListOfPortMappings() returned 401 (Invalid Action)
GetListOfPortMappings() returned 401 (Invalid Action)

Let's try that first URL ... which goes OK:

sander@zwart2204:~/git/miniupnp/miniupnpc$ lynx --dump http://192.168.1.250:49152/7a573845/gatedesc0b.xml
<?xml version="1.0"?>
<root xmlns="urn:schemas-upnp-org:device-1-0">
  <specVersion>
    <major>1</major>
    <minor>0</minor>
  </specVersion>
  <device>
    <deviceType>urn:schemas-upnp-org:device:InternetGatewayDevice:1</deviceType>
    <friendlyName>Sagemcom F@st5684</friendlyName>
    <manufacturer>Sagemcom</manufacturer>
    <manufacturerURL>http://www.sagemcom.com</manufacturerURL>
    <modelDescription>Sagemcom F@st5684</modelDescription>
    <modelName>Sagemcom F@st5684</modelName>
    <modelNumber>Sagemcom F@st5684</modelNumber>
    <serialNumber>N7222109A004880</serialNumber>
    <presentationURL>http://home</presentationURL>
    <UDN>uuid:75802409-bccb-40e7-8e6c-fa095ecce13e</UDN>
    <UPC>999999999001</UPC>
    <deviceList>
      <device>
        <deviceType>urn:schemas-upnp-org:device:WANDevice:1</deviceType>
        <friendlyName>Sagemcom BCM6846</friendlyName>
        <manufacturer>Sagemcom</manufacturer>
        <manufacturerURL>http://www.sagemcom.com</manufacturerURL>
        <modelDescription>Sagemcom BCM6846</modelDescription>
        <modelName>Sagemcom BCM6846</modelName>
        <modelNumber>Sagemcom BCM6846</modelNumber>
        <modelURL>Sagemcom BCM6846</modelURL>
        <serialNumber>N7222109A004880</serialNumber>
        <presentationURL>http://home</presentationURL>
        <UDN>uuid:75802409-bccb-40e7-8e6c-fa095ecce13f</UDN>
        <UPC>999999999001</UPC>
        <serviceList>
          <service>
            <serviceType>urn:schemas-upnp-org:service:WANCommonInterfaceConfig:1</serviceType>
            <serviceId>urn:upnp-org:serviceId:WANCommonIFC1</serviceId>
            <controlURL>/upnp/control/WANCommonIFC1</controlURL>
            <eventSubURL>/upnp/control/WANCommonIFC1</eventSubURL>
            <SCPDURL>/7a573845/wancomicfgSCPD.xml</SCPDURL>
          </service>
        </serviceList>
        <deviceList>
          <device>
            <deviceType>urn:schemas-upnp-org:device:WANConnectionDevice:1</deviceType>
            <friendlyName>Sagemcom BCM6846</friendlyName>
            <manufacturer>Sagemcom</manufacturer>
            <manufacturerURL>http://www.sagemcom.com</manufacturerURL>
            <modelDescription>Sagemcom BCM6846</modelDescription>
            <modelName>Sagemcom BCM6846</modelName>
            <modelNumber>Sagemcom BCM6846</modelNumber>
            <modelURL>http://sagemcom.home</modelURL>
            <serialNumber>N7222109A004880</serialNumber>
            <presentationURL>http://192.168.1.1</presentationURL>
            <UDN>uuid:75802409-bccb-40e7-8e6c-fa095ecce140</UDN>
            <UPC>999999999001</UPC>
            <serviceList>
              <service>
                <serviceType>urn:schemas-upnp-org:service:WANIPConnection:1</serviceType>
                <serviceId>urn:upnp-org:serviceId:WANIPConn1</serviceId>
                <controlURL>/upnp/control/WANIPConn1</controlURL>
                <eventSubURL>/upnp/control/WANIPConn1</eventSubURL>
                <SCPDURL>/7a573845/wanipconnSCPD.xml</SCPDURL>
              </service>
            </serviceList>
          </device>
        </deviceList>
      </device>
    </deviceList>
  </device>
</root>

... good.

Let's try that second URL:

sander@zwart2204:~/git/miniupnp/miniupnpc$ lynx --dump http://192.168.1.250:49152/upnp/control/WANIPConn1
                                 404 Not Found

Not good.

Wait ... if I ignore the errors, it seems to work:

sander@brixit:~$ upnpc -i -r 8080 tcp
upnpc : miniupnpc library test client, version 2.2.3.
 (c) 2005-2021 Thomas Bernard.
Go to http://miniupnp.free.fr/ or https://miniupnp.tuxfamily.org/
for more information.
List of UPNP devices found on the network :
 desc: http://192.168.1.250:49152/7a573845/gatedesc0b.xml
 st: urn:schemas-upnp-org:device:InternetGatewayDevice:1

Found a (not connected?) IGD : http://192.168.1.250:49152/upnp/control/WANIPConn1
Trying to continue anyway
Local LAN ip address : 192.168.1.236
ExternalIPAddress = 100.64.192.115
InternalIP:Port = 192.168.1.236:8080
external 100.64.192.115:8080 TCP is redirected to internal 192.168.1.236:8080 (duration=0)

and the port forwarding is there:

sander@brixit:~$ upnpc -i -l
upnpc : miniupnpc library test client, version 2.2.3.
 (c) 2005-2021 Thomas Bernard.
Go to http://miniupnp.free.fr/ or https://miniupnp.tuxfamily.org/
for more information.
List of UPNP devices found on the network :
 desc: http://192.168.1.250:49152/7a573845/gatedesc0b.xml
 st: urn:schemas-upnp-org:device:InternetGatewayDevice:1

Found a (not connected?) IGD : http://192.168.1.250:49152/upnp/control/WANIPConn1
Trying to continue anyway
Local LAN ip address : 192.168.1.236
Connection Type : IP_Routed
Status : Connected, uptime=3511s, LastConnectionError : ERROR_NONE
  Time started : Sun Jul  9 18:56:36 2023
MaxBitRateDown : 1024000000 bps (1024.0 Mbps)   MaxBitRateUp 1024000000 bps (1024.0 Mbps)
ExternalIPAddress = 100.64.192.115
 i protocol exPort->inAddr:inPort description remoteHost leaseTime
 0 TCP  8080->192.168.1.236:8080  'libminiupnpc' '' 0
GetGenericPortMappingEntry() returned 713 (SpecifiedArrayIndexInvalid)

GetGenericPortMappingEntry() returned 713 (SpecifiedArrayIndexInvalid) is ok if the index is indeed invalid.