]> granicus.if.org Git - apache/commitdiff
final final change to the new ap_array_str_* functions after review
authorStefan Eissing <icing@apache.org>
Thu, 3 Sep 2015 09:39:59 +0000 (09:39 +0000)
committerStefan Eissing <icing@apache.org>
Thu, 3 Sep 2015 09:39:59 +0000 (09:39 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1700968 13f79535-47bb-0310-9956-ffa450edef68

include/httpd.h
modules/http2/h2_switch.c
server/protocol.c
server/util.c

index 24e1e2d9cce12fd7486edbfd20190beddf7ffc3b..ee5034c167ac7c826d9bea612bb884ed13b56fc8 100644 (file)
@@ -2407,22 +2407,22 @@ AP_DECLARE(char *) ap_get_exec_line(apr_pool_t *p,
  * searching a start. 
  * @param array The array the check
  * @param s The string to find
- * @param start Start index for search. If start is greater or 
-                equal to array length, -1 will be returned.
+ * @param start Start index for search. If start is out of bounds (negative or  
+                equal to array length or greater), -1 will be returned.
  * @return index of string in array or -1
  */
-AP_DECLARE(int) ap_array_index(const apr_array_header_t *array, 
-                               const char *s,
-                               apr_size_t start);
+AP_DECLARE(int) ap_array_str_index(const apr_array_header_t *array, 
+                                   const char *s,
+                                   int start);
 
 /**
  * Check if the string is member of the given array by strcmp.
  * @param array The array the check
  * @param s The string to find
- * @return !=0 iff string is member of array
+ * @return !=0 iff string is member of array (via strcmp)
  */
-AP_DECLARE(int) ap_array_contains(const apr_array_header_t *array, 
-                                  const char *s);
+AP_DECLARE(int) ap_array_str_contains(const apr_array_header_t *array, 
+                                      const char *s);
 
 #ifdef __cplusplus
 }
index 4f774959e17d7ef23a9b331caae1f38708b063ce..4cdc4118b0a114546e663055f572cd98f418fd71 100644 (file)
@@ -108,7 +108,7 @@ static int h2_protocol_propose(conn_rec *c, request_rec *r,
         /* Add all protocols we know (tls or clear) and that
          * are part of the offerings (if there have been any). 
          */
-        if (!offers || ap_array_contains(offers, *protos)) {
+        if (!offers || ap_array_str_contains(offers, *protos)) {
             ap_log_cerror(APLOG_MARK, APLOG_TRACE1, 0, c,
                           "proposing protocol '%s'", *protos);
             APR_ARRAY_PUSH(proposals, const char*) = *protos;
index d78408cf2bbf1474da5c8e3f8bbf2d735bd3c1ff..014957adfadcaaf1450c285f5c579347bace6359 100644 (file)
@@ -1956,8 +1956,8 @@ static int protocol_cmp(apr_array_header_t *preferences,
                         const char *proto2)
 {
     if (preferences && preferences->nelts > 0) {
-        int index1 = ap_array_index(preferences, proto1, 0);
-        int index2 = ap_array_index(preferences, proto2, 0);
+        int index1 = ap_array_str_index(preferences, proto1, 0);
+        int index2 = ap_array_str_index(preferences, proto2, 0);
         if (index2 > index1) {
             return (index1 >= 0) ? 1 : -1;
         }
@@ -2006,8 +2006,8 @@ AP_DECLARE(const char *) ap_select_protocol(conn_rec *c, request_rec *r,
         /* If the existing protocol has not been proposed, but is a choice,
          * add it to the proposals implicitly.
          */
-        if (!ap_array_contains(proposals, existing) 
-            && ap_array_contains(choices, existing)) {
+        if (!ap_array_str_contains(proposals, existing) 
+            && ap_array_str_contains(choices, existing)) {
             APR_ARRAY_PUSH(proposals, const char*) = existing;
         }
         
@@ -2021,7 +2021,7 @@ AP_DECLARE(const char *) ap_select_protocol(conn_rec *c, request_rec *r,
         for (i = 0; i < proposals->nelts; ++i) {
             const char *p = APR_ARRAY_IDX(proposals, i, const char *);
             if (conf->protocols->nelts > 0 
-                && !ap_array_contains(conf->protocols, p)) {
+                && !ap_array_str_contains(conf->protocols, p)) {
                 /* not a permitted protocol here */
                 continue;
             }
index 21a765123556c2681042581f4755dba802f349f3..cd7997295d365d022ef00eb25bccb26112332315 100644 (file)
@@ -3149,23 +3149,27 @@ AP_DECLARE(char *) ap_get_exec_line(apr_pool_t *p,
     return apr_pstrndup(p, buf, k);
 }
 
-AP_DECLARE(int) ap_array_index(const apr_array_header_t *array, 
-                               const char *s,
-                               apr_size_t start)
-{
-    apr_size_t i;
-    for (i = start; i < array->nelts; i++) {
-        const char *p = APR_ARRAY_IDX(array, i, const char *);
-        if (!strcmp(p, s)) {
-            return (int)i;
+AP_DECLARE(int) ap_array_str_index(const apr_array_header_t *array, 
+                                   const char *s,
+                                   int start)
+{
+    if (start >= 0) {
+        int i;
+        
+        for (i = start; i < array->nelts; i++) {
+            const char *p = APR_ARRAY_IDX(array, i, const char *);
+            if (!strcmp(p, s)) {
+                return i;
+            }
         }
     }
+    
     return -1;
 }
 
-AP_DECLARE(int) ap_array_contains(const apr_array_header_t *array, 
-                                  const char *s)
+AP_DECLARE(int) ap_array_str_contains(const apr_array_header_t *array, 
+                                      const char *s)
 {
-    return (ap_array_index(array, s, 0) >= 0);
+    return (ap_array_str_index(array, s, 0) >= 0);
 }