]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
misc: better random strings
authorHarry Sintonen <sintonen@iki.fi>
Tue, 12 Sep 2023 10:51:21 +0000 (13:51 +0300)
committerDaniel Stenberg <daniel@haxx.se>
Sat, 16 Sep 2023 09:37:57 +0000 (11:37 +0200)
Generate alphanumerical random strings.

Prior this change curl used to create random hex strings. This was
mostly okay, but having alphanumerical random strings is better: The
strings have more entropy in the same space.

The MIME multipart boundary used to be mere 64-bits of randomness due
to being 16 hex chars. With these changes the boundary is 22
alphanumerical chars, or little over 130 bits of randomness.

Closes #11838

53 files changed:
lib/fopen.c
lib/mime.c
lib/mime.h
lib/mqtt.c
lib/rand.c
lib/rand.h
tests/data/test1053
tests/data/test1133
tests/data/test1158
tests/data/test1186
tests/data/test1187
tests/data/test1189
tests/data/test1293
tests/data/test1315
tests/data/test1404
tests/data/test158
tests/data/test163
tests/data/test166
tests/data/test173
tests/data/test186
tests/data/test1972
tests/data/test2073
tests/data/test258
tests/data/test259
tests/data/test277
tests/data/test304
tests/data/test39
tests/data/test44
tests/data/test554
tests/data/test584
tests/data/test587
tests/data/test643
tests/data/test645
tests/data/test646
tests/data/test647
tests/data/test648
tests/data/test649
tests/data/test650
tests/data/test651
tests/data/test652
tests/data/test653
tests/data/test654
tests/data/test666
tests/data/test667
tests/data/test668
tests/data/test669
tests/data/test670
tests/data/test671
tests/data/test672
tests/data/test673
tests/data/test71
tests/data/test9
tests/unit/unit1308.c

