info: strip trailing slashes from the command
authorFerry Huberts <ferry.huberts@pelagic.nl>
Tue, 8 Mar 2016 15:39:04 +0000 (16:39 +0100)
committerFerry Huberts <ferry.huberts@pelagic.nl>
Wed, 9 Mar 2016 12:01:13 +0000 (13:01 +0100)
Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
lib/info/olsrd_info.c

index 102d0ba..2599474 100644 (file)
@@ -344,6 +344,14 @@ static char * stripEOLs(char * requ, size_t *len) {
   return requ;
 }
 
+static char * stripTrailingSlashes(char * requ, size_t *len) {
+  while ((requ[*len - 1] == '/') && (requ[*len - 1] != '\0')) {
+    *len = *len - 1;
+    requ[*len] = '\0';
+  }
+  return requ;
+}
+
 static char * cutAtFirstEOL(char * requ, size_t *len) {
   char * s = requ;
   size_t l = 0;
@@ -401,6 +409,7 @@ static char * parseRequest(char * requ, size_t *len) {
 
   /* strip req of trailing EOL and whitespace */
   req = stripEOLs(req, len);
+  req = stripTrailingSlashes(req, len);
 
   return req;
 }