httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dean Gaudet <dgau...@arctic.org>
Subject [PATCH] 1.2: "DoS" attack
Date Tue, 30 Dec 1997 18:15:09 GMT
Otherwise known as "O(n^2) loops are lame".

Dean

Index: src/util.c
===================================================================
RCS file: /export/home/cvs/apache/src/util.c,v
retrieving revision 1.52.2.2
diff -u -r1.52.2.2 util.c
--- util.c	1997/06/27 01:47:47	1.52.2.2
+++ util.c	1997/12/30 18:09:15
@@ -328,14 +328,22 @@
     }
 } 
 
-void no2slash(char *name) {
-    register int x,y;
+void no2slash(char *name)
+{
+    char *d, *s;
 
-    for(x=0; name[x];)
-        if(x && (name[x-1] == '/') && (name[x] == '/'))
-            for(y=x+1;name[y-1];y++)
-                name[y-1] = name[y];
-	else x++;
+    s = d = name;
+    while (*s) {
+        if ((*d++ = *s) == '/') {
+            do {
+                ++s;
+            } while (*s == '/');
+        }
+        else {
+            ++s;
+        }
+    }
+    *d = '\0';
 }
 
 char *make_dirstr(pool *p, const char *s, int n) {



Mime
View raw message