[PATCH v2] libmbim-glib: mbim-device: Print parsed packet even for unmatched transaction

Prathmesh Prabhu Chromium pprabhu at chromium.org
Wed Jun 18 07:30:50 PDT 2014


Hi Aleksander/Dan,

Any comments? This has been useful to debug some mismatched transactions
issues locally.

Thanks,
Prathmesh


On Mon, Jun 16, 2014 at 2:44 PM, <pprabhu at chromium.org> wrote:

> From: Prathmesh Prabhu <pprabhu at chromium.org>
>
> diff --git a/src/libmbim-glib/mbim-device.c
> b/src/libmbim-glib/mbim-device.c
> index 6f965e9..9464042 100644
> --- a/src/libmbim-glib/mbim-device.c
> +++ b/src/libmbim-glib/mbim-device.c
> @@ -417,12 +417,13 @@ static void
>  process_message (MbimDevice  *self,
>                   const MbimMessage *message)
>  {
> +    gboolean is_partial_fragment;
> +
> +    is_partial_fragment = (_mbim_message_is_fragment (message) &&
> +                           _mbim_message_fragment_get_total (message) >
> 1);
> +
>      if (mbim_utils_get_traces_enabled ()) {
>          gchar *printable;
> -        gboolean is_partial_fragment;
> -
> -        is_partial_fragment = (_mbim_message_is_fragment (message) &&
> -                               _mbim_message_fragment_get_total (message)
> > 1);
>
>          printable = __mbim_utils_str_hex (((GByteArray *)message)->data,
>                                            ((GByteArray *)message)->len,
> @@ -468,8 +469,18 @@ process_message (MbimDevice  *self,
>              /* Grab transaction */
>              tr = device_match_transaction (self, TRANSACTION_TYPE_HOST,
> message);
>              if (!tr) {
> +                gchar *printable;
> +
>                  g_debug ("[%s] No transaction matched in received
> message",
>                           self->priv->path_display);
> +                /* Attempt to print a user friendly dump of the packet
> anyway */
> +                printable = mbim_message_get_printable (message, ">>>>>>
> ", is_partial_fragment);
> +                if (printable) {
> +                    g_debug ("[%s] Received unexpected message
> (translated)...\n%s",
> +                             self->priv->path_display,
> +                             printable);
> +                    g_free (printable);
> +                }
>                  return;
>              }
>
> --
> 2.0.0.526.g5318336
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/modemmanager-devel/attachments/20140618/916bfe17/attachment-0001.html>


More information about the ModemManager-devel mailing list