index b6e3cadddef656ee7b77d406dba02ca888002382..75b8a7aa5340852585097e664e88261d9c017f5c 100644 (file)
@@ -64,7 +64,7 @@ CURLcode Curl_fopen(struct Curl_easy *data, const char *filename,
   fclose(*fh);
   *fh = NULL;
 
-  result = Curl_rand_hex(data, randsuffix, sizeof(randsuffix));
+  result = Curl_rand_alnum(data, randsuffix, sizeof(randsuffix));
   if(result)
     goto fail;
 
index 842b2da7e60b5344f8f33434fa26abbcd375d740..3b27e59e17c67aba32e5f9753eaadd987d28a420 100644 (file)
@@ -1289,9 +1289,9 @@ curl_mime *curl_mime_init(struct Curl_easy *easy)
     mime->lastpart = NULL;
 
     memset(mime->boundary, '-', MIME_BOUNDARY_DASHES);
-    if(Curl_rand_hex(easy,
-                     (unsigned char *) &mime->boundary[MIME_BOUNDARY_DASHES],
-                     MIME_RAND_BOUNDARY_CHARS + 1)) {
+    if(Curl_rand_alnum(easy,
+                       (unsigned char *) &mime->boundary[MIME_BOUNDARY_DASHES],
+                       MIME_RAND_BOUNDARY_CHARS + 1)) {
       /* failed to get random separator, bail out */
       free(mime);
       return NULL;
index 04adf2d24766db6b9cc90abc9a98fd0548a8031d..0a05c2a5aa8ffa2ff595b760d317634350c8268c 100644 (file)
@@ -27,7 +27,7 @@
 #include "curl_setup.h"
 
 #define MIME_BOUNDARY_DASHES            24  /* leading boundary dashes */
-#define MIME_RAND_BOUNDARY_CHARS        16  /* Nb. of random boundary chars. */
+#define MIME_RAND_BOUNDARY_CHARS        22  /* Nb. of random boundary chars. */
 #define MAX_ENCODED_LINE_LENGTH         76  /* Maximum encoded line length. */
 #define ENCODING_BUFFER_SIZE            256 /* Encoding temp buffers size. */
 
index 30edf3dd8a4f9a8f8eadb2be89a260b0a42e37ce..e8505cae0cf4ba63b2783bf39b50889adf8eaeaf 100644 (file)
@@ -295,8 +295,8 @@ static CURLcode mqtt_connect(struct Curl_easy *data)
   /* set initial values for the CONNECT packet */
   pos = init_connpack(packet, remain, remain_pos);
 
-  result = Curl_rand_hex(data, (unsigned char *)&client_id[clen],
-                         MQTT_CLIENTID_LEN - clen + 1);
+  result = Curl_rand_alnum(data, (unsigned char *)&client_id[clen],
+                           MQTT_CLIENTID_LEN - clen + 1);
   /* add client id */
   rc = add_client_id(client_id, strlen(client_id), packet, pos + 1);
   if(rc) {
index a5620ea6ebda02316ef8d1f402463a55eb192d54..8cac9383acaf51344dc50c039a2d5bb1c21648d3 100644 (file)
@@ -24,6 +24,8 @@
 
 #include "curl_setup.h"
 
+#include <limits.h>
+
 #ifdef HAVE_FCNTL_H
 #include <fcntl.h>
 #endif
@@ -267,3 +269,36 @@ CURLcode Curl_rand_hex(struct Curl_easy *data, unsigned char *rnd,
 
   return result;
 }
+
+/*
+ * Curl_rand_alnum() fills the 'rnd' buffer with a given 'num' size with random
+ * alphanumerical chars PLUS a null-terminating byte.
+ */
+
+static const char alnum[26 + 26 + 10] =
+  "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
+
+CURLcode Curl_rand_alnum(struct Curl_easy *data, unsigned char *rnd,
+                         size_t num)
+{
+  CURLcode result = CURLE_OK;
+  const int alnumspace = sizeof(alnum);
+  unsigned int r;
+  DEBUGASSERT(num > 1);
+
+  num--; /* save one for null-termination */
+
+  while(num) {
+    do {
+      result = randit(data, &r);
+      if(result)
+        return result;
+    } while(r >= (UINT_MAX - UINT_MAX % alnumspace));
+
+    *rnd++ = alnum[r % alnumspace];
+    num--;
+  }
+  *rnd = 0;
+
+  return result;
+}
index 45ce3e7c4eae5604b965e366a937cfaf5d9fc5dd..1d009f52c0bcb025408a1c321e2c3724b4aa89af 100644 (file)
@@ -34,6 +34,13 @@ CURLcode Curl_rand(struct Curl_easy *data, unsigned char *rnd, size_t num);
 CURLcode Curl_rand_hex(struct Curl_easy *data, unsigned char *rnd,
                        size_t num);
 
+/*
+ * Curl_rand_alnum() fills the 'rnd' buffer with a given 'num' size with random
+ * alphanumerical chars PLUS a null-terminating byte.
+ */
+CURLcode Curl_rand_alnum(struct Curl_easy *data, unsigned char *rnd,
+                         size_t num);
+
 #ifdef WIN32
 /* Random generator shared between the Schannel vtls and Curl_rand*()
    functions */
index 6211e0df43487476b011735ac93a79e8bfeec9e4..e74a70c9dc4dbc47493325d0efe1faf4d0a803c0 100644 (file)
@@ -81,7 +81,7 @@ POST /we/want/%TESTNUMBER HTTP/1.1
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 410\r
+Content-Length: 434\r
 Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763\r
 \r
 ------------------------------9ef8d6205763\r
@@ -105,7 +105,7 @@ POST /we/want/data/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.1
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 410\r
+Content-Length: 434\r
 Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763\r
 \r
 ------------------------------9ef8d6205763\r
index f79ece91a213db4c8d412f22dd91c9bd58c6ddfb..51b6471737dfdb72482812680741fab16c816645 100644 (file)
@@ -50,7 +50,7 @@ POST /we/want/%TESTNUMBER HTTP/1.1
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 1264\r
+Content-Length: 1324\r
 Content-Type: multipart/form-data; boundary=----------------------------24e78000bd32\r
 \r
 ------------------------------24e78000bd32\r
index fa6f7b41b2440a4d5a3bdabe76ce8ae31382aec7..1a29bd84bd9fd2c775d422b12174eddafdb86135 100644 (file)
@@ -53,7 +53,7 @@ POST /we/want/%TESTNUMBER HTTP/1.1
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 958\r
+Content-Length: 1006\r
 Content-Type: multipart/form-data; boundary=----------------------------24e78000bd32\r
 \r
 ------------------------------24e78000bd32\r
index 12faf093455eac77ae327dbea7f7b09fba8f2720..35be0e10d76ac5f1e2bfd331235cb1bd42b4a8cf 100644 (file)
@@ -53,7 +53,7 @@ POST /we/want/%TESTNUMBER HTTP/1.1
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 954\r
+Content-Length: 1002\r
 Content-Type: multipart/form-data; boundary=----------------------------24e78000bd32\r
 \r
 ------------------------------24e78000bd32\r
index a8be5c1e4300d3743a12e830abba92311b255796..cc09564a5d4617b5c036cba6b9e8442d3e7ab42c 100644 (file)
@@ -38,8 +38,8 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 <protocol>
 EHLO %TESTNUMBER\r
index cacac5d754573924fb3785107b8348afc9828e2d..27e35c41ee016d4d68933060f9a1ca91b792dec6 100644 (file)
@@ -50,7 +50,7 @@ POST /we/want/%TESTNUMBER HTTP/1.1
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 1186\r
+Content-Length: 1240\r
 Content-Type: multipart/form-data; boundary=----------------------------24e78000bd32\r
 \r
 ------------------------------24e78000bd32\r
index fb39ebcd038a8596757bdefab6e210ec2fb3ffd6..b4977b8d65202082ad683a4c221d82747bed8637 100644 (file)
@@ -47,15 +47,15 @@ http://0 http://%HOSTIP:%HTTPPORT/%TESTNUMBER -F=
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 <protocol>
 POST /%TESTNUMBER HTTP/1.1\r
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 126\r
+Content-Length: 138\r
 Content-Type: multipart/form-data; boundary=----------------------------\r
 \r
 ------------------------------\r
index e1de8f68ce0dacd86c932494d225be61a63f1a49..22135eb199c656b1803985afde618b485228ea16 100644 (file)
@@ -50,7 +50,7 @@ POST /we/want/%TESTNUMBER HTTP/1.1
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 797\r
+Content-Length: 845\r
 Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763\r
 \r
 ------------------------------9ef8d6205763\r
index f18ad8a39d75aba0a1a323abda52f40102e58721..5df73ae4e5fe901566c12fb81eeab2bdb7834a01 100644 (file)
@@ -54,7 +54,7 @@ POST /we/want/%TESTNUMBER HTTP/1.1
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 882\r
+Content-Length: 930\r
 Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763\r
 \r
 ------------------------------9ef8d6205763\r
index 23861365e745f80583c0a2b57dbe53094a58c570..3110d805ad0a0f71b377c29a24a0b7159d766665 100644 (file)
@@ -42,7 +42,7 @@ POST /%TESTNUMBER HTTP/1.1
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 145\r
+Content-Length: 157\r
 Content-Type: multipart/form-data; boundary=----------------------------4f12fcdaa3bc\r
 \r
 ------------------------------4f12fcdaa3bc\r
index 45af183605c8d112af717a19e414529873bd28fc..e143f73afffb160ef81291fbd30ed325970fd892 100644 (file)
@@ -56,7 +56,7 @@ POST /we/want/%TESTNUMBER HTTP/1.1
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 304\r
+Content-Length: 322\r
 Content-Type: multipart/form-data; boundary=----------------------------c2d1767eb6ac\r
 \r
 ------------------------------c2d1767eb6ac\r
index 40892a87fd88c820ef2c3d7730d985acd014a5f7..58edaf094b8aeffd63e879d401602dac9b3d028f 100644 (file)
@@ -48,7 +48,7 @@ POST /we/want/%TESTNUMBER HTTP/1.1
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 223\r
+Content-Length: 235\r
 Content-Type: multipart/form-data; boundary=----------------------------b0b3d6d23991\r
 \r
 ------------------------------b0b3d6d23991\r
index a3356c976586dc01fdd90c57e17463796cec2310..e3d613e00276e526cffa5b894ebd350659208d53 100644 (file)
@@ -56,7 +56,7 @@ POST /we/want/%TESTNUMBER HTTP/1.1
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 360\r
+Content-Length: 378\r
 Content-Type: multipart/form-data; boundary=----------------------------5dbea401cd8c\r
 \r
 ------------------------------5dbea401cd8c\r
index 0f0c91cc86b4bf4e3df3a7f9cdd4a15622ff48a3..ce1a2d1497612448dd13fc373c8d24e37f055139 100644 (file)
@@ -46,7 +46,7 @@ POST /we/want/%TESTNUMBER HTTP/1.1
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 320\r
+Content-Length: 338\r
 Content-Type: multipart/form-data; boundary=----------------------------212d9006ceb5\r
 \r
 ------------------------------212d9006ceb5\r
index 70c183737edc4fab86e5246112966f488828980d..39e574747b05b46dfb124c31b4094f4198ec9e41 100644 (file)
@@ -67,13 +67,13 @@ Host: exam.ple.com:9000
 Authorization: AWS4-HMAC-SHA256 Credential=xxx/19700101/us-east-1/s3/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=eaee0f1c5984ad5d81c8bc7805f28c7b83b35322de654b2ace18cb8cf6d5a9cb\r
 X-Amz-Date: 19700101T000000Z\r
 x-amz-content-sha256: UNSIGNED-PAYLOAD\r
-Content-Length: 142\r
+Content-Length: 154\r
 \r
---------------------------3433323135333231\r
+--------------------------qrstuvwxyz0123456789AB\r
 Content-Disposition: attachment; name="foo"\r
 \r
 bar\r
---------------------------3433323135333231--\r
+--------------------------qrstuvwxyz0123456789AB--\r
 </protocol>
 </verify>
 </testcase>
index c6b3dee5a6a89ddbcbe08b7ea5cae420fd4b0d0e..a8be75e7cd2adaefbc0ea55e497952ed73c6687e 100644 (file)
@@ -52,7 +52,7 @@ POST /%TESTNUMBER HTTP/1.1
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 189\r
+Content-Length: 201\r
 \r
 Content-Disposition: form-data; name="name"; filename="a.pdf"\r
 Content-Type: application/pdf\r
@@ -62,7 +62,7 @@ POST /%TESTNUMBER HTTP/1.1
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 184\r
+Content-Length: 196\r
 \r
 Content-Disposition: form-data; name="name"; filename="b.jpg"\r
 Content-Type: image/jpeg\r
index 3587b57a9d8b2d95f99c23f03f2d876e20120290..e925e66b1f699af31b27d99c3308d1fde1349dbd 100644 (file)
@@ -86,7 +86,7 @@ Host: remotehost:54321
 User-Agent: curl/%VERSION\r
 Accept: */*\r
 Proxy-Connection: Keep-Alive\r
-Content-Length: 409\r
+Content-Length: 433\r
 Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce\r
 \r
 ------------------------------7c633d5c27ce\r
@@ -112,7 +112,7 @@ Proxy-Authorization: Digest username="uuuser", realm="many secrets", nonce="911"
 User-Agent: curl/%VERSION\r
 Accept: */*\r
 Proxy-Connection: Keep-Alive\r
-Content-Length: 409\r
+Content-Length: 433\r
 Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce\r
 \r
 ------------------------------7c633d5c27ce\r
index cc09c5b17db998bfc35f7d498b690a4f719daeef..b3cb8275eb7f630a308f1b2687f6adf582068c4c 100644 (file)
@@ -83,7 +83,7 @@ User-Agent: curl/%VERSION
 Accept: */*\r
 Proxy-Connection: Keep-Alive\r
 Expect: 100-continue\r
-Content-Length: 409\r
+Content-Length: 433\r
 Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce\r
 \r
 ------------------------------7c633d5c27ce\r
@@ -110,7 +110,7 @@ User-Agent: curl/%VERSION
 Accept: */*\r
 Proxy-Connection: Keep-Alive\r
 Expect: 100-continue\r
-Content-Length: 409\r
+Content-Length: 433\r
 Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce\r
 \r
 ------------------------------7c633d5c27ce\r
index 62d264fa37cbab6f71994685c8b2254938f20348..1e091e3ddd91cf6d0c2af20a9e8398674ce092c1 100644 (file)
@@ -37,15 +37,15 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER -F name=daniel -H "Content-Type: text/
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/--------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=------------------------/
+s/^--------------------------[A-Za-z0-9]*/--------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=------------------------/
 </strippart>
 <protocol>
 POST /want/%TESTNUMBER HTTP/1.1\r
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 146\r
+Content-Length: 158\r
 Content-Type: text/info; boundary=------------------------\r
 \r
 --------------------------\r
index 1f6bafb9e93808e4186bf48bc9d80646efa0a007..8e7c7246c52c646245043617aab10f7e3d476424 100644 (file)
@@ -49,24 +49,24 @@ POST /we/want/%TESTNUMBER HTTP/1.1
 Host: %HOSTIP:%HTTPSPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 1386\r
-Content-Type: multipart/form-data; boundary=----------------------------c3b2ef7f0bb8\r
+Content-Length: 1410\r
+Content-Type: multipart/form-data; boundary=----------------------------qrstuvwxyz0123456789AB\r
 \r
-------------------------------c3b2ef7f0bb8\r
+------------------------------qrstuvwxyz0123456789AB\r
 Content-Disposition: form-data; name="name"\r
 \r
 daniel\r
-------------------------------c3b2ef7f0bb8\r
+------------------------------qrstuvwxyz0123456789AB\r
 Content-Disposition: form-data; name="tool"\r
 \r
 curl\r
-------------------------------c3b2ef7f0bb8\r
+------------------------------qrstuvwxyz0123456789AB\r
 Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt"\r
 Content-Type: text/plain\r
 \r
 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
 \r
-------------------------------c3b2ef7f0bb8--\r
+------------------------------qrstuvwxyz0123456789AB--\r
 </protocol>
 </verify>
 </testcase>
index 5bfb2265c8fa1da190f70d76e38753b5eef1ffdd..36fafd7fadccec74caec19df5b6a70744dc2b9c0 100644 (file)
@@ -50,7 +50,7 @@ POST /we/want/%TESTNUMBER HTTP/1.1
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 1180\r
+Content-Length: 1234\r
 Content-Type: multipart/form-data; boundary=----------------------------24e78000bd32\r
 \r
 ------------------------------24e78000bd32\r
index 880c7aef788d3ef8e0d69a20cbc8f71faf65564c..ed6ea230105e2db34188f3e2567cc297bd3bf230 100644 (file)
@@ -50,7 +50,7 @@ POST /we/want/%TESTNUMBER HTTP/1.1
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 408\r
+Content-Length: 432\r
 Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce\r
 \r
 ------------------------------7c633d5c27ce\r
index b446498950e852e719845870ca16eb4c474e9297..e0674bdb37f9616d76bc7b6ac1a5881d7246dced 100644 (file)
@@ -62,8 +62,8 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 # Note that the stripping above removes 12 bytes from every occurrence of the
 # boundary string and since 5 of them are in the body contents, we see
@@ -72,7 +72,7 @@ s/boundary=------------------------[a-z0-9]*/boundary=--------------------------
 POST /%TESTNUMBER HTTP/1.1\r
 Host: %HOSTIP:%HTTPPORT\r
 Accept: */*\r
-Content-Length: 744\r
+Content-Length: 780\r
 Content-Type: multipart/form-data; boundary=----------------------------\r
 \r
 ------------------------------\r
@@ -103,7 +103,7 @@ blah blah
 POST /%TESTNUMBER HTTP/1.1\r
 Host: %HOSTIP:%HTTPPORT\r
 Accept: */*\r
-Content-Length: 758\r
+Content-Length: 794\r
 Content-Type: multipart/form-data; boundary=----------------------------\r
 \r
 ------------------------------\r
index 7a7d2499c94c4bd58bd56d338925a9491fae3780..0f8fe8159787c4fac08452c48d8a37cd2eb0e837 100644 (file)
@@ -59,14 +59,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/--------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=------------------------/
+s/^--------------------------[A-Za-z0-9]*/--------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=------------------------/
 </strippart>
 <protocol>
 POST /%TESTNUMBER HTTP/1.1\r
 Host: %HOSTIP:%HTTPPORT\r
 Accept: */*\r
-Content-Length: 144\r
+Content-Length: 156\r
 Content-Type: multipart/form-data; boundary=------------------------\r
 \r
 --------------------------\r
index 2fc8a7357777c6f79647709cc2c14aeee288d97a..62e54b3b5aacfaaa6dd3d593471c846e3540c7dc 100644 (file)
@@ -42,14 +42,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 <protocol>
 POST /%TESTNUMBER HTTP/1.1\r
 Host: %HOSTIP:%HTTPPORT\r
 Accept: */*\r
-Content-Length: 744\r
+Content-Length: 780\r
 Content-Type: multipart/form-data; boundary=----------------------------\r
 \r
 ------------------------------\r
index ca6c5416ad471f44fb12afecf42fd1ce8ffc4dfc..5bb32f4c8fd09c07799dcda1344fbff8c7ab5681 100644 (file)
@@ -62,8 +62,8 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 # Note that the stripping above removes 12 bytes from every occurrence of the
 # boundary string and since 5 of them are in the body contents, we see
@@ -72,7 +72,7 @@ s/boundary=------------------------[a-z0-9]*/boundary=--------------------------
 POST /%TESTNUMBER HTTP/1.1\r
 Host: %HOSTIP:%HTTPPORT\r
 Accept: */*\r
-Content-Length: 640\r
+Content-Length: 676\r
 Content-Type: multipart/form-data; boundary=----------------------------\r
 \r
 ------------------------------\r
@@ -102,7 +102,7 @@ blah blah
 POST /%TESTNUMBER HTTP/1.1\r
 Host: %HOSTIP:%HTTPPORT\r
 Accept: */*\r
-Content-Length: 654\r
+Content-Length: 690\r
 Content-Type: multipart/form-data; boundary=----------------------------\r
 \r
 ------------------------------\r
index 5230972220631b5d1b513aeeb53a8e6e0b18d8f7..971ce5d34b74a0a3966fd4e1756032f415e4bcdc 100644 (file)
@@ -62,8 +62,8 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 # Note that the stripping above removes 12 bytes from every occurrence of the
 # boundary string and since 5 of them are in the body contents, we see
@@ -76,7 +76,11 @@ Transfer-Encoding: chunked
 Content-Type: multipart/form-data; boundary=----------------------------\r
 Expect: 100-continue\r
 \r
-76\r
+%if hyper
+7C\r
+%else
+7c\r
+%endif
 ------------------------------\r
 Content-Disposition: form-data; name="sendfile"; filename="postit2.c"\r
 \r
@@ -92,7 +96,11 @@ y
 1\r
 
 \r
-65\r
+%if hyper
+6B\r
+%else
+6b\r
+%endif
 \r
 ------------------------------\r
 Content-Disposition: form-data; name="callbackdata"\r
@@ -112,9 +120,9 @@ y
 
 \r
 %if hyper
-19A\r
+1B2\r
 %else
-19a\r
+1b2\r
 %endif
 \r
 ------------------------------\r
@@ -141,7 +149,11 @@ Transfer-Encoding: chunked
 Content-Type: multipart/form-data; boundary=----------------------------\r
 Expect: 100-continue\r
 \r
-84\r
+%if hyper
+8A\r
+%else
+8a\r
+%endif
 ------------------------------\r
 Content-Disposition: form-data; name="sendfile alternative"; filename="file name 2"\r
 \r
@@ -157,7 +169,11 @@ y
 1\r
 
 \r
-65\r
+%if hyper
+6B\r
+%else
+6b\r
+%endif
 \r
 ------------------------------\r
 Content-Disposition: form-data; name="callbackdata"\r
@@ -177,9 +193,9 @@ y
 
 \r
 %if hyper
-19A\r
+1B2\r
 %else
-19a\r
+1b2\r
 %endif
 \r
 ------------------------------\r
index ef9191e75bd8b83b4358be8ca537380066420d6c..f4f1e8828b93f834c034b397c30f10611f89504d 100644 (file)
@@ -51,8 +51,8 @@ X-fileheader2: This is \r#a
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 <protocol>
 EHLO %TESTNUMBER\r
index 1b0e15235da2a95b5f33fdf90098d8c868149fa9..5f96a161980c514ed0ae2c5bc191e97af7c5d417 100644 (file)
@@ -38,13 +38,13 @@ It may contain any type of data.
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 <protocol>
 A001 CAPABILITY\r
 A002 LOGIN user secret\r
-A003 APPEND %TESTNUMBER (\Seen) {892}\r
+A003 APPEND %TESTNUMBER (\Seen) {940}\r
 A004 LOGOUT\r
 </protocol>
 <upload>
index 3403e2100457fcad7f4a082c46009f108aa1ce5f..5306552a6de8e68cb00832a224f26b80fe49779f 100644 (file)
@@ -43,8 +43,8 @@ It may contain any type of data and will be encoded in base64 for transfer.
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 <protocol>
 EHLO %TESTNUMBER\r
index eced79a860d4374cd5c7aaa41e9c224845bdf512..753c847aae4a55de5c52bf6fce042f4b91313e40 100644 (file)
@@ -43,8 +43,8 @@ It contains at least an 8-bit byte value.
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 <protocol>
 EHLO %TESTNUMBER\r
index f34af0f4bf73ab54b8cee596c2e7905c1991ed2c..7aa88ab2d99de353e73faebb4741288676fabaee 100644 (file)
@@ -60,11 +60,11 @@ This is data from a file.
 </client>
 
 #
-# Verify data after the test has been "shot"
+# Verify data bbter the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 # Note that the stripping above removes 12 bytes from every occurrence of the
 # boundary string and since 5 of them are in the body contents, we see
@@ -77,7 +77,7 @@ Transfer-Encoding: chunked
 Content-Type: multipart/form-data; boundary=----------------------------\r
 Expect: 100-continue\r
 \r
-361\r
+385\r
 ------------------------------\r
 Content-Disposition: form-data; name="fieldname"\r
 Content-Type: text/plain\r
@@ -105,9 +105,9 @@ Content-Type: text/whatever
 \r
 \r
 %if hyper
-A5\r
+AB\r
 %else
-a5\r
+ab\r
 %endif
 This is data from a file.
 \r
@@ -117,9 +117,9 @@ Content-Type: text/whatever
 \r
 \r
 %if hyper
-AF\r
+BB\r
 %else
-af\r
+bb\r
 %endif
 This is data from a file.
 \r
@@ -130,16 +130,16 @@ Content-Disposition: form-data; name="filecontents"
 \r
 \r
 %if hyper
-10F\r
+11B\r
 %else
-10f\r
+11b\r
 %endif
 This is data from a file.
 \r
 ------------------------------\r
 Content-Disposition: form-data; name="formlength"\r
 \r
-1367\r
+1433\r
 ------------------------------\r
 Content-Disposition: form-data; name="standardinput"\r
 Content-Type: application/octet-stream\r
@@ -148,7 +148,7 @@ Content-Type: application/octet-stream
 16\r
  Some data from stdin
 \r
-30\r
+36\r
 \r
 --------------------------------\r
 \r
@@ -161,7 +161,7 @@ Transfer-Encoding: chunked
 Content-Type: multipart/form-data; boundary=----------------------------\r
 Expect: 100-continue\r
 \r
-361\r
+385\r
 ------------------------------\r
 Content-Disposition: form-data; name="fieldname"\r
 Content-Type: text/plain\r
@@ -189,9 +189,9 @@ Content-Type: text/whatever
 \r
 \r
 %if hyper
-A5\r
+AB\r
 %else
-a5\r
+ab\r
 %endif
 This is data from a file.
 \r
@@ -201,9 +201,9 @@ Content-Type: text/whatever
 \r
 \r
 %if hyper
-AF\r
+BB\r
 %else
-af\r
+bb\r
 %endif
 This is data from a file.
 \r
@@ -214,16 +214,16 @@ Content-Disposition: form-data; name="filecontents"
 \r
 \r
 %if hyper
-10F\r
+11B\r
 %else
-10f\r
+11b\r
 %endif
 This is data from a file.
 \r
 ------------------------------\r
 Content-Disposition: form-data; name="formlength"\r
 \r
-1367\r
+1433\r
 ------------------------------\r
 Content-Disposition: form-data; name="standardinput"\r
 Content-Type: application/octet-stream\r
@@ -232,7 +232,7 @@ Content-Type: application/octet-stream
 16\r
  Some data from stdin
 \r
-30\r
+36\r
 \r
 --------------------------------\r
 \r
index b076682ff51575b4ec9cf5aef9a9d03fe5057001..bf96b1b0ba0cb87f76b10b6b0ed7497686fea3eb 100644 (file)
@@ -52,8 +52,8 @@ This is data from a file.
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 # Note that the stripping above removes 12 bytes from every occurrence of the
 # boundary string and since 5 of them are in the body contents, we see
@@ -62,7 +62,7 @@ s/boundary=------------------------[a-z0-9]*/boundary=--------------------------
 POST /%TESTNUMBER HTTP/1.1\r
 Host: %HOSTIP:%HTTPPORT\r
 Accept: */*\r
-Content-Length: 17139\r
+Content-Length: 17151\r
 Content-Type: multipart/form-data; boundary=----------------------------\r
 \r
 ------------------------------\r
index d3ff7a0f7164b231fa440240b0cdc5959b972938..25cbd4242925500f51143a4392c9ea4443a4c6ee 100644 (file)
@@ -36,8 +36,8 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 <protocol>
 EHLO %TESTNUMBER\r
index fa018be250a1fc4a8302bb4c335689e02ab033a3..58c0748ba5a255e91e19a900f77b8105582cd03e 100644 (file)
@@ -62,8 +62,8 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 # Note that the stripping above removes 12 bytes from every occurrence of the
 # boundary string and since 5 of them are in the body contents, we see
@@ -72,7 +72,7 @@ s/boundary=------------------------[a-z0-9]*/boundary=--------------------------
 POST /%TESTNUMBER HTTP/1.1\r
 Host: %HOSTIP:%HTTPPORT\r
 Accept: */*\r
-Content-Length: 150\r
+Content-Length: 162\r
 Content-Type: multipart/form-data; boundary=----------------------------\r
 \r
 ------------------------------\r
@@ -83,7 +83,7 @@ short value
 POST /%TESTNUMBER HTTP/1.1\r
 Host: %HOSTIP:%HTTPPORT\r
 Accept: */*\r
-Content-Length: 167\r
+Content-Length: 179\r
 Content-Type: multipart/form-data; boundary=----------------------------\r
 \r
 ------------------------------\r
index c71a047af5ea3c83ac6f9e2ca8b16b43ae4597c1..e022dc529c5d9df75aaccd321c42fda48590817a 100644 (file)
@@ -65,8 +65,8 @@ This is data from a file
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 # Note that the stripping above removes 12 bytes from every occurrence of the
 # boundary string and since 5 of them are in the body contents, we see
@@ -85,9 +85,9 @@ Content-Type: multipart/form-data; boundary=----------------------------
 Expect: 100-continue\r
 \r
 %if hyper
-1AF\r
+1C1\r
 %else
-1af\r
+1c1\r
 %endif
 ------------------------------\r
 Content-Disposition: form-data; name="greeting"\r
@@ -119,7 +119,7 @@ y
 1\r
 
 \r
-30\r
+36\r
 \r
 --------------------------------\r
 \r
index 14fbe4933f1351852b8c9075b4e53efdb8e1c438..2ab29160fb3924fc7bb900d0f4b2c8f6e13f42c6 100644 (file)
@@ -54,14 +54,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 <protocol>
 POST /%TESTNUMBER HTTP/1.1\r
 Host: %HOSTIP:%HTTPPORT\r
 Accept: */*\r
-Content-Length: 17225\r
+Content-Length: 17237\r
 Content-Type: multipart/form-data; boundary=----------------------------\r
 \r
 ------------------------------\r
index 7546453944217c7a79172a5702dc2761b6ca4246..222d3c6fbe9d182f668bd675f0d1c15454b5e69a 100644 (file)
@@ -55,8 +55,8 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 # Note that the stripping above removes 12 bytes from every occurrence of the
 # boundary string and since 5 of them are in the body contents, we see
@@ -69,11 +69,7 @@ Transfer-Encoding: chunked
 Content-Type: multipart/form-data; boundary=----------------------------\r
 Expect: 100-continue\r
 \r
-%if hyper
-7F\r
-%else
-7f\r
-%endif
+85\r
 ------------------------------\r
 Content-Disposition: form-data; name="field"\r
 Content-Transfer-Encoding: base64\r
@@ -81,7 +77,11 @@ Content-Transfer-Encoding: base64
 \r
 4\r
 ZHVt\r
-34\r
+%if hyper
+3A\r
+%else
+3a\r
+%endif
 bXk=\r
 --------------------------------\r
 \r
index ab7cbec9960b66c50c057cfae68272f650cf95da..9f5aee34f47493ae7752fe7287ad59b162f1f09c 100644 (file)
@@ -12,7 +12,7 @@ HTTP MIME POST
 <reply>
 <data>
 HTTP/1.1 200 OK\r
-Date: Tue, 09 Nov 2010 14:49:00 GMT\r
+Date: Tue, 09 Nov 2010 14:4f:00 GMT\r
 Server: test-server/fake swsclose\r
 Connection: close\r
 Content-Type: text/html\r
@@ -21,7 +21,7 @@ hello
 </data>
 <datacheck>
 HTTP/1.1 200 OK\r
-Date: Tue, 09 Nov 2010 14:49:00 GMT\r
+Date: Tue, 09 Nov 2010 14:4f:00 GMT\r
 Server: test-server/fake swsclose\r
 Connection: close\r
 Content-Type: text/html\r
@@ -58,8 +58,8 @@ This is data from a file
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 # Note that the stripping above removes 12 bytes from every occurrence of the
 # boundary string and since 5 of them are in the body contents, we see
@@ -73,9 +73,9 @@ Content-Type: multipart/form-data; boundary=----------------------------
 Expect: 100-continue\r
 \r
 %if hyper
-C1\r
+CD\r
 %else
-c1\r
+cd\r
 %endif
 ------------------------------\r
 Content-Disposition: form-data; name="field1"\r
@@ -87,14 +87,18 @@ Content-Disposition: form-data; name="field2"
 \r
 5\r
 dummy\r
-91\r
+97\r
 \r
 ------------------------------\r
 Content-Disposition: form-data; name="field3"; filename="file%TESTNUMBER.txt"\r
 Content-Type: text/plain\r
 \r
 \r
-49\r
+%if hyper
+4F\r
+%else
+4f\r
+%endif
 This is data from a file
 \r
 --------------------------------\r
index 7f1be86b3700969de17159cd500212bf1136fa6f..eaa6ec9bbdd61319271911eba9030dbd096082e4 100644 (file)
@@ -38,15 +38,15 @@ http://%HOSTIP:%HTTPPORT/we/want/%TESTNUMBER -H 'Content-type: multipart/form-da
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 <protocol>
 POST /we/want/%TESTNUMBER HTTP/1.1\r
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 242\r
+Content-Length: 260\r
 Content-Type: multipart/form-data; charset=utf-8; boundary=----------------------------\r
 \r
 ------------------------------\r
index b7b5a90cb3c5c8939c4adbf53bd20c56bc6de2d9..42e18bfc6cc7c155aa366e8b4115a76cf9c3dd1e 100644 (file)
@@ -55,14 +55,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 <protocol>
 POST /%TESTNUMBER HTTP/1.1\r
 Host: %HOSTIP:%HTTPPORT\r
 Accept: */*\r
-Content-Length: 142\r
+Content-Length: 154\r
 Content-Type: multipart/form-data; boundary=----------------------------\r
 \r
 ------------------------------\r
index 110038298fceef1a1c5861b6b634c21e6638e388..c222cee876fc2445699790eebaed48891bcf8b88 100644 (file)
@@ -55,14 +55,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 <protocol>
 POST /%TESTNUMBER HTTP/1.1\r
 Host: %HOSTIP:%HTTPPORT\r
 Accept: */*\r
-Content-Length: 142\r
+Content-Length: 154\r
 Content-Type: multipart/form-data; boundary=----------------------------\r
 \r
 ------------------------------\r
index aab52381aa5c3344e2042fc3867a22c260248d4c..b105875c02f6e828f32af93965b4309d8878ff2c 100644 (file)
@@ -55,14 +55,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 <protocol>
 POST /%TESTNUMBER HTTP/1.1\r
 Host: %HOSTIP:%HTTPPORT\r
 Accept: */*\r
-Content-Length: 142\r
+Content-Length: 154\r
 Content-Type: multipart/form-data; boundary=----------------------------\r
 \r
 ------------------------------\r
index ee86cccfaf9ba6120630d018ddea54e58000ac4d..ba20d0928c26eb2fd2b037227707436d509773a1 100644 (file)
@@ -55,14 +55,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER
 # Verify data after the test has been "shot"
 <verify>
 <strippart>
-s/^--------------------------[a-z0-9]*/------------------------------/
-s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+s/^--------------------------[A-Za-z0-9]*/------------------------------/
+s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
 </strippart>
 <protocol>
 POST /%TESTNUMBER HTTP/1.1\r
 Host: %HOSTIP:%HTTPPORT\r
 Accept: */*\r
-Content-Length: 142\r
+Content-Length: 154\r
 Content-Type: multipart/form-data; boundary=----------------------------\r
 \r
 ------------------------------\r
index a5b6db6e984a39819710cec16e21102c0c7a73c4..2b8c3cab473b47fe2a7433786fd70487d4dae875 100644 (file)
@@ -56,7 +56,7 @@ bar
 POST /we/want/%TESTNUMBER HTTP/1.1\r
 Host: %HOSTIP:%HTTPPORT\r
 Accept: */*\r
-Content-Length: 408\r
+Content-Length: 432\r
 Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763\r
 \r
 ------------------------------9ef8d6205763\r
index b37accbcc046a08a6e07a44db8c3f87db6a8abf7..29b1d842e23955cb6b0901ab52ca6c1c8646942d 100644 (file)
@@ -50,7 +50,7 @@ POST /we/want/%TESTNUMBER HTTP/1.1
 Host: %HOSTIP:%HTTPPORT\r
 User-Agent: curl/%VERSION\r
 Accept: */*\r
-Content-Length: 407\r
+Content-Length: 431\r
 Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763\r
 \r
 ------------------------------9ef8d6205763\r
index 3e2cf4b31e8b25d6d202144e8579e2ba64694a33..a6e5004878b8f8c3743a6d8adb984361f632c19e 100644 (file)
@@ -74,7 +74,7 @@ UNITTEST_START
 
   fail_unless(rc == 0, "curl_formget returned error");
 
-  fail_unless(total_size == 488, "curl_formget got wrong size back");
+  fail_unless(total_size == 518, "curl_formget got wrong size back");
 
   curl_formfree(post);
 
@@ -91,7 +91,7 @@ UNITTEST_START
 
   rc = curl_formget(post, &total_size, print_httppost_callback);
   fail_unless(rc == 0, "curl_formget returned error");
-  fail_unless(total_size == 851, "curl_formget got wrong size back");
+  fail_unless(total_size == 899, "curl_formget got wrong size back");
 
   curl_formfree(post);