mime: use a define instead of the magic number 24

MIME_BOUNDARY_DASHES is now the number of leading dashes in the
generated boundary string.

Closes #8441
This commit is contained in:
Daniel Stenberg 2022-02-11 23:21:38 +01:00
parent 65c6e37fe3
commit c8e8791d2d
No known key found for this signature in database
GPG Key ID: 5CC908FDB71E12C2
2 changed files with 5 additions and 3 deletions

View File

@ -1284,8 +1284,9 @@ curl_mime *curl_mime_init(struct Curl_easy *easy)
mime->firstpart = NULL;
mime->lastpart = NULL;
memset(mime->boundary, '-', 24);
if(Curl_rand_hex(easy, (unsigned char *) &mime->boundary[24],
memset(mime->boundary, '-', MIME_BOUNDARY_DASHES);
if(Curl_rand_hex(easy,
(unsigned char *) &mime->boundary[MIME_BOUNDARY_DASHES],
MIME_RAND_BOUNDARY_CHARS + 1)) {
/* failed to get random separator, bail out */
free(mime);

View File

@ -24,6 +24,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 MAX_ENCODED_LINE_LENGTH 76 /* Maximum encoded line length. */
#define ENCODING_BUFFER_SIZE 256 /* Encoding temp buffers size. */
@ -92,7 +93,7 @@ struct mime_state {
};
/* Boundary string length. */
#define MIME_BOUNDARY_LEN (24 + MIME_RAND_BOUNDARY_CHARS)
#define MIME_BOUNDARY_LEN (MIME_BOUNDARY_DASHES + MIME_RAND_BOUNDARY_CHARS)
/* A mime multipart. */
struct curl_mime {