diff mbox series

[v3] obex: Resolve SRM issue for PTS testcases

Message ID 20241023071448.1017724-1-quic_amisjain@quicinc.com
State New
Headers show
Series [v3] obex: Resolve SRM issue for PTS testcases | expand

Commit Message

Amisha Jain Oct. 23, 2024, 7:14 a.m. UTC
Add check for unknown/undefined srm value.

This fix is required to pass the below the PTS testcases :
1. OPP/SR/GOEP/SRM/BI-02-C
2. FTP/SR/GOEP/SRM/BI-02-C
3. PBAP/PSE/GOEP/SRM/BI-05-C

Description - Verify that the Server ignores a SRM header with an
invalid value in the PUT/GET request and carries on with the
PUT/GET operation with SRM disabled.

Current Behaviour - Server is sending SRM enable in the response even
though receiving the unknown SRM value.

To fix this, I have added the check to verify the valid SRM values
before continuing with SRM enable.

---
 gobex/gobex.c | 9 +++++++++
 1 file changed, 9 insertions(+)
diff mbox series

Patch

diff --git a/gobex/gobex.c b/gobex/gobex.c
index 40d6b8129..07e46627a 100644
--- a/gobex/gobex.c
+++ b/gobex/gobex.c
@@ -317,6 +317,15 @@  static void set_srm(GObex *obex, guint8 op, guint8 srm)
 	struct srm_config *config = obex->srm;
 	gboolean enable;
 
+	switch (srm) {
+	case G_OBEX_SRM_ENABLE:
+	case G_OBEX_SRM_DISABLE:
+	case G_OBEX_SRM_INDICATE:
+		break;
+	default:
+		return;
+	}
+
 	if (config == NULL) {
 		if (srm == G_OBEX_SRM_DISABLE)
 			return;