static void do_command(device *me, ide_controller *controller, int command) { if (controller->state != idle_state) device_error(me, "controller %d - command when not idle", controller->nr); switch (command) { case 0x20: case 0x21: /* read-sectors */ setup_fifo(me, controller, 0/*is_simple*/, 1/*is_with_disk*/, is_read); break; case 0x30: case 0x31: /* write */ setup_fifo(me, controller, 0/*is_simple*/, 1/*is_with_disk*/, is_write); break; } }
int main(int argc, char *argv[]) { int fd[2]; setup_udp("udp_0send", fd); try_0send("udp_0send", fd[0]); close_both(fd); setup_udp("udp_0write", fd); try_0write("udp_0write", fd[0]); close_both(fd); setup_tcp("tcp_0send", fd); try_0send("tcp_0send", fd[0]); close_both(fd); setup_tcp("tcp_0write", fd); try_0write("tcp_0write", fd[0]); close_both(fd); setup_udsstream("udsstream_0send", fd); try_0send("udsstream_0send", fd[0]); close_both(fd); setup_udsstream("udsstream_0write", fd); try_0write("udsstream_0write", fd[0]); close_both(fd); setup_udsdgram("udsdgram_0send", fd); try_0send("udsdgram_0send", fd[0]); close_both(fd); setup_udsdgram("udsdgram_0write", fd); try_0write("udsdgram_0write", fd[0]); close_both(fd); setup_pipe("pipe_0write", fd); try_0write("pipd_0write", fd[0]); close_both(fd); setup_fifo("fifo_0write", fd); try_0write("fifo_0write", fd[0]); close_both(fd); return (0); }