Commit 509f505c authored by Titouan Soulard's avatar Titouan Soulard

libcapulet: use IPv6 for initial parameters exchange

parent 401ce4bf
......@@ -107,7 +107,7 @@ int main(int argc, char *argv[]) {
// Set up remote address
if(is_client) {
memset(&server_hints, 0, sizeof(struct addrinfo));
server_hints.ai_family = AF_INET;
server_hints.ai_family = AF_INET6;
server_hints.ai_socktype = SOCK_DGRAM;
if(getaddrinfo(remote_host, "7362", &server_hints, &server_infos) != 0) {
......
......@@ -25,7 +25,7 @@ struct CapuletNetUdpContext *capulet_net_udp_initialize() {
int capulet_net_udp_serve_qp(struct CapuletNetUdpContext *ctx) {
struct addrinfo server_hints;
struct addrinfo *server_infos;
struct sockaddr client_addr;
struct sockaddr_storage client_addr;
int result;
int server_socket;
......@@ -37,7 +37,7 @@ int capulet_net_udp_serve_qp(struct CapuletNetUdpContext *ctx) {
// Set up bind address
memset(&server_hints, 0, sizeof(struct addrinfo));
server_hints.ai_family = AF_INET;
server_hints.ai_family = AF_INET6;
server_hints.ai_socktype = SOCK_DGRAM;
server_hints.ai_flags = AI_PASSIVE;
......@@ -64,15 +64,15 @@ int capulet_net_udp_serve_qp(struct CapuletNetUdpContext *ctx) {
// Address info can be freed as soon as the socket in bound
freeaddrinfo(server_infos);
recvfrom(server_socket, receive_buffer, buffer_size, 0, &client_addr, &client_addr_size);
recvfrom(server_socket, receive_buffer, buffer_size, 0, (struct sockaddr *) &client_addr, &client_addr_size);
memcpy((void *) ctx->remote, (void *) receive_buffer, buffer_size);
sendto(server_socket, (void *) ctx->local, buffer_size, MSG_CONFIRM, &client_addr, client_addr_size);
sendto(server_socket, (void *) ctx->local, buffer_size, MSG_CONFIRM, (struct sockaddr *) &client_addr, client_addr_size);
return server_socket;
}
bool capulet_net_udp_serve_mr(struct CommonHashtableTable *hashtable, int server_socket) {
struct sockaddr client_addr;
struct sockaddr_storage client_addr;
socklen_t client_addr_size = sizeof(struct sockaddr_storage);
struct CapuletNetUdpMrQueryPacket mr_query_pkt;
......@@ -89,7 +89,7 @@ bool capulet_net_udp_serve_mr(struct CommonHashtableTable *hashtable, int server
usleep(10);
buffer_size = sizeof(struct CapuletNetUdpMrQueryPacket);
recv_size = recvfrom(server_socket, receive_buffer, buffer_size, 0, &client_addr, &client_addr_size);
recv_size = recvfrom(server_socket, receive_buffer, buffer_size, 0, (struct sockaddr *) &client_addr, &client_addr_size);
memcpy((void *) &mr_query_pkt, (void *) receive_buffer, buffer_size);
buffer_size = sizeof(struct CapuletNetUdpMrInfoPacket);
......@@ -106,7 +106,7 @@ bool capulet_net_udp_serve_mr(struct CommonHashtableTable *hashtable, int server
mr_info_pkt.size = mr->length;
mr_info_pkt.key = mr->rkey;
sendto(server_socket, (void *) &mr_info_pkt, buffer_size, MSG_CONFIRM, &client_addr, client_addr_size);
sendto(server_socket, (void *) &mr_info_pkt, buffer_size, MSG_CONFIRM, (struct sockaddr *) &client_addr, client_addr_size);
}
}
......
......@@ -17,7 +17,7 @@ int trx_rdma_start(TRXState *s, const TRXDriverParams2 *p) {
// If acting as a client, the remote address should therefore be set up.
if(sdr_context->server_addr) {
memset(&server_hints, 0, sizeof(struct addrinfo));
server_hints.ai_family = AF_INET;
server_hints.ai_family = AF_INET6;
server_hints.ai_socktype = SOCK_DGRAM;
if(getaddrinfo(sdr_context->server_addr, "7362", &server_hints, &server_infos) != 0) return -1;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment