From b0236dd2042056a8fb1cef8e253c628a6d11d6fd Mon Sep 17 00:00:00 2001 From: doganyazar Date: Mon, 3 Jan 2011 23:49:16 +0000 Subject: [PATCH] Added support for Uri_Query option --- apps/rest-coap/coap-server.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/apps/rest-coap/coap-server.c b/apps/rest-coap/coap-server.c index 9caee7464..03d4e98d1 100644 --- a/apps/rest-coap/coap-server.c +++ b/apps/rest-coap/coap-server.c @@ -92,6 +92,9 @@ parse_message(coap_packet_t* packet, uint8_t* buf, uint16_t size) if (current_option->option == Option_Type_Uri_Path) { packet->url = (char*)current_option->value; packet->url_len = current_option->len; + } else if (current_option->option == Option_Type_Uri_Query){ + packet->query = (char*)current_option->value; + packet->query_len = current_option->len; } PRINTF("OPTION %d %u %s \n", current_option->option, current_option->len, current_option->value); @@ -115,7 +118,9 @@ parse_message(coap_packet_t* packet, uint8_t* buf, uint16_t size) } /*FIXME url is not decoded - is necessary?*/ - if (packet->url) { + + /*If query is not already provided via Uri_Query option then check URL*/ + if (packet->url && !packet->query) { if ((packet->query = strchr(packet->url, '?'))) { uint16_t total_url_len = packet->url_len; /*set query len and update url len so that it does not include query part now*/