/*---------------------------------------------------------------------------*/ static int on_new_session(struct xio_session *session, struct xio_new_session_req *req, void *cb_user_context) { struct portals_vec *portals; struct server_data *server_data = cb_user_context; portals = portals_get(server_data, req->uri, req->user_context); /* automatic accept the request */ xio_accept(session, portals->vec, portals->vec_len, NULL, 0); portals_free(portals); return 0; }
/*---------------------------------------------------------------------------*/ static int on_new_session(struct xio_session *session, struct xio_new_session_req *req, void *cb_user_context) { struct portals_vec *portals; struct server_data *server_data = (struct server_data *)cb_user_context; printf("**** [%p] on_new_session :%s:%d\n", session, get_ip((struct sockaddr *)&req->src_addr), get_port((struct sockaddr *)&req->src_addr)); portals = portals_get(server_data, req->uri, req->private_data); /* automatic accept the request */ xio_accept(session, portals->vec, portals->vec_len, NULL, 0); portals_free(portals); return 0; }