Comment 4 for bug 1454625

Revision history for this message
Tony Espy (awe) wrote :

Attached is the NetworkManager dispatch script which is supposed to add the MMS Proxy route. This script is part of the lxc-android-config package. I've verified that it exists in our vivid images. For some reason it appears to be broken.

The script is passed the modem_path ( env:DEVICE_IPATH ) and connection ( env:CONNECTION_ID). If either is 'None', the script silently fails. Next it validates both to ensure that they start with "/", if they don't it again silently fails.

Next it does a synchronous DBus call to ConnectionContext.GetProperties() in order to grab 'Settings', and in turn 'Gateway' ( for logging ).

If 'MessageProxy' is found, it's used for new route, else if 'MessageCenter' is found, it's used instead.

The script then attempts to resolve the hostname using socket.gethostbyname(). I *think* this is a no-op if the MessageProxy is specified as dotted network address instead of a hostname.

The script then uses subprocess.call() to add the route. No error checking is done for the "ip route" command.

The bulk of the logic is surrounding by a try/catch block, which does log a "failed to add route" message, however I'm not seeing this in my syslog, so I believe the failure is earlier in the script itself, or maybe the dispatch mechanism isn't properly triggering the script?

I think with some additional logging we should be able to pinpoint the failure...