/* the kdc_server the connection belongs to */
struct kdc_socket *kdc_socket;
- struct tsocket_address *local_address;
- struct tsocket_address *remote_address;
-
struct packet_context *packet;
};
tmp_ctx,
&input,
&reply,
- kdcconn->remote_address,
- kdcconn->local_address,
+ kdcconn->conn->remote_address,
+ kdcconn->conn->local_address,
0 /* Not datagram */);
if (!ret) {
talloc_free(tmp_ctx);
{
struct kdc_socket *kdc_socket = talloc_get_type(conn->private_data, struct kdc_socket);
struct kdc_tcp_connection *kdcconn;
- struct socket_address *src_addr;
- struct socket_address *my_addr;
- int ret;
kdcconn = talloc_zero(conn, struct kdc_tcp_connection);
if (!kdcconn) {
kdcconn->kdc_socket = kdc_socket;
conn->private_data = kdcconn;
- src_addr = socket_get_peer_addr(kdcconn->conn->socket, kdcconn);
- if (!src_addr) {
- kdc_tcp_terminate_connection(kdcconn, "kdc_tcp_accept: out of memory");
- return;
- }
-
- my_addr = socket_get_my_addr(kdcconn->conn->socket, kdcconn);
- if (!my_addr) {
- kdc_tcp_terminate_connection(kdcconn, "kdc_tcp_accept: out of memory");
- return;
- }
-
- ret = tsocket_address_bsd_from_sockaddr(kdcconn,
- src_addr->sockaddr,
- src_addr->sockaddrlen,
- &kdcconn->remote_address);
- if (ret < 0) {
- kdc_tcp_terminate_connection(kdcconn, "kdc_tcp_accept: out of memory");
- return;
- }
-
- ret = tsocket_address_bsd_from_sockaddr(kdcconn,
- my_addr->sockaddr,
- my_addr->sockaddrlen,
- &kdcconn->local_address);
- if (ret < 0) {
- kdc_tcp_terminate_connection(kdcconn, "kdc_tcp_accept: out of memory");
- return;
- }
-
- TALLOC_FREE(src_addr);
- TALLOC_FREE(my_addr);
-
kdcconn->packet = packet_init(kdcconn);
if (kdcconn->packet == NULL) {
kdc_tcp_terminate_connection(kdcconn, "kdc_tcp_accept: out of memory");