Skip to content

Commit

Permalink
Merge branch 'nw_socket' into nw_secitem
Browse files Browse the repository at this point in the history
  • Loading branch information
sbSteveK committed Feb 24, 2025
2 parents 25b5d40 + 031a0e0 commit ef77447
Showing 1 changed file with 8 additions and 6 deletions.
14 changes: 8 additions & 6 deletions source/channel_bootstrap.c
Original file line number Diff line number Diff line change
Expand Up @@ -612,12 +612,13 @@ static void s_on_client_connection_established(struct aws_socket *socket, int er
connection_args->failed_count++;
}

struct aws_allocator *allocator = connection_args->bootstrap->allocator;

if (error_code || connection_args->connection_chosen) {
if (s_aws_socket_domain_uses_dns(connection_args->outgoing_options.domain) && error_code) {
struct aws_host_address host_address;
host_address.host = connection_args->host_name;
host_address.address =
aws_string_new_from_c_str(connection_args->bootstrap->allocator, socket->remote_endpoint.address);
host_address.address = aws_string_new_from_c_str(allocator, socket->remote_endpoint.address);
host_address.record_type = connection_args->outgoing_options.domain == AWS_SOCKET_IPV6
? AWS_ADDRESS_RECORD_TYPE_AAAA
: AWS_ADDRESS_RECORD_TYPE_A;
Expand All @@ -641,8 +642,8 @@ static void s_on_client_connection_established(struct aws_socket *socket, int er
(void *)socket);

struct socket_shutdown_setup_channel_args *close_args =
aws_mem_calloc(connection_args->bootstrap->allocator, 1, sizeof(struct socket_shutdown_setup_channel_args));
close_args->allocator = connection_args->bootstrap->allocator;
aws_mem_calloc(allocator, 1, sizeof(struct socket_shutdown_setup_channel_args));
close_args->allocator = allocator;
close_args->connection_args = connection_args;
close_args->error_code = error_code;

Expand All @@ -651,7 +652,7 @@ static void s_on_client_connection_established(struct aws_socket *socket, int er

aws_socket_close(socket);
aws_socket_clean_up(socket);
aws_mem_release(connection_args->bootstrap->allocator, socket);
aws_mem_release(allocator, socket);

#if defined(AWS_USE_SECITEM)
/* If Apple Network Framework Secitem is being used, it's possible at this point that
Expand Down Expand Up @@ -1476,12 +1477,13 @@ static void s_on_server_channel_on_setup_completed(struct aws_channel *channel,
close_args->allocator = allocator;
close_args->channel_data = channel_data;
close_args->error_code = aws_last_error();
struct aws_socket *socket = channel_data->socket;

aws_socket_set_cleanup_complete_callback(
channel_data->socket, socket_shutdown_server_channel_setup_complete_fn, close_args);

aws_socket_clean_up(channel_data->socket);
aws_mem_release(allocator, (void *)channel_data->socket);
aws_mem_release(socket->allocator, socket);
return;
}

Expand Down

0 comments on commit ef77447

Please sign in to comment.