Diff between 6faf16bd5a2e7209da8002c1ba5538425c6c3d08 and cfda437161f3348cc5bf4f4b6a2dc0c4767c8571

Changed Files

File Additions Deletions Status
obexd/plugins/ftp.c +3 -0 modified
obexd/plugins/opp.c +3 -0 modified
obexd/src/obex.c +0 -8 modified

Full Patch

diff --git a/obexd/plugins/ftp.c b/obexd/plugins/ftp.c
index f5a8fd0..ce5ee23 100644
--- a/obexd/plugins/ftp.c
+++ b/obexd/plugins/ftp.c
@@ -296,6 +296,9 @@ static gint ftp_chkput(obex_t *obex, obex_object_t *obj)
 	if (os == NULL)
 		return -EINVAL;
 
+	if (!os->name)
+		return -EINVAL;
+
 	if (os->size == OBJECT_SIZE_DELETE)
 		return 0;
 
diff --git a/obexd/plugins/opp.c b/obexd/plugins/opp.c
index b98145c..f8d1bf5 100644
--- a/obexd/plugins/opp.c
+++ b/obexd/plugins/opp.c
@@ -121,6 +121,9 @@ static gint opp_chkput(obex_t *obex, obex_object_t *obj)
 	if (os == NULL)
 		return -EINVAL;
 
+	if (!os->name)
+		return -EINVAL;
+
 	if (os->size == OBJECT_SIZE_DELETE)
 		return -EINVAL;
 
diff --git a/obexd/src/obex.c b/obexd/src/obex.c
index b164427..9856d65 100644
--- a/obexd/src/obex.c
+++ b/obexd/src/obex.c
@@ -643,14 +643,6 @@ static gboolean check_put(obex_t *obex, obex_object_t *obj)
 
 	OBEX_ObjectReParseHeaders(obex, obj);
 
-	if (!os->name) {
-		OBEX_ObjectSetRsp(obj, OBEX_RSP_BAD_REQUEST,
-				OBEX_RSP_BAD_REQUEST);
-		g_free(os->type);
-		os->type = NULL;
-		return FALSE;
-	}
-
 	if (!os->driver) {
 		os->driver = obex_mime_type_driver_find(os->service->target, NULL);
 		if (!os->driver) {