RE: [PATCH 2/2] obexd/ftp: Update ftp transfer progress

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

 



Hi,

> -----Original Message-----
> From: linux-bluetooth-owner@xxxxxxxxxxxxxxx [mailto:linux-bluetooth-
> owner@xxxxxxxxxxxxxxx] On Behalf Of Bharat Panda
> Sent: Tuesday, October 28, 2014 7:24 PM
> To: linux-bluetooth@xxxxxxxxxxxxxxx
> Cc: cpgs@xxxxxxxxxxx; Bharat Panda
> Subject: [PATCH 2/2] obexd/ftp: Update ftp transfer progress
> 
> Adds support for updating file transfer progress for FTP
> ---
>  obexd/plugins/ftp.c | 21 ++++++++++++++++++++-  obexd/plugins/ftp.h |
> 1 +
>  2 files changed, 21 insertions(+), 1 deletion(-)
> 
> diff --git a/obexd/plugins/ftp.c b/obexd/plugins/ftp.c index
> 773861d..2004a77 100644
> --- a/obexd/plugins/ftp.c
> +++ b/obexd/plugins/ftp.c
> @@ -59,6 +59,7 @@ static const uint8_t FTP_TARGET[TARGET_SIZE] = {
> 
>  struct ftp_session {
>  	struct obex_session *os;
> +	struct obex_transfer *transfer;
>  	char *folder;
>  };
> 
> @@ -116,6 +117,8 @@ void *ftp_connect(struct obex_session *os, int *err)
>  	if (err)
>  		*err = 0;
> 
> +	ftp->transfer = manager_register_transfer(os);
> +
>  	DBG("session %p created", ftp);
> 
>  	return ftp;
> @@ -136,6 +139,9 @@ int ftp_get(struct obex_session *os, void *user_data)
>  	if (ret < 0)
>  		return ret;
> 
> +	if (type == NULL)
> +		manager_emit_transfer_started(ftp->transfer);
> +
>  	return 0;
>  }
> 
> @@ -181,6 +187,9 @@ int ftp_chkput(struct obex_session *os, void
> *user_data)
> 
>  	ret = obex_put_stream_start(os, path);
> 
> +	if (ret == 0)
> +		manager_emit_transfer_started(ftp->transfer);
> +
>  	g_free(path);
> 
>  	return ret;
> @@ -471,10 +480,19 @@ void ftp_disconnect(struct obex_session *os, void
> *user_data)
> 
>  	manager_unregister_session(os);
> 
> +	manager_unregister_transfer(ftp->transfer);
> +
>  	g_free(ftp->folder);
>  	g_free(ftp);
>  }
> 
> +void ftp_progress(struct obex_session *os, void *user_data) {
> +	struct ftp_session *ftp = user_data;
> +
> +	manager_emit_transfer_progress(ftp->transfer);
> +}
> +
>  static struct obex_service_driver ftp = {
>  	.name = "File Transfer server",
>  	.service = OBEX_FTP,
> @@ -486,7 +504,8 @@ static struct obex_service_driver ftp = {
>  	.chkput = ftp_chkput,
>  	.setpath = ftp_setpath,
>  	.action = ftp_action,
> -	.disconnect = ftp_disconnect
> +	.disconnect = ftp_disconnect,
> +	.progress = ftp_progress
>  };
> 
>  static int ftp_init(void)
> diff --git a/obexd/plugins/ftp.h b/obexd/plugins/ftp.h index
> f06de84..c0e97a7 100644
> --- a/obexd/plugins/ftp.h
> +++ b/obexd/plugins/ftp.h
> @@ -28,3 +28,4 @@ int ftp_put(struct obex_session *os, void *user_data);
> int ftp_setpath(struct obex_session *os, void *user_data);  void
> ftp_disconnect(struct obex_session *os, void *user_data);  int
> ftp_action(struct obex_session *os, void *user_data);
> +void ftp_progress(struct obex_session *os, void *user_data);
> --
> 1.9.1


Please ignore this patch because of wrong patch sequencing.

BR,
Bharat

--
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