]> granicus.if.org Git - apache/commitdiff
Cure size_t abuse; Backport r1227856
authorWilliam A. Rowe Jr <wrowe@apache.org>
Fri, 6 Jan 2012 16:51:55 +0000 (16:51 +0000)
committerWilliam A. Rowe Jr <wrowe@apache.org>
Fri, 6 Jan 2012 16:51:55 +0000 (16:51 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1228262 13f79535-47bb-0310-9956-ffa450edef68

include/http_protocol.h
modules/proxy/ajp_msg.c
modules/proxy/mod_proxy.h
modules/proxy/proxy_util.c

index 77493de586697633f9469b9fc376caa81b0a9c5b..377b8f1248c36bdc4fb5554aa81c56a8d95f7d81 100644 (file)
@@ -209,8 +209,10 @@ AP_DECLARE(apr_status_t) ap_send_fd(apr_file_t *fd, request_rec *r, apr_off_t of
  * @param length The amount of data to send
  * @return The number of bytes sent
  */
-AP_DECLARE(size_t) ap_send_mmap(apr_mmap_t *mm, request_rec *r, size_t offset,
-                             size_t length);
+AP_DECLARE(apr_size_t) ap_send_mmap(apr_mmap_t *mm,
+                                    request_rec *r,
+                                    apr_size_t offset,
+                                    apr_size_t length);
 #endif
 
 
index 69e232a39447be1d0e10131264c760d2f5391055..638dfee2d8c5a99002615ccf77128f2f061b08ad 100644 (file)
@@ -326,7 +326,7 @@ apr_status_t ajp_msg_append_uint8(ajp_msg_t *msg, apr_byte_t value)
 apr_status_t ajp_msg_append_string_ex(ajp_msg_t *msg, const char *value,
                                       int convert)
 {
-    size_t len;
+    apr_size_t len;
 
     if (value == NULL) {
         return(ajp_msg_append_uint16(msg, 0xFFFF));
index 3cc5ed83d76ee5256071d718ba2457063c765083..285de4222c6258f395b365745264d168fff2acc9 100644 (file)
@@ -522,7 +522,8 @@ APR_DECLARE_EXTERNAL_HOOK(proxy, PROXY, int, request_status,
 
 /* proxy_util.c */
 
-PROXY_DECLARE(apr_status_t) ap_proxy_strncpy(char *dst, const char *src, size_t dlen);
+PROXY_DECLARE(apr_status_t) ap_proxy_strncpy(char *dst, const char *src,
+                                             apr_size_t dlen);
 PROXY_DECLARE(int) ap_proxy_hex2c(const char *x);
 PROXY_DECLARE(void) ap_proxy_c2hex(int ch, char *x);
 PROXY_DECLARE(char *)ap_proxy_canonenc(apr_pool_t *p, const char *x, int len, enum enctype t,
index e975af94bc201fec2d36d16f3943019be04217a8..2fa2d7e2f197f9fc411aff8cf25b733fd790c2df 100644 (file)
@@ -78,13 +78,15 @@ APR_IMPLEMENT_OPTIONAL_HOOK_RUN_ALL(proxy, PROXY, int, create_req,
                                    (request_rec *r, request_rec *pr), (r, pr),
                                    OK, DECLINED)
 
-PROXY_DECLARE(apr_status_t) ap_proxy_strncpy(char *dst, const char *src, size_t dlen)
+PROXY_DECLARE(apr_status_t) ap_proxy_strncpy(char *dst, const char *src,
+                                             apr_size_t dlen)
 {
     if ((strlen(src)+1) > dlen) {
-        /* APR_ENOSPACE would be better */
+        /* XXX: APR_ENOSPACE would be better */
         return APR_EGENERAL;
     }
     else {
+        /* XXX: Once slen and dlen are known, no excuse not to memcpy */
         apr_cpystrn(dst, src, dlen);
     }
     return APR_SUCCESS;
@@ -921,14 +923,14 @@ PROXY_DECLARE(const char *) ap_proxy_cookie_reverse_map(request_rec *r,
     proxy_req_conf *rconf = ap_get_module_config(r->request_config,
                                                  &proxy_module);
     struct proxy_alias *ent;
-    size_t len = strlen(str);
+    apr_size_t len = strlen(str);
     const char *newpath = NULL;
     const char *newdomain = NULL;
     const char *pathp;
     const char *domainp;
     const char *pathe = NULL;
     const char *domaine = NULL;
-    size_t l1, l2, poffs = 0, doffs = 0;
+    apr_size_t l1, l2, poffs = 0, doffs = 0;
     int i;
     int ddiff = 0;
     int pdiff = 0;