RE: [RESEND PATCH v2] obex: Send response to client for Abort request

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

 



Hi Luiz,

> -----Original Message-----
> From: Luiz Augusto von Dentz <luiz.dentz@xxxxxxxxx>
> Sent: Monday, April 21, 2025 7:57 PM
> To: Amisha Jain (QUIC) <quic_amisjain@xxxxxxxxxxx>
> Cc: linux-bluetooth@xxxxxxxxxxxxxxx; Mohammed Sameer Mulla (QUIC)
> <quic_mohamull@xxxxxxxxxxx>; Harish Bandi (QUIC)
> <quic_hbandi@xxxxxxxxxxx>; Anubhav Gupta (QUIC)
> <quic_anubhavg@xxxxxxxxxxx>
> Subject: Re: [RESEND PATCH v2] obex: Send response to client for Abort
> request
> 
> Hi Amisha,
> 
> On Mon, Apr 21, 2025 at 1:58 AM Amisha Jain <quic_amisjain@xxxxxxxxxxx>
> wrote:
> >
> > Incase of ongoing transfer, If the client sends Abort request, Server
> > is not sending any response back.
> >
> > Ideally it should send OK or Success reponse code for the abort command.
> >
> > This is required in PTS testing for passing below testcases -
> > 1) OPP/SR/OPH/BV-27-I
> > To verify that a server can respond to an ABORT from the client during an
> OBEX operation.
> > 2)FTP/SR/OTR/BV-02-C
> > To verify that the pushed file is aborted normally.
> > 3)PBAP/PSE/PDF/BV-06-I
> > Verify that the PCE can abort a Phone Book object download from the PSE.
> > 4)PBAP/PSE/PBF/BV-03-I
> > Verify that the PCE can abort a vCard-listing object download from the PSE.
> >
> > ---
> >  obexd/src/obex.c | 2 ++
> >  1 file changed, 2 insertions(+)
> >
> > diff --git a/obexd/src/obex.c b/obexd/src/obex.c index
> > 370bfac9e..0330d5a7c 100644
> > --- a/obexd/src/obex.c
> > +++ b/obexd/src/obex.c
> > @@ -389,6 +389,8 @@ static void transfer_complete(GObex *obex, GError
> > *err, gpointer user_data)
> >
> >         if (err != NULL) {
> >                 error("transfer failed: %s\n", err->message);
> > +               if (strcmp(err->message, "Request was aborted") == 0)
> > +                       os_set_response(os, 0);
> 
> We shouldn't be checking the error message but rather check the error code
> G_OBEX_ERROR_CANCELLED, that said I wonder why this is not being
> handled directly in the likes of gobex/gobex-transfer.c:transfer_abort_req, but
> it looks like it responding already:
> 

Yes, code is present to send OK response in gobex/gobex-transfer.c:transfer_abort_req, but response is not being sent at all after Abort and hence testcases are failing.

>     rsp = g_obex_packet_new(G_OBEX_RSP_SUCCESS, TRUE,
> G_OBEX_HDR_INVALID);
>     g_obex_send(obex, rsp, NULL);
> 
> >                 goto reset;
> >         }
> >
> > --
> > 2.34.1
> >
> >
> 
> 
> --
> Luiz Augusto von Dentz




[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