void signal_handle() { ras_msg_t data = mq_recv_msg(TELL_MSG, -1, client_id); if(data.type != -1) { printf("%s", data.msg); fflush(stdout); client_signal(); } }
static int on_ssh_message_callback(__unused ssh_session _session, ssh_message msg, void *arg) { struct tmate_session *session = arg; if (ssh_message_type(msg) == SSH_REQUEST_CHANNEL && ssh_message_subtype(msg) == SSH_CHANNEL_REQUEST_WINDOW_CHANGE) { struct winsize ws; ws.ws_col = ssh_message_channel_request_pty_width(msg); ws.ws_row = ssh_message_channel_request_pty_height(msg); ioctl(session->pty, TIOCSWINSZ, &ws); client_signal(SIGWINCH); return 1; } return 0; }