GNOME Bugzilla – Bug 702472
[MM 0.8] hso devices appear to support IPv6 but can't
Last modified: 2013-06-24 17:54:39 UTC
At least with the netdevice, because the custom AT command for retrieving the IP configuration doesn't support IPv6 at all, and the devices don't support DHCP on the net interface. I believe IPv6 can be used with PPP on these devices, but since the hso plugin doesn't use PPP at all, IPv6 attempts fail with: error: couldn't connect the modem: 'GDBus.Error:org.freedesktop.ModemManager1.Error.Core.Failed: Call setup failed' [mm-at-serial-port.c:408] debug_log(): (ttyHS0): --> 'AT+CGDCONT=5,"IPV6","epc.tmobile.com"<CR>' [mm-at-serial-port.c:408] debug_log(): (ttyHS0): <-- '<CR><LF>OK<CR><LF>' [option/mm-broadband-bearer-hso.c:618] authenticate(): Not using authentication [mm-serial-port.c:958] mm_serial_port_open(): (ttyHS0) device open count is 3 (open) [mm-serial-port.c:1003] mm_serial_port_close(): (ttyHS0) device open count is 2 (close) [mm-at-serial-port.c:408] debug_log(): (ttyHS0): --> 'AT$QCPDPP=5,0<CR>' [mm-at-serial-port.c:408] debug_log(): (ttyHS0): <-- '<CR><LF>OK<CR><LF>' [mm-serial-port.c:958] mm_serial_port_open(): (ttyHS0) device open count is 3 (open) [mm-serial-port.c:1003] mm_serial_port_close(): (ttyHS0) device open count is 2 (close) [mm-at-serial-port.c:408] debug_log(): (ttyHS0): --> 'AT_OWANCALL=5,1,1<CR>' [mm-at-serial-port.c:408] debug_log(): (ttyHS0): <-- '<CR><LF>OK<CR><LF>' [mm-serial-port.c:1003] mm_serial_port_close(): (ttyHS0) device open count is 1 (close) [mm-at-serial-port.c:408] debug_log(): (ttyHS0): <-- '_OWANCALL: 5, 3<CR><LF>' [mm-bearer.c:461] connect_ready(): Couldn't connect bearer '/org/freedesktop/ModemManager1/Bearer/0': 'Call setup failed' This brings up something I was thinking about during the IP-family discussion; if a device can do IPv6 via PPP but not ethernet, if the bearer requests IPv6, should we create a PPP bearer? Or should we simply mask out IPv6 on devices that can't support it on the main bearer, like hso?
> This brings up something I was thinking about during the IP-family discussion; > if a device can do IPv6 via PPP but not ethernet, if the bearer requests IPv6, > should we create a PPP bearer? Or should we simply mask out IPv6 on devices > that can't support it on the main bearer, like hso? I would simply not expose IPv6 as supported here... although the other change would actually be easier to implement.
Yeah, sounds fine for now, but lets put in a FIXME saying that we probably should create the right bearer for the requested IP family.
Created attachment 247554 [details] [review] Patch. I changed my mind and implemented the change to create a generic bearer when IPv6 is requested; let me know what you think. Seems to work well, for what I can tell.
Review of attachment 247554 [details] [review]: Looks good to me.
This problem has been fixed in the development version. The fix will be available in the next major software release. Thank you for your bug report.