Skip to content

Commit dddff43

Browse files
committed
Use strcpy instead of strncpy or memcpy for constants
1 parent d834a62 commit dddff43

File tree

1 file changed

+26
-31
lines changed

1 file changed

+26
-31
lines changed

source/core_http_client.c

+26-31
Original file line numberDiff line numberDiff line change
@@ -1328,17 +1328,17 @@ static HTTPStatus_t addHeader( HTTPRequestHeaders_t * pRequestHeaders,
13281328
* Note that this method also writes trailing "\r\n" before returning.
13291329
* The first condition prevents reading before start of the header. */
13301330
if( ( 4U <= pRequestHeaders->headersLen ) &&
1331-
( strncmp( ( char * ) pBufferCur - 4U,
1332-
"\r\n\r\n", 4U ) == 0 ) )
1331+
( strcmp( "\r\n\r\n", ( char * ) pBufferCur - 4U ) == 0 ) )
13331332
{
13341333
backtrackHeaderLen -= 2U;
13351334
pBufferCur -= 2U;
13361335
}
13371336

1338-
/* Check if there is enough space in buffer for additional header. */
1339-
toAddLen = fieldLen + 2U + valueLen +
1340-
2U +
1341-
2U;
1337+
/*
1338+
* Check if there is enough space in buffer for additional header.
1339+
* "<field>: <value>\r\n\r\n"
1340+
*/
1341+
toAddLen = fieldLen + 2U + valueLen + 2U + 2U;
13421342

13431343
/* If we have enough room for the new header line, then write it to the
13441344
* header buffer. */
@@ -1357,9 +1357,7 @@ static HTTPStatus_t addHeader( HTTPRequestHeaders_t * pRequestHeaders,
13571357
pBufferCur += fieldLen;
13581358

13591359
/* Copy the field separator, ": ", into the buffer. */
1360-
( void ) memcpy( pBufferCur,
1361-
": ",
1362-
2U );
1360+
( void ) strcpy( pBufferCur, ": " );
13631361

13641362
pBufferCur += 2U;
13651363

@@ -1375,9 +1373,7 @@ static HTTPStatus_t addHeader( HTTPRequestHeaders_t * pRequestHeaders,
13751373
pBufferCur += valueLen;
13761374

13771375
/* Copy the header end indicator, "\r\n\r\n" into the buffer. */
1378-
( void ) memcpy( pBufferCur,
1379-
"\r\n\r\n",
1380-
4U );
1376+
( void ) strcpy( pBufferCur, "\r\n\r\n" );
13811377

13821378
/* Update the headers length value only when everything is successful. */
13831379
pRequestHeaders->headersLen = backtrackHeaderLen + toAddLen;
@@ -1416,9 +1412,8 @@ static HTTPStatus_t addRangeHeader( HTTPRequestHeaders_t * pRequestHeaders,
14161412
/* Generate the value data for the Range Request header.*/
14171413

14181414
/* Write the range value prefix in the buffer. */
1419-
( void ) strncpy( rangeValueBuffer,
1420-
"bytes=",
1421-
sizeof( "bytes=" ) - 1U );
1415+
( void ) strcpy( rangeValueBuffer, "bytes=" );
1416+
14221417
rangeValueLength += sizeof( "bytes=" ) - 1U;
14231418

14241419
/* Write the range start value in the buffer. */
@@ -1479,14 +1474,21 @@ static HTTPStatus_t writeRequestLine( HTTPRequestHeaders_t * pRequestHeaders,
14791474
assert( pMethod != NULL );
14801475
assert( methodLen != 0U );
14811476

1482-
toAddLen = methodLen + \
1483-
1U + \
1484-
1U + \
1485-
sizeof( "HTTP/1.1" ) - 1U + \
1486-
2U;
1477+
if( ( pPath == NULL ) || ( pathLen == 0U ) )
1478+
{
1479+
/* "<METHOD> / " */
1480+
toAddLen = methodLen + 1U + 1U + 1U;
1481+
}
1482+
else
1483+
{
1484+
/* "<METHOD> <PATH> " */
1485+
toAddLen = methodLen + 1U + pathLen + 1U;
1486+
}
1487+
1488+
/* "HTTP/1.1\r\n" */
1489+
toAddLen += sizeof( "HTTP/1.1" ) - 1U + 2U;
14871490

14881491
pBufferCur = ( char * ) ( pRequestHeaders->pBuffer );
1489-
toAddLen += ( ( pPath == NULL ) || ( pathLen == 0U ) ) ? 1U : pathLen;
14901492

14911493
if( ( toAddLen + pRequestHeaders->headersLen ) > pRequestHeaders->bufferLen )
14921494
{
@@ -1505,9 +1507,7 @@ static HTTPStatus_t writeRequestLine( HTTPRequestHeaders_t * pRequestHeaders,
15051507
/* Use "/" as default value if <PATH> is NULL. */
15061508
if( ( pPath == NULL ) || ( pathLen == 0U ) )
15071509
{
1508-
( void ) strncpy( pBufferCur,
1509-
"/",
1510-
1U );
1510+
( void ) strcpy( pBufferCur, "/" );
15111511
pBufferCur += 1U;
15121512
}
15131513
else
@@ -1519,14 +1519,9 @@ static HTTPStatus_t writeRequestLine( HTTPRequestHeaders_t * pRequestHeaders,
15191519
*pBufferCur = ' ';
15201520
pBufferCur += 1U;
15211521

1522-
( void ) strncpy( pBufferCur,
1523-
"HTTP/1.1",
1524-
sizeof( "HTTP/1.1" ) - 1U );
1525-
pBufferCur += sizeof( "HTTP/1.1" ) - 1U;
1522+
( void ) strcpy( pBufferCur, "HTTP/1.1\r\n" );
1523+
pBufferCur += sizeof( "HTTP/1.1\r\n" ) - 1U;
15261524

1527-
( void ) memcpy( pBufferCur,
1528-
"\r\n",
1529-
2U );
15301525
pRequestHeaders->headersLen = toAddLen;
15311526
}
15321527

0 commit comments

Comments
 (0)