Re: [PATCH][ModemManager/libwmc/utils.c] more uml290 magic for ya



On Wed, 2012-03-21 at 09:07 -0700, M. I. Spozta wrote:
> Greetings,
> 
> I found this monster amidst my packet capture output. It must have
> something to do with text messaging because 900080004008 is in there
> (00000018 - 00000023 - one of the free text message numbers vzw uses to
> send account info, etc). The message was spread across three packets due
> to wMaxPacketSize of 0x200:

Yeah, I've got one of these traces in my log because the VZW connection
manager requests your current data usage via SMS whenever it starts,
apparently.  Hadn't gotten around to figuring it out yet.  Pushed to git
master and MM_06, thanks!

Dan

>     00000000: 41 54 2a 57 4d 43 3d c8 56 86 7d 22 7d 20 7d 20
>     00000010: 7d 20 7d 20 7d 20 7d 20 39 30 30 30 38 30 30 30
>     00000020: 34 30 30 38 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20
>     00000030: 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20
>     00000040: 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20
>     00000050: 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20
>     00000060: 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20
>     00000070: 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20
>     00000080: 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20
>     00000090: 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20
>     000000a0: 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20
>     000000b0: 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20
>     000000c0: 7d 20 7d 20 7d 20 7d 20 7d 24 7d 20 7d 20 7d 20
>     000000d0: 31 39 30 33 37 30 32 39 39 32 30 7d 20 7d 20 7d
>     000000e0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000000f0: 20 7d 20 7d 20 7d 20 7d 20 7d 2a 7d 20 7d 20 7d
>     00000100: 20 50 4f 55 4e 44 5f 44 41 54 41 7d 20 7d 20 7d
>     00000110: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000120: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000130: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000140: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000150: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000160: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000170: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000180: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000190: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000001a0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000001b0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000001c0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000001d0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000001e0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000001f0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
> 
>     00000000: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000010: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000020: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000030: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000040: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000050: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000060: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000070: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000080: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000090: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000000a0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000000b0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000000c0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000000d0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000000e0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000000f0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000100: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000110: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000120: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000130: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000140: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000150: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000160: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000170: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000180: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000190: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000001a0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000001b0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000001c0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000001d0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000001e0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000001f0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
> 
>     00000000: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000010: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000020: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000030: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000040: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000050: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000060: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000070: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000080: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     00000090: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000000a0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000000b0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000000c0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000000d0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000000e0: 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d 20 7d
>     000000f0: 20 7d 20 5b 7d 3c 0d
> 
> 609 0s escaped
> 3 (< 0x20 !0) escaped
> 612 total escaped
> 
> 37 non-zero and non-escaped bytes from c8 to 5b (before the crc bytes)
> inclusive
> 
> length of message:
> 
> before encapsulation 649
> after encapsulation 1232
> 
> nearly 90% longer after escaping
> 
> 1232 / 649 = 1.898305085
> 
> Perhaps callers of uml290_wmc_encapsulate() should be advised to pass a
> buffer about twice the length of the data to be encapsulated by default.
> 
> Here's presumably the response, 2.065 seconds later:
> 
>     00000000: c8 56 00 00 00 00 30 30 7e
> 
> I can email you the capture file if you'd like the context. I don't
> think this message is properly formatted for use with git diff so don't
> try to push with it. Haven't figgured out that part yet...
> 
> diff --git a/libwmc/src/utils.c b/libwmc/src/utils.c
> index 36dff6a..059038c 100644
> --- a/libwmc/src/utils.c
> +++ b/libwmc/src/utils.c
> @@ -254,7 +254,7 @@ uml290_wmc_encapsulate (char *inbuf,
> 
>      estimated_out_len = cmd_len + strlen (AT_WMC_PREFIX);
>      estimated_out_len += 3;  /* CRC + trailer */
> -    estimated_out_len += cmd_len * 1.3;  /* escaping */
> +    estimated_out_len += cmd_len * 2.0;  /* escaping 2.0 - "Escaped
> from Sanity" */
>      wmc_return_val_if_fail (outbuf_len > estimated_out_len, 0);
> 
>      memcpy (outbuf, AT_WMC_PREFIX, strlen (AT_WMC_PREFIX));
> 
> 
> Miguel
> _______________________________________________
> networkmanager-list mailing list
> networkmanager-list gnome org
> http://mail.gnome.org/mailman/listinfo/networkmanager-list




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]