socklen_t address_len;
struct sockaddr_storage address;
- void (*before_connect)(void *private_data);
- void (*after_connect)(void *private_data);
+ void (*before_connect)(int fd, void *private_data);
+ void (*after_connect)(int fd, void *private_data);
void *private_data;
};
struct tevent_req *async_connect_send(
TALLOC_CTX *mem_ctx, struct tevent_context *ev, int fd,
const struct sockaddr *address, socklen_t address_len,
- void (*before_connect)(void *private_data),
- void (*after_connect)(void *private_data),
+ void (*before_connect)(int fd, void *private_data),
+ void (*after_connect)(int fd, void *private_data),
void *private_data)
{
struct tevent_req *req;
}
if (state->before_connect != NULL) {
- state->before_connect(state->private_data);
+ state->before_connect(fd, state->private_data);
}
state->result = connect(fd, address, address_len);
if (state->after_connect != NULL) {
- state->after_connect(state->private_data);
+ state->after_connect(fd, state->private_data);
}
if (state->result == 0) {
struct tevent_req *async_connect_send(
TALLOC_CTX *mem_ctx, struct tevent_context *ev, int fd,
const struct sockaddr *address, socklen_t address_len,
- void (*before_connect)(void *private_data),
- void (*after_connect)(void *private_data),
+ void (*before_connect)(int fd, void *private_data),
+ void (*after_connect)(int fd, void *private_data),
void *private_data);
int async_connect_recv(struct tevent_req *req, int *perrno);
static void np_sock_connect_cleanup(
struct tevent_req *req, enum tevent_req_state req_state);
-static void np_sock_connect_before(void *private_data);
-static void np_sock_connect_after(void *private_data);
+static void np_sock_connect_before(int fd, void *private_data);
+static void np_sock_connect_after(int fd, void *private_data);
static void np_sock_connect_connected(struct tevent_req *subreq);
static void np_sock_connect_written(struct tevent_req *subreq);
static void np_sock_connect_read_done(struct tevent_req *subreq);
}
}
-static void np_sock_connect_before(void *private_data)
+static void np_sock_connect_before(int fd, void *private_data)
{
become_root();
}
-static void np_sock_connect_after(void *private_data)
+static void np_sock_connect_after(int fd, void *private_data)
{
unbecome_root();
}