<p dir="ltr">The struct is messed up, holding an uint32 instead of an ipv4element struct<br>
</p>
<div class="quote">Den 13 mar 2015 05:06 skrev Peter Gerten <peter.gerten@googlemail.com>:<br type='attribution'><blockquote class="quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">For the IPv4 configuration, I get the correct gateway and DNS information but the IP address always is "24.0.0.0". Not sue what causes that. Any idea?<br /><div><div><div><br /></div><div>Peter<br /><br /></div><div><div class="elided-text">On Fri, Mar 13, 2015 at 4:29 AM, Markus Gothe <span dir="ltr"><<a href="mailto:nietzsche@lysator.liu.se">nietzsche@lysator.liu.se</a>></span> wrote:<br /><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb( 204 , 204 , 204 );padding-left:1ex">I actually dug into 'umbim config' today... Yes IPv6 won't work at all... I decided to hide the problem behind a curtain. ;-)<br />
<br />
Well IIRC the struct might have some problems. I will check tomorrow. OK?<br />
<br />
//M - The panamahat hacker<br />
Den 12 mar 2015 14:31 skrev Bjørn Mork <<a href="mailto:bjorn@mork.no">bjorn@mork.no</a>>:<br />
<div><div>><br />
> Peter Gerten <<a href="mailto:peter.gerten@googlemail.com">peter.gerten@googlemail.com</a>> writes:<br />
><br />
> > There is actually code for MBIM_CID_IP_CONFIGURATION in the umbim source<br />
> > but it is not used in the connection script. I tried to add it and it gets<br />
> > DNS and gateway configuration right, but the IP address if wrong (I only<br />
> > tested ipv4 configuration, nor sure if ipv6 works).<br />
><br />
> Yes, I noticed that as well a while ago.  Actually went as far as<br />
> thinking I could fix it.  That's when I discovered the design thinko in<br />
> the data/<a href="http://gen-header.pl">gen-header.pl</a> script: They try to convert every MBIM message<br />
> into a static sized struct.<br />
><br />
> That will obviously never work for any message with variable sized<br />
> fields.  At least not any message varying at multiple places, and not<br />
> just the end.  The MBIM_CID_IP_CONFIGURATION reply is a very complex<br />
> message, with flags indicating the presence of IPv4 and/or IPv6 data,<br />
> and each of those sets containing multple variable length arrays of<br />
> addresses.  You just cannot create a single struct matching that...<br />
><br />
> But that's what they try to do:<br />
><br />
> struct mbim_basic_connect_ip_configuration_r {<br />
>         uint32_t sessionid;<br />
>         /* enum MbimIPConfigurationAvailableFlag */<br />
>         uint32_t ipv4configurationavailable;<br />
>         /* enum MbimIPConfigurationAvailableFlag */<br />
>         uint32_t ipv6configurationavailable;<br />
>         uint32_t ipv4addresscount;<br />
>         /* struct mbimipv4element */<br />
>         uint32_t ipv4address;<br />
>         uint32_t ipv6addresscount;<br />
>         /* struct mbimipv6element */<br />
>         uint32_t ipv6address;<br />
>         /* array type: ref-ipv4 */<br />
>         uint32_t ipv4gateway;<br />
>         /* array type: ref-ipv6 */<br />
>         uint32_t ipv6gateway;<br />
>         uint32_t ipv4dnsservercount;<br />
>         /* array type: ipv4-array */<br />
>         uint32_t ipv4dnsserver;<br />
>         uint32_t ipv6dnsservercount;<br />
>         /* array type: ipv6-array */<br />
>         uint32_t ipv6dnsserver;<br />
>         uint32_t ipv4mtu;<br />
>         uint32_t ipv6mtu;<br />
> } __attribute__((packed));<br />
><br />
> Not really a show stopper.  Anything can be fixed.  It just wasn't the<br />
> quick fix I imagined it would be, so I decided to let it be.<br />
><br />
</div></div>> > I would actually love to use mbimcli instead of umbim on OpenWRT but<br />
> > currently do not know an easy way on how to do that.<br />
><br />
> Nor do I...<br />
><br />
> Fixing up umbim looks most promising, despite the issues mentioned. It<br />
> would be great if you were able to help doing that.<br />
><br />
> > I noticed Aleksander's blog post about a version with integrated<br />
> > ModemManager - unfortunately it seems to be very outdated now (<br />
> > <a href="https://sigquit.wordpress.com/2013/02/14/modemmanager-and-latest-udev-in-openwrt/">https://sigquit.wordpress.com/2013/02/14/modemmanager-and-latest-udev-in-openwrt/</a><br />
> > ).<br />
><br />
> Yes.  But knowing the OpenWRT concerns about any size overhead (they<br />
> even delete most of the kernel module meta-data!), it is proably a waste<br />
> of time updating it.  They will want umbim anyway, because of the<br />
> footprint.<br />
><br />
> Bjørn<br />
> _______________________________________________<br />
> libmbim-devel mailing list<br />
> <a href="mailto:libmbim-devel@lists.freedesktop.org">libmbim-devel@lists.freedesktop.org</a><br />
> <a href="http://lists.freedesktop.org/mailman/listinfo/libmbim-devel">http://lists.freedesktop.org/mailman/listinfo/libmbim-devel</a><br />
</blockquote></div><br /></div></div></div></div>
</blockquote></div>