From 0d00c0713f31faf6d0d4cbf9edcb17bba8cab78f Mon Sep 17 00:00:00 2001 From: Johan Hedberg Date: Wed, 8 Oct 2008 16:11:37 +0200 Subject: [PATCH] obexd: We should never send an OBEX abort when we are a server. --- obexd/src/obex.c | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/obexd/src/obex.c b/obexd/src/obex.c index 3e68a6299..0168f816a 100644 --- a/obexd/src/obex.c +++ b/obexd/src/obex.c @@ -810,9 +810,18 @@ static void obex_event(obex_t *obex, obex_object_t *obj, gint mode, } break; case OBEX_EV_STREAMAVAIL: - if (obex_read_stream(os, obex, obj) < 0) { - debug("error obex_read()"); - OBEX_CancelRequest(obex, 1); + switch (obex_read_stream(os, obex, obj)) { + case 0: + break; + case -EPERM: + OBEX_ObjectSetRsp(obj, + OBEX_RSP_FORBIDDEN, OBEX_RSP_FORBIDDEN); + break; + default: + OBEX_ObjectSetRsp(obj, + OBEX_RSP_INTERNAL_SERVER_ERROR, + OBEX_RSP_INTERNAL_SERVER_ERROR); + break; } break; -- 2.47.3