📄 test-inet_udp.c
字号:
fprintf(stdout, "%-20s| | | \n", mgmtflag_string(flag)); } if (fd == resp_fd) { fprintf(stdout, " | | | %-15s\n", mgmtflag_string(flag)); } if (fd == list_fd) { fprintf(stdout, " | | | %-15s\n", mgmtflag_string(flag)); }}char *size_string(ulong size){ static char buf[128]; switch (size) { case T_INFINITE: return ("T_INFINITE"); case T_INVALID: return ("T_INVALID"); case T_UNSPEC: return ("T_UNSPEC"); } snprintf(buf, sizeof(buf), "%lu", size); return buf;}voidprint_event_conn(int fd, int event){ switch (event) { case __EVENT_INFO_REQ: fprintf(stdout, "T_INFO_REQ ----->| | | [%d]\n", state); break; case __EVENT_INFO_ACK: fprintf(stdout, "T_INFO_ACK <----/| | | [%d]\n", state); break; case __EVENT_OPTMGMT_REQ: fprintf(stdout, "T_OPTMGMT_REQ ----->| | | [%d]\n", state); print_mgmtflag(fd, cmd.tpi.optmgmt_req.MGMT_flags); print_options(fd, cmd.cbuf + cmd.tpi.optmgmt_req.OPT_offset, cmd.tpi.optmgmt_req.OPT_length); break; case __EVENT_OPTMGMT_ACK: fprintf(stdout, "T_OPTMGMT_ACK <----/| | | [%d]\n", state); print_mgmtflag(fd, cmd.tpi.optmgmt_ack.MGMT_flags); print_options(fd, cmd.cbuf + cmd.tpi.optmgmt_ack.OPT_offset, cmd.tpi.optmgmt_ack.OPT_length); break; case __EVENT_BIND_REQ: fprintf(stdout, "T_BIND_REQ ----->| | | [%d]\n", state); break; case __EVENT_BIND_ACK: fprintf(stdout, "T_BIND_ACK <----/| | | [%d]\n", state); if (verbose > 1) { fprintf(stdout, "%-20s| | | \n", addr_string(cmd.cbuf + cmd.tpi.bind_ack.ADDR_offset, cmd.tpi.bind_ack.ADDR_length)); } break; case __EVENT_ADDR_REQ: fprintf(stdout, "T_ADDR_REQ ----->| | | [%d]\n", state); break; case __EVENT_ADDR_ACK: fprintf(stdout, "T_ADDR_ACK <----/| | | [%d]\n", state); if (verbose > 1) { fprintf(stdout, "%-20s| | | \n", addr_string(cmd.cbuf + cmd.tpi.addr_ack.LOCADDR_offset, cmd.tpi.addr_ack.LOCADDR_length)); fprintf(stdout, "%-20s| | | \n", addr_string(cmd.cbuf + cmd.tpi.addr_ack.REMADDR_offset, cmd.tpi.addr_ack.REMADDR_length)); } break; case __EVENT_UNBIND_REQ: fprintf(stdout, "T_UNBIND_REQ ----->| | | [%d]\n", state); break; case __EVENT_ERROR_ACK: fprintf(stdout, "T_ERROR_ACK <----/| | | [%d]\n", state); fprintf(stdout, "%-15s | | | \n", terrno_string(cmd.tpi.error_ack.TLI_error, cmd.tpi.error_ack.UNIX_error)); break; case __EVENT_OK_ACK: fprintf(stdout, "T_OK_ACK <----/| | | [%d]\n", state); break; case __EVENT_UNITDATA_REQ: fprintf(stdout, "T_UNITDATA_REQ----->| - - - - - - ->\\ | | [%d]\n", state); if (verbose > 1) { fprintf(stdout, "%-20s| | | \n", addr_string(cmd.cbuf + cmd.tpi.unitdata_req.DEST_offset, cmd.tpi.unitdata_req.DEST_length)); print_options(fd, cmd.cbuf + cmd.tpi.unitdata_req.OPT_offset, cmd.tpi.unitdata_req.OPT_length); } break; case __EVENT_UNITDATA_IND: fprintf(stdout, "T_UNITDATA_IND<-----|<- - - - - - - / | | [%d]\n", state); if (verbose > 1) { fprintf(stdout, "%-20s| | | \n", addr_string(cmd.cbuf + cmd.tpi.unitdata_ind.SRC_offset, cmd.tpi.unitdata_ind.SRC_length)); print_options(fd, cmd.cbuf + cmd.tpi.unitdata_ind.OPT_offset, cmd.tpi.unitdata_ind.OPT_length); } break; case __EVENT_UDERROR_IND: fprintf(stdout, "T_UDERROR_IND <----/|<- - - - - - - / | | [%d]\n", state); break; case __EVENT_CONN_REQ: fprintf(stdout, "T_CONN_REQ ----->| - - - - - - ->\\ | | [%d]\n", state); print_options(fd, cmd.cbuf + cmd.tpi.conn_req.OPT_offset, cmd.tpi.conn_req.OPT_length); break; case __EVENT_CONN_IND: fprintf(stdout, "T_CONN_IND <-----|<- - - - - - - / | | [%d]\n", state); print_options(fd, cmd.cbuf + cmd.tpi.conn_ind.OPT_offset, cmd.tpi.conn_ind.OPT_length); seq[fd] = cmd.tpi.conn_ind.SEQ_number; break; case __EVENT_CONN_RES: fprintf(stdout, "T_CONN_RES ----->| - - - - - - ->\\ | | [%d]\n", state); print_options(fd, cmd.cbuf + cmd.tpi.conn_res.OPT_offset, cmd.tpi.conn_res.OPT_length); break; case __EVENT_CONN_CON: fprintf(stdout, "T_CONN_CON <-----|<- - - - - - - / | | [%d]\n", state); print_options(fd, cmd.cbuf + cmd.tpi.conn_con.OPT_offset, cmd.tpi.conn_con.OPT_length); break; case __EVENT_DATA_REQ: fprintf(stdout, "T_DATA_REQ ----->| - - - - - - ->\\ | | [%d]\n", state); break; case __EVENT_DATA_IND: fprintf(stdout, "T_DATA_IND <-----|<- - - - - - - / | | [%d]\n", state); break; case __EVENT_EXDATA_REQ: fprintf(stdout, "T_EXDATA_REQ ----->| - - - - - - ->\\ | | [%d]\n", state); break; case __EVENT_EXDATA_IND: fprintf(stdout, "T_EXDATA_IND <-----|<- - - - - - - / | | [%d]\n", state); break; case __EVENT_OPTDATA_REQ: if (cmd.tpi.optdata_req.DATA_flag & T_ODF_EX) { if (cmd.tpi.optdata_req.DATA_flag & T_ODF_MORE) fprintf(stdout, "T_OPTDATA_REQ+----->| - (%03lu:-U-) ->\\ | | [%d]\n", opt_data.sid_val, state); else fprintf(stdout, "T_OPTDATA_REQ ----->| - (%03lu:-U-) ->\\ | | [%d]\n", opt_data.sid_val, state); } else { if (cmd.tpi.optdata_req.DATA_flag & T_ODF_MORE) fprintf(stdout, "T_OPTDATA_REQ+----->| - (%03lu:---) ->\\ | | [%d]\n", opt_data.sid_val, state); else fprintf(stdout, "T_OPTDATA_REQ ----->| - (%03lu:---) ->\\ | | [%d]\n", opt_data.sid_val, state); } print_options(fd, cmd.cbuf + cmd.tpi.optdata_req.OPT_offset, cmd.tpi.optdata_req.OPT_length); break; case __EVENT_OPTDATA_IND: if (cmd.tpi.optdata_ind.DATA_flag & T_ODF_EX) { if (cmd.tpi.optdata_ind.DATA_flag & T_ODF_MORE) fprintf(stdout, "T_OPTDATA_IND+<-----|<- -(%03lu:-U-)- / [%010lu] | | [%d]\n", (ulong) ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->sid_val, (ulong) ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->tsn_val, state); else fprintf(stdout, "T_OPTDATA_IND <-----|<- -(%03lu:-U-)- / [%010lu] | | [%d]\n", (ulong) ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->sid_val, (ulong) ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->tsn_val, state); } else { if (cmd.tpi.optdata_ind.DATA_flag & T_ODF_MORE) fprintf(stdout, "T_OPTDATA_IND+<-----|<- -(%03lu:%03lu)- / [%010lu] | | [%d]\n", (ulong) ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->sid_val, (ulong) ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->ssn_val, (ulong) ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->tsn_val, state); else fprintf(stdout, "T_OPTDATA_IND <-----|<- -(%03lu:%03lu)- / [%010lu] | | [%d]\n", (ulong) ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->sid_val, (ulong) ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->ssn_val, (ulong) ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->tsn_val, state); } print_options(fd, cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset, cmd.tpi.optdata_ind.OPT_length); tsn[fd] = ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->tsn_val; sid[fd] = ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->sid_val; break; case __EVENT_DISCON_REQ: fprintf(stdout, "T_DISCON_REQ ----->| - - - - - - ->\\ | | [%d]\n", state); break; case __EVENT_DISCON_IND: fprintf(stdout, "T_DISCON_IND <-----|<- - - - - - - / | | [%d]\n", state); break; case __EVENT_ORDREL_REQ: fprintf(stdout, "T_ORDREL_REQ ----->| - - - - - - ->\\ | | [%d]\n", state); break; case __EVENT_ORDREL_IND: fprintf(stdout, "T_ORDREL_IND <-----|<- - - - - - - / | | [%d]\n", state); break; case __EVENT_CAPABILITY_REQ: fprintf(stdout, "T_CAPABILITY_REQ--->| | | [%d]\n", state); break; case __EVENT_CAPABILITY_ACK: fprintf(stdout, "T_CAPABILITY_ACK<--/| | | [%d]\n", state); break; case __EVENT_UNKNOWN: fprintf(stdout, "????%4ld???? ?----?|?- - - - - - -? | | [%d]\n", cmd.tpi.type, state); break; default: case __RESULT_SCRIPT_ERROR: break; }}voidprint_event_resp(int fd, int event){ switch (event) { case __EVENT_INFO_REQ: fprintf(stdout, " | | |<--- T_INFO_REQ [%d]\n", state); break; case __EVENT_INFO_ACK: fprintf(stdout, " | | |\\--> T_INFO_ACK---> [%d]\n", state); break; case __EVENT_OPTMGMT_REQ: fprintf(stdout, " | | |<--- T_OPTMGMT_REQ [%d]\n", state); print_mgmtflag(fd, cmd.tpi.optmgmt_req.MGMT_flags); print_options(fd, cmd.cbuf + cmd.tpi.optmgmt_req.OPT_offset, cmd.tpi.optmgmt_req.OPT_length); break; case __EVENT_OPTMGMT_ACK: fprintf(stdout, " | | |\\--> T_OPTMGMT_ACK [%d]\n", state); print_mgmtflag(fd, cmd.tpi.optmgmt_ack.MGMT_flags); print_options(fd, cmd.cbuf + cmd.tpi.optmgmt_ack.OPT_offset, cmd.tpi.optmgmt_ack.OPT_length); break; case __EVENT_BIND_REQ: fprintf(stdout, " | | |<--- T_BIND_REQ [%d]\n", state); break; case __EVENT_BIND_ACK: fprintf(stdout, " | | |\\--> T_BIND_ACK [%d]\n", state); if (verbose > 1) { fprintf(stdout, " | | | %-15s\n", addr_string(cmd.cbuf + cmd.tpi.bind_ack.ADDR_offset, cmd.tpi.bind_ack.ADDR_length)); } break; case __EVENT_ADDR_REQ: fprintf(stdout, " | | |<--- T_ADDR_REQ [%d]\n", state); break; case __EVENT_ADDR_ACK: fprintf(stdout, " | | |\\--> T_ADDR_ACK [%d]\n", state); if (verbose > 1) { fprintf(stdout, " | | | %-15s\n", addr_string(cmd.cbuf + cmd.tpi.addr_ack.LOCADDR_offset, cmd.tpi.addr_ack.LOCADDR_length)); fprintf(stdout, " | | | %-15s\n", addr_string(cmd.cbuf + cmd.tpi.addr_ack.REMADDR_offset, cmd.tpi.addr_ack.REMADDR_length)); } break; case __EVENT_UNBIND_REQ: fprintf(stdout, " | | |<--- T_UNBIND_REQ [%d]\n", state); break; case __EVENT_ERROR_ACK: fprintf(stdout, " | | |\\--> T_ERROR_ACK [%d]\n", state); fprintf(stdout, " | | | %-15s\n", terrno_string(cmd.tpi.error_ack.TLI_error, cmd.tpi.error_ack.UNIX_error)); break; case __EVENT_OK_ACK: fprintf(stdout, " | | |\\--> T_OK_ACK [%d]\n", state); break; case __EVENT_UNITDATA_REQ: fprintf(stdout, " | /<- - - - - - - + -|<--- T_UNITDATA_REQ [%d]\n", state); if (verbose > 1) { fprintf(stdout, " | | | %-15s\n", addr_string(cmd.cbuf + cmd.tpi.unitdata_req.DEST_offset, cmd.tpi.unitdata_req.DEST_length)); print_options(fd, cmd.cbuf + cmd.tpi.unitdata_req.OPT_offset, cmd.tpi.unitdata_req.OPT_length); } break; case __EVENT_UNITDATA_IND: fprintf(stdout, " | \\ - - - - - - - +->|---> T_UNITDATA_IND [%d]\n", state); if (verbose > 1) { fprintf(stdout, " | | | %-15s\n", addr_string(cmd.cbuf + cmd.tpi.unitdata_ind.SRC_offset, cmd.tpi.unitdata_ind.SRC_length)); print_options(fd, cmd.cbuf + cmd.tpi.unitdata_ind.OPT_offset, cmd.tpi.unitdata_ind.OPT_length); } break; case __EVENT_UDERROR_IND: fprintf(stdout, " | \\ - - - - - - - +->|\\--> T_UDERROR_IND [%d]\n", state); break; case __EVENT_CONN_REQ: fprintf(stdout, " | /<- - - - - - - + -|<--- T_CONN_REQ [%d]\n", state); print_options(fd, cmd.cbuf + cmd.tpi.conn_req.OPT_offset, cmd.tpi.conn_req.OPT_length); break; case __EVENT_CONN_IND: fprintf(stdout, " | \\ - - - - - - - +->|---> T_CONN_IND [%d]\n", state); print_options(fd, cmd.cbuf + cmd.tpi.conn_ind.OPT_offset, cmd.tpi.conn_ind.OPT_length); seq[fd] = cmd.tpi.conn_ind.SEQ_number; break; case __EVENT_CONN_RES: fprintf(stdout, " | /<- - - - - - - + -|<--- T_CONN_RES [%d]\n", state); print_options(fd, cmd.cbuf + cmd.tpi.conn_res.OPT_offset, cmd.tpi.conn_res.OPT_length); break; case __EVENT_CONN_CON: fprintf(stdout, " | \\ - - - - - - - +->|---> T_CONN_CON [%d]\n", state); print_options(fd, cmd.cbuf + cmd.tpi.conn_con.OPT_offset, cmd.tpi.conn_con.OPT_length); break; case __EVENT_DATA_REQ: fprintf(stdout, " | /<- - - - - - - + -|<--- T_DATA_REQ [%d]\n", state); break; case __EVENT_DATA_IND: fprintf(stdout, " | \\ - - - - - - - +->|---> T_DATA_IND [%d]\n", state); break; case __EVENT_EXDATA_REQ: fprintf(stdout, " | /<- - - - - - - + -|<--- T_EXDATA_REQ [%d]\n", state); break; case __EVENT_EXDATA_IND: fprintf(stdout, " | \\ - - - - - - - +->|---> T_EXDATA_IND [%d]\n", state); break; case __EVENT_OPTDATA_REQ: if (cmd.tpi.optdata_req.DATA_flag & T_ODF_EX) fprintf(stdout, " | /<- - (%03lu:-U-) + -|<--- T_OPTDATA_REQ [%d]\n", opt_data.sid_val, state); else fprintf(stdout, " | /<- - (%03lu:---) + -|<--- T_OPTDATA_REQ [%d]\n", opt_data.sid_val, state); print_options(fd, cmd.cbuf + cmd.tpi.optdata_req.OPT_offset, cmd.tpi.optdata_req.OPT_length); break; case __EVENT_OPTDATA_IND: if (cmd.tpi.optdata_ind.DATA_flag & T_ODF_EX) { if (cmd.tpi.optdata_ind.DATA_flag & T_ODF_MORE) fprintf(stdout, " | [%010lu] \\ - - (%03lu:-U-) +->|---> T_OPTDATA_IND [%d]\n", (ulong) ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->tsn_val, (ulong) ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->sid_val, state); else fprintf(stdout, " | [%010lu] \\ - - (%03lu:-U-) +->|---> T_OPTDATA_IND [%d]\n", (ulong) ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->tsn_val, (ulong) ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->sid_val, state); } else { if (cmd.tpi.optdata_ind.DATA_flag & T_ODF_MORE) fprintf(stdout, " | [%010lu] \\ - - (%03lu:%03lu) +->|---> T_OPTDATA_IND [%d]\n", (ulong) ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->tsn_val, (ulong) ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->sid_val, (ulong) ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->ssn_val, state); else fprintf(stdout, " | [%010lu] \\ - - (%03lu:%03lu) +->|---> T_OPTDATA_IND [%d]\n", (ulong) ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->tsn_val, (ulong) ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->sid_val, (ulong) ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->ssn_val, state); } print_options(fd, cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset, cmd.tpi.optdata_ind.OPT_length); tsn[fd] = ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->tsn_val; sid[fd] = ((rdat_opt_t *) (cmd.cbuf + cmd.tpi.optdata_ind.OPT_offset))->sid_val; break; case __EVENT_DISCON_REQ: fprintf(stdout, " | /<- - - - - - - + -|<--- T_DISCON_REQ [%d]\n", state); break; case __EVENT_DISCON_IND: fprintf(stdout, " | \\ - - - - - - - +->|---> T_DISCON_IND [%d]\n", state); break; case __EVENT_ORDREL_REQ: fprintf(stdout, " | /<- - - - - - - + -|<--- T_ORDREL_REQ [%d]\n", state); break; case __EVENT_ORDREL_IND: fprintf(stdout, " | \\ - - - - - - - +->|---> T_ORDREL_IND [%d]\n", state); break; case __EVENT_CAPABILITY_REQ: fprintf(stdout, " | | |<---T_CAPABILITY_REQ[%d]\n", state); break; case __EVENT_CAPABILITY_ACK: fprintf(stdout, " | | |\\-->T_CAPABILITY_ACK[%d]\n", state); break; case __EVENT_UNKNOWN: fprintf(stdout, " | | |?--? ????%4ld???? [%d]\n", cmd.tpi.type, state); break; default: case __RESULT_SCRIPT_ERROR: break; }}voidprint_event_list(int fd, int event){ switch (event) { case __EVENT_INFO_REQ: fprintf(stdout, " | |<-+---- T_INFO_REQ [%d]\n", state); break; case __EVENT_INFO_ACK: fprintf(stdout, " | |\\-+---> T_INFO_ACK [%d]\n", state); break; case __EVENT_OPTMGMT_REQ: fprintf(stdout, " | |<-+---- T_OPTMGMT_REQ [%d]\n", state); print_mgmtflag(fd, cmd.tpi.optmgmt_req.MGMT_flags); print_options(fd, cmd.cbuf + cmd.tpi.optmgmt_req.OPT_offset, cmd.tpi.optmgmt_req.OPT_length); break; case __EVENT_OPTMGMT_ACK: fprintf(stdout, " | |\\-+---- T_OPTMGMT_ACK [%d]\n", state); print_mgmtflag(fd, cmd.tpi.optmgmt_ack.MGMT_flags); print_options(fd, cmd.cbuf + cmd.tpi.optmgmt_ack.OPT_offset, cmd.tpi.optmgmt_ack.OPT_length); break; case __EVENT_BIND_REQ: fprintf(stdout, " | |<-+---- T_BIND_REQ [%d]\n", state); break; case __EVENT_BIND_ACK: fprintf(stdout, " | |\\-+---> T_BIND_ACK [%d]\n", state); if (verbose > 1) { fprintf(stdout, " | | | %-15s\n", addr_string(cmd.cbuf + cmd.tpi.bind_ack.ADDR_offset, cmd.tpi.bind_ack.ADDR_length)); } break; case __EVENT_ADDR_REQ: fprintf(stdout, " | |<-+---- T_ADDR_REQ [%d]\n", state); break; case __EVENT_ADDR_ACK: fprintf(stdout, " | |\\-+---> T_ADDR_ACK [%d]\n", state); if (verbose > 1) { fprintf(stdout, " | | | %-15s\n", addr_string(cmd.cbuf + cmd.tpi.addr_ack.LOCADDR_offset, cmd.tpi.addr_ack.LOCADDR_length)); fprintf(stdout, " | | | %-15s\n", addr_string(cmd.cbuf + cmd.tpi.addr_ack.REMADDR_offset, cmd.tpi.addr_ack.REMADDR_length)); } break; case __EVENT_UNBIND_REQ: fprintf(stdout, " |
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -