Skip to content

Commit e82a892

Browse files
committed
Add CONST_STRLEN preprocessor macro.
1 parent dddff43 commit e82a892

File tree

2 files changed

+18
-13
lines changed

2 files changed

+18
-13
lines changed

Diff for: source/core_http_client.c

+11-13
Original file line numberDiff line numberDiff line change
@@ -1015,8 +1015,7 @@ static void initializeParsingContextForFirstResponse( HTTPParsingContext_t * pPa
10151015
* indicated to stop by returning a 1 from httpParserOnHeadersCompleteCallback().
10161016
* If this is not done, the parser will not indicate the message is complete. */
10171017
if( strncmp( ( const char * ) ( pRequestHeaders->pBuffer ),
1018-
HTTP_METHOD_HEAD,
1019-
sizeof( HTTP_METHOD_HEAD ) - 1U ) == 0 )
1018+
HTTP_METHOD_HEAD, CONST_STRLEN( HTTP_METHOD_HEAD ) ) == 0 )
10201019
{
10211020
pParsingContext->isHeadResponse = 1U;
10221021
}
@@ -1414,7 +1413,7 @@ static HTTPStatus_t addRangeHeader( HTTPRequestHeaders_t * pRequestHeaders,
14141413
/* Write the range value prefix in the buffer. */
14151414
( void ) strcpy( rangeValueBuffer, "bytes=" );
14161415

1417-
rangeValueLength += sizeof( "bytes=" ) - 1U;
1416+
rangeValueLength += CONST_STRLEN( "bytes=" );
14181417

14191418
/* Write the range start value in the buffer. */
14201419
rangeValueLength += convertInt32ToAscii( rangeStartOrlastNbytes,
@@ -1450,7 +1449,7 @@ static HTTPStatus_t addRangeHeader( HTTPRequestHeaders_t * pRequestHeaders,
14501449
/* Add the Range Request header field and value to the buffer. */
14511450
returnStatus = addHeader( pRequestHeaders,
14521451
"Range",
1453-
sizeof( "Range" ) - 1U,
1452+
CONST_STRLEN( "Range" ),
14541453
rangeValueBuffer,
14551454
rangeValueLength );
14561455

@@ -1485,8 +1484,7 @@ static HTTPStatus_t writeRequestLine( HTTPRequestHeaders_t * pRequestHeaders,
14851484
toAddLen = methodLen + 1U + pathLen + 1U;
14861485
}
14871486

1488-
/* "HTTP/1.1\r\n" */
1489-
toAddLen += sizeof( "HTTP/1.1" ) - 1U + 2U;
1487+
toAddLen += CONST_STRLEN( "HTTP/1.1\r\n" );
14901488

14911489
pBufferCur = ( char * ) ( pRequestHeaders->pBuffer );
14921490

@@ -1520,7 +1518,7 @@ static HTTPStatus_t writeRequestLine( HTTPRequestHeaders_t * pRequestHeaders,
15201518
pBufferCur += 1U;
15211519

15221520
( void ) strcpy( pBufferCur, "HTTP/1.1\r\n" );
1523-
pBufferCur += sizeof( "HTTP/1.1\r\n" ) - 1U;
1521+
pBufferCur += CONST_STRLEN( "HTTP/1.1\r\n" );
15241522

15251523
pRequestHeaders->headersLen = toAddLen;
15261524
}
@@ -1594,17 +1592,17 @@ HTTPStatus_t HTTPClient_InitializeRequestHeaders( HTTPRequestHeaders_t * pReques
15941592
/* Write "User-Agent: <Value>". */
15951593
returnStatus = addHeader( pRequestHeaders,
15961594
"User-Agent",
1597-
sizeof( "User-Agent" ) - 1U,
1595+
CONST_STRLEN( "User-Agent" ),
15981596
HTTP_USER_AGENT_VALUE,
1599-
sizeof( HTTP_USER_AGENT_VALUE ) - 1U );
1597+
CONST_STRLEN( HTTP_USER_AGENT_VALUE ) );
16001598
}
16011599

16021600
if( returnStatus == HTTPSuccess )
16031601
{
16041602
/* Write "Host: <Value>". */
16051603
returnStatus = addHeader( pRequestHeaders,
16061604
"Host",
1607-
sizeof( "Host" ) - 1U,
1605+
CONST_STRLEN( "Host" ),
16081606
pRequestInfo->pHost,
16091607
pRequestInfo->hostLen );
16101608
}
@@ -1616,9 +1614,9 @@ HTTPStatus_t HTTPClient_InitializeRequestHeaders( HTTPRequestHeaders_t * pReques
16161614
/* Write "Connection: keep-alive". */
16171615
returnStatus = addHeader( pRequestHeaders,
16181616
"Connection",
1619-
sizeof( "Connection" ) - 1U,
1617+
CONST_STRLEN( "Connection" ),
16201618
"keep-alive",
1621-
sizeof( "keep-alive" ) - 1U );
1619+
CONST_STRLEN( "keep-alive" ) );
16221620
}
16231621
}
16241622

@@ -1848,7 +1846,7 @@ static HTTPStatus_t addContentLengthHeader( HTTPRequestHeaders_t * pRequestHeade
18481846

18491847
returnStatus = addHeader( pRequestHeaders,
18501848
"Content-Length",
1851-
sizeof( "Content-Length" ) - 1U,
1849+
CONST_STRLEN( "Content-Length" ),
18521850
pContentLengthValue,
18531851
contentLengthValueNumBytes );
18541852

Diff for: source/include/core_http_client_private.h

+7
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,13 @@
4646
#endif
4747
/* *INDENT-ON* */
4848

49+
/**
50+
* @brief Preprocessor macro to calculate the length of a const char * string.
51+
* @note It is intended that this function-like macro be evaluated by the c
52+
* preprocessor to the actual length of the constant string argument.
53+
*/
54+
#define CONST_STRLEN( string ) ( sizeof( string ) - 1U )
55+
4956
/**
5057
* @brief Indicator for function #httpHeaderStrncpy that the pSrc parameter is a
5158
* header value.

0 commit comments

Comments
 (0)