Lines Matching refs:conn
47 struct connection *conn = data; in pipe_interrupt() local
50 fd = os_rcv_fd(conn->socket[0], &conn->helper_pid); in pipe_interrupt()
57 os_close_file(conn->fd); in pipe_interrupt()
60 list_del(&conn->list); in pipe_interrupt()
62 conn->fd = fd; in pipe_interrupt()
63 list_add(&conn->list, &conn->port->connections); in pipe_interrupt()
65 complete(&conn->port->done); in pipe_interrupt()
78 struct connection *conn; in port_accept() local
89 conn = kmalloc(sizeof(*conn), GFP_ATOMIC); in port_accept()
90 if (conn == NULL) { in port_accept()
95 *conn = ((struct connection) in port_accept()
96 { .list = LIST_HEAD_INIT(conn->list), in port_accept()
103 IRQF_SHARED, "telnetd", conn)) { in port_accept()
113 list_add(&conn->list, &port->pending); in port_accept()
117 kfree(conn); in port_accept()
227 struct connection *conn; in port_wait() local
239 conn = list_entry(port->connections.next, struct connection, in port_wait()
241 list_del(&conn->list); in port_wait()
244 os_shutdown_socket(conn->socket[0], 1, 1); in port_wait()
245 os_close_file(conn->socket[0]); in port_wait()
246 os_shutdown_socket(conn->socket[1], 1, 1); in port_wait()
247 os_close_file(conn->socket[1]); in port_wait()
255 um_free_irq(TELNETD_IRQ, conn); in port_wait()
257 if (conn->fd >= 0) in port_wait()
259 os_close_file(conn->fd); in port_wait()
260 kfree(conn); in port_wait()
263 fd = conn->fd; in port_wait()
264 dev->helper_pid = conn->helper_pid; in port_wait()
265 dev->telnetd_pid = conn->telnetd_pid; in port_wait()
266 kfree(conn); in port_wait()