Re: [PATCH v2] tools/obexctl: Add support for pull Vobjects

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

 



Hi Gowtham,

On Mon, Jun 15, 2015 at 3:12 PM, Gowtham Anandha Babu
<gowtham.ab@xxxxxxxxxxx> wrote:
> PullBusinessCard from remote push server.
>
> [obex]# connect 00:1B:DC:07:33:4E 00001105-0000-1000-8000-00805f9b34fb
> Attempting to connect to 00:1B:DC:07:33:4E
> [NEW] Session /org/bluez/obex/client/session0 [default]
> [NEW] ObjectPush /org/bluez/obex/client/session0
> Connection successful
> [00:1B:DC:07:33:4E]# pull /home/vcard.vcf
> Attempting to pull /home/vcard.vcf from /org/bluez/obex/client/session0
> [NEW] Transfer /org/bluez/obex/client/session0/transfer0
> Transfer /org/bluez/obex/client/session0/transfer0
>         Status: queued
>         Size: 0
>         Filename: /home/vcard.vcf
>         Session: /org/bluez/obex/client/session0
> [CHG] Transfer /org/bluez/obex/client/session0/transfer0 Status: complete
> [DEL] Transfer /org/bluez/obex/client/session0/transfer0
> [DEL] Session /org/bluez/obex/client/session0 [default]
> [DEL] ObjectPush /org/bluez/obex/client/session0
> ---
>  tools/obexctl.c | 37 ++++++++++++++++++++++++++++++++++++-
>  1 file changed, 36 insertions(+), 1 deletion(-)
>
> diff --git a/tools/obexctl.c b/tools/obexctl.c
> index 4faff6b..86c81d5 100644
> --- a/tools/obexctl.c
> +++ b/tools/obexctl.c
> @@ -758,7 +758,7 @@ static void send_reply(DBusMessage *message, void *user_data)
>         dbus_error_init(&error);
>
>         if (dbus_set_error_from_message(&error, message) == TRUE) {
> -               rl_printf("Failed to send: %s\n", error.name);
> +               rl_printf("Failed to send/pull: %s\n", error.name);
>                 dbus_error_free(&error);
>                 return;
>         }
> @@ -792,6 +792,23 @@ static void opp_send(GDBusProxy *proxy, int argc, char *argv[])
>                                                 g_dbus_proxy_get_path(proxy));
>  }
>
> +static void opp_pull(GDBusProxy *proxy, int argc, char *argv[])
> +{
> +       if (argc < 2) {
> +               rl_printf("Missing file argument\n");
> +               return;
> +       }
> +
> +       if (g_dbus_proxy_method_call(proxy, "PullBusinessCard", send_setup,
> +                       send_reply, g_strdup(argv[1]), g_free) == FALSE) {
> +               rl_printf("Failed to pull\n");
> +               return;
> +       }
> +
> +       rl_printf("Attempting to pull %s from %s\n", argv[1],
> +                                               g_dbus_proxy_get_path(proxy));
> +}
> +
>  static void push_reply(DBusMessage *message, void *user_data)
>  {
>         DBusMessageIter iter;
> @@ -869,6 +886,22 @@ static void cmd_send(int argc, char *argv[])
>         rl_printf("Command not supported\n");
>  }
>
> +static void cmd_pull(int argc, char *argv[])
> +{
> +       GDBusProxy *proxy;
> +
> +       if (!check_default_session())
> +               return;
> +
> +       proxy = find_opp(g_dbus_proxy_get_path(default_session));
> +       if (proxy) {
> +               opp_pull(proxy, argc, argv);
> +               return;
> +       }
> +
> +       rl_printf("Command not supported\n");
> +}
> +
>  static void change_folder_reply(DBusMessage *message, void *user_data)
>  {
>         DBusError error;
> @@ -1979,6 +2012,8 @@ static const struct {
>         { "suspend",      "<transfer>", cmd_suspend, "Suspend transfer" },
>         { "resume",       "<transfer>", cmd_resume, "Resume transfer" },
>         { "send",         "<file>",   cmd_send, "Send file" },
> +       { "pull",         "<file>",   cmd_pull,
> +                                       "Pull Vobject & stores in file" },
>         { "cd",           "<path>",   cmd_cd, "Change current folder" },
>         { "ls",           "<options>", cmd_ls, "List current folder" },
>         { "cp",          "<source file> <destination file>",   cmd_cp,
> --
> 1.9.1

Applied, thanks.


-- 
Luiz Augusto von Dentz
--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux