mirror of
https://github.com/Mbed-TLS/mbedtls.git
synced 2025-07-30 22:43:08 +03:00
Backport 2.28: Avoid use of ip_len
as it clashes with a macro in AIX system headers
Fixes #8624 Signed-off-by: Tom Cosgrove <tom.cosgrove@arm.com>
This commit is contained in:
@ -140,7 +140,7 @@ int mbedtls_net_bind(mbedtls_net_context *ctx, const char *bind_ip, const char *
|
|||||||
* \param client_ctx Will contain the connected client socket
|
* \param client_ctx Will contain the connected client socket
|
||||||
* \param client_ip Will contain the client IP address, can be NULL
|
* \param client_ip Will contain the client IP address, can be NULL
|
||||||
* \param buf_size Size of the client_ip buffer
|
* \param buf_size Size of the client_ip buffer
|
||||||
* \param ip_len Will receive the size of the client IP written,
|
* \param cip_len Will receive the size of the client IP written,
|
||||||
* can be NULL if client_ip is null
|
* can be NULL if client_ip is null
|
||||||
*
|
*
|
||||||
* \return 0 if successful, or
|
* \return 0 if successful, or
|
||||||
@ -153,7 +153,7 @@ int mbedtls_net_bind(mbedtls_net_context *ctx, const char *bind_ip, const char *
|
|||||||
*/
|
*/
|
||||||
int mbedtls_net_accept(mbedtls_net_context *bind_ctx,
|
int mbedtls_net_accept(mbedtls_net_context *bind_ctx,
|
||||||
mbedtls_net_context *client_ctx,
|
mbedtls_net_context *client_ctx,
|
||||||
void *client_ip, size_t buf_size, size_t *ip_len);
|
void *client_ip, size_t buf_size, size_t *cip_len);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Check and wait for the context to be ready for read/write
|
* \brief Check and wait for the context to be ready for read/write
|
||||||
|
@ -321,7 +321,7 @@ static int net_would_block(const mbedtls_net_context *ctx)
|
|||||||
*/
|
*/
|
||||||
int mbedtls_net_accept(mbedtls_net_context *bind_ctx,
|
int mbedtls_net_accept(mbedtls_net_context *bind_ctx,
|
||||||
mbedtls_net_context *client_ctx,
|
mbedtls_net_context *client_ctx,
|
||||||
void *client_ip, size_t buf_size, size_t *ip_len)
|
void *client_ip, size_t buf_size, size_t *cip_len)
|
||||||
{
|
{
|
||||||
int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED;
|
int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED;
|
||||||
int type;
|
int type;
|
||||||
@ -404,22 +404,22 @@ int mbedtls_net_accept(mbedtls_net_context *bind_ctx,
|
|||||||
if (client_ip != NULL) {
|
if (client_ip != NULL) {
|
||||||
if (client_addr.ss_family == AF_INET) {
|
if (client_addr.ss_family == AF_INET) {
|
||||||
struct sockaddr_in *addr4 = (struct sockaddr_in *) &client_addr;
|
struct sockaddr_in *addr4 = (struct sockaddr_in *) &client_addr;
|
||||||
*ip_len = sizeof(addr4->sin_addr.s_addr);
|
*cip_len = sizeof(addr4->sin_addr.s_addr);
|
||||||
|
|
||||||
if (buf_size < *ip_len) {
|
if (buf_size < *cip_len) {
|
||||||
return MBEDTLS_ERR_NET_BUFFER_TOO_SMALL;
|
return MBEDTLS_ERR_NET_BUFFER_TOO_SMALL;
|
||||||
}
|
}
|
||||||
|
|
||||||
memcpy(client_ip, &addr4->sin_addr.s_addr, *ip_len);
|
memcpy(client_ip, &addr4->sin_addr.s_addr, *cip_len);
|
||||||
} else {
|
} else {
|
||||||
struct sockaddr_in6 *addr6 = (struct sockaddr_in6 *) &client_addr;
|
struct sockaddr_in6 *addr6 = (struct sockaddr_in6 *) &client_addr;
|
||||||
*ip_len = sizeof(addr6->sin6_addr.s6_addr);
|
*cip_len = sizeof(addr6->sin6_addr.s6_addr);
|
||||||
|
|
||||||
if (buf_size < *ip_len) {
|
if (buf_size < *cip_len) {
|
||||||
return MBEDTLS_ERR_NET_BUFFER_TOO_SMALL;
|
return MBEDTLS_ERR_NET_BUFFER_TOO_SMALL;
|
||||||
}
|
}
|
||||||
|
|
||||||
memcpy(client_ip, &addr6->sin6_addr.s6_addr, *ip_len);
|
memcpy(client_ip, &addr6->sin6_addr.s6_addr, *cip_len);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user