diff --git a/gtests/net/packetdrill/parser.y b/gtests/net/packetdrill/parser.y index 36b09f9258f018e0c31f7361a76ddbc2d53cd024..aec7dea7374d0a0586e8be10ebacf87e0223feb4 100644 --- a/gtests/net/packetdrill/parser.y +++ b/gtests/net/packetdrill/parser.y @@ -2556,15 +2556,11 @@ srto_min sctp_rtoinfo : '{' srto_initial ',' srto_max ',' srto_min '}' { -#ifdef SCTP_RTOINFO $$ = new_expression(EXPR_SCTP_RTOINFO); $$->value.sctp_rtoinfo = calloc(1, sizeof(struct sctp_rtoinfo_expr)); $$->value.sctp_rtoinfo->srto_initial = $2; $$->value.sctp_rtoinfo->srto_max = $4; $$->value.sctp_rtoinfo->srto_min = $6; -#else - $$ = NULL; -#endif } ; @@ -2665,14 +2661,10 @@ sack_freq sctp_sackinfo : '{' sack_delay ',' sack_freq '}' { -#ifdef SCTP_DELAYED_SACK $$ = new_expression(EXPR_SCTP_SACKINFO); $$->value.sctp_sack_info = calloc(1, sizeof(struct sctp_sack_info_expr)); $$->value.sctp_sack_info->sack_delay = $2; $$->value.sctp_sack_info->sack_freq = $4; -#else - $$ = NULL; -#endif } ; @@ -2958,7 +2950,6 @@ sasoc_cookie_life sctp_assocparams : '{' sasoc_asocmaxrxt ',' sasoc_number_peer_destinations ',' sasoc_peer_rwnd ',' sasoc_local_rwnd ',' sasoc_cookie_life '}' { -#ifdef SCTP_ASSOCINFO $$ = new_expression(EXPR_SCTP_ASSOCPARAMS); $$->value.sctp_assocparams = calloc(1, sizeof(struct sctp_assocparams_expr)); $$->value.sctp_assocparams->sasoc_asocmaxrxt = $2; @@ -2966,9 +2957,6 @@ sctp_assocparams $$->value.sctp_assocparams->sasoc_peer_rwnd = $6; $$->value.sctp_assocparams->sasoc_local_rwnd = $8; $$->value.sctp_assocparams->sasoc_cookie_life = $10; -#elif - $$ = NULL; -#endif } ; @@ -2997,29 +2985,21 @@ se_on sctp_event : '{' se_type ',' se_on '}' { -#ifdef SCTP_EVENT $$ = new_expression(EXPR_SCTP_EVENT); $$->value.sctp_event = calloc(1, sizeof(struct sctp_event_expr)); $$->value.sctp_event->se_type = $2; $$->value.sctp_event->se_on = $4; -#elif - $$ = NULL; -#endif } ; sctp_setadaptation : '{' SSB_ADAPTATION_IND '=' INTEGER '}' { -#ifdef SCTP_ADAPTATION_LAYER $$ = new_expression(EXPR_SCTP_SETADAPTATION); $$->value.sctp_setadaptation = calloc(1, sizeof(struct sctp_setadaptation)); if (!is_valid_u32($4)) { semantic_error("ssb_adaptation_ind out of range"); } $$->value.sctp_setadaptation->ssb_adaptation_ind = new_integer_expression($4, "%u"); -#elif - $$ = NULL; -#endif } ; diff --git a/gtests/net/packetdrill/script.c b/gtests/net/packetdrill/script.c index 43df660d900898db2a0a28e1867e6f401f970cf2..9b4d75e33f0eaf02255cc60c6709c3f44ca23c2e 100644 --- a/gtests/net/packetdrill/script.c +++ b/gtests/net/packetdrill/script.c @@ -65,38 +65,17 @@ struct expression_type_entry expression_type_table[] = { { EXPR_IOVEC, "iovec" }, { EXPR_MSGHDR, "msghdr" }, { EXPR_POLLFD, "pollfd" }, -#ifdef SCTP_RTOINFO { EXPR_SCTP_RTOINFO, "sctp_rtoinfo"}, -#endif -#ifdef SCTP_INITMSG { EXPR_SCTP_INITMSG, "sctp_initmsg"}, -#endif -#if defined(SCTP_MAXSEG) || defined(SCTP_MAX_BURST) || defined(SCTP_INTERLEAVING_SUPPORTED) { EXPR_SCTP_ASSOC_VALUE, "sctp_assoc_value"}, -#endif -#ifdef SCTP_DELAYED_SACK { EXPR_SCTP_SACKINFO, "sctp_sackinfo"}, -#endif -#ifdef SCTP_STATUS { EXPR_SCTP_STATUS, "sctp_status"}, { EXPR_SCTP_PADDRINFO, "sctp_paddrinfo"}, -#endif -#ifdef SCTP_PEER_ADDR_PARAMS - { EXPR_SCTP_PEER_ADDR_PARAMS, "sctp_peer_addr_params"}, -#endif -#ifdef SCTP_SS_VALUE + { EXPR_SCTP_PEER_ADDR_PARAMS,"sctp_peer_addr_params"}, { EXPR_SCTP_STREAM_VALUE, "sctp_stream_value"}, -#endif -#ifdef SCTP_ASSOCINFO { EXPR_SCTP_ASSOCPARAMS, "sctp_assocparams"}, -#endif -#ifdef SCTP_EVENT { EXPR_SCTP_EVENT, "sctp_event" }, -#endif -#ifdef SCTP_ADAPTATION_LAYER { EXPR_SCTP_SETADAPTATION, "sctp_setadaptation"}, -#endif - { NUM_EXPR_TYPES, NULL} }; @@ -308,21 +287,16 @@ void free_expression(struct expression *expression) free_expression(expression->value.linger->l_onoff); free_expression(expression->value.linger->l_linger); break; -#ifdef SCTP_RTOINFO case EXPR_SCTP_RTOINFO: assert(expression->value.sctp_rtoinfo); free_expression(expression->value.sctp_rtoinfo->srto_initial); free_expression(expression->value.sctp_rtoinfo->srto_max); free_expression(expression->value.sctp_rtoinfo->srto_min); break; -#endif -#if defined(SCTP_MAXSEG) || defined(SCTP_MAX_BURST) || defined(SCTP_INTERLEAVING_SUPPORTED) case EXPR_SCTP_ASSOC_VALUE: assert(expression->value.sctp_assoc_value); free_expression(expression->value.sctp_assoc_value->assoc_value); break; -#endif -#ifdef SCTP_INITMSG case EXPR_SCTP_INITMSG: assert(expression->value.sctp_initmsg); free_expression(expression->value.sctp_initmsg->sinit_num_ostreams); @@ -330,15 +304,11 @@ void free_expression(struct expression *expression) free_expression(expression->value.sctp_initmsg->sinit_max_attempts); free_expression(expression->value.sctp_initmsg->sinit_max_init_timeo); break; -#endif -#ifdef SCTP_DELAYED_SACK case EXPR_SCTP_SACKINFO: assert(expression->value.sctp_sack_info); free_expression(expression->value.sctp_sack_info->sack_delay); free_expression(expression->value.sctp_sack_info->sack_freq); break; -#endif -#ifdef SCTP_STATUS case EXPR_SCTP_PADDRINFO: assert(expression->value.sctp_paddrinfo); free_expression(expression->value.sctp_paddrinfo->spinfo_address); @@ -359,8 +329,6 @@ void free_expression(struct expression *expression) free_expression(expression->value.sctp_status->sstat_fragmentation_point); free_expression(expression->value.sctp_status->sstat_primary); break; -#endif -#ifdef SCTP_PEER_ADDR_PARAMS case EXPR_SCTP_PEER_ADDR_PARAMS: assert(expression->value.sctp_paddrparams); free_expression(expression->value.sctp_paddrparams->spp_address); @@ -371,15 +339,11 @@ void free_expression(struct expression *expression) free_expression(expression->value.sctp_paddrparams->spp_ipv6_flowlabel); free_expression(expression->value.sctp_paddrparams->spp_dscp); break; -#endif -#ifdef SCTP_SS_VALUE case EXPR_SCTP_STREAM_VALUE: assert(expression->value.sctp_stream_value); free_expression(expression->value.sctp_stream_value->stream_id); free_expression(expression->value.sctp_stream_value->stream_value); break; -#endif -#ifdef SCTP_ASSOCINFO case EXPR_SCTP_ASSOCPARAMS: free_expression(expression->value.sctp_assocparams->sasoc_asocmaxrxt); free_expression(expression->value.sctp_assocparams->sasoc_number_peer_destinations); @@ -387,18 +351,13 @@ void free_expression(struct expression *expression) free_expression(expression->value.sctp_assocparams->sasoc_local_rwnd); free_expression(expression->value.sctp_assocparams->sasoc_cookie_life); break; -#endif -#ifdef SCTP_EVENT case EXPR_SCTP_EVENT: free_expression(expression->value.sctp_event->se_type); free_expression(expression->value.sctp_event->se_on); break; -#endif -#ifdef SCTP_ADAPTATION_LAYER case EXPR_SCTP_SETADAPTATION: free_expression(expression->value.sctp_setadaptation->ssb_adaptation_ind); break; -#endif case EXPR_WORD: assert(expression->value.string); free(expression->value.string); @@ -584,7 +543,6 @@ static int evaluate_pollfd_expression(struct expression *in, return STATUS_OK; } -#ifdef SCTP_RTOINFO static int evaluate_sctp_rtoinfo_expression(struct expression *in, struct expression *out, char **error) @@ -616,9 +574,7 @@ static int evaluate_sctp_rtoinfo_expression(struct expression *in, return STATUS_OK; } -#endif -#ifdef SCTP_INITMSG static int evaluate_sctp_initmsg_expression(struct expression *in, struct expression *out, char **error) @@ -653,9 +609,7 @@ static int evaluate_sctp_initmsg_expression(struct expression *in, return STATUS_ERR; return STATUS_OK; } -#endif -#if defined(SCTP_MAXSEG) || defined(SCTP_MAX_BURST) || defined(SCTP_INTERLEAVING_SUPPORTED) static int evaluate_sctp_assoc_value_expression(struct expression *in, struct expression *out, char **error) @@ -679,9 +633,7 @@ static int evaluate_sctp_assoc_value_expression(struct expression *in, return STATUS_OK; } -#endif -#ifdef SCTP_DELAYED_SACK static int evaluate_sctp_sack_info_expression(struct expression *in, struct expression *out, char **error) @@ -709,9 +661,7 @@ static int evaluate_sctp_sack_info_expression(struct expression *in, return STATUS_OK; } -#endif -#ifdef SCTP_STATUS static int evaluate_sctp_paddrinfo_expression(struct expression *in, struct expression *out, char **error) @@ -806,9 +756,7 @@ static int evaluate_sctp_status_expression(struct expression *in, return STATUS_ERR; return STATUS_OK; } -#endif -#ifdef SCTP_PEER_ADDR_PARAMS static int evaluate_sctp_peer_addr_param_expression(struct expression *in, struct expression *out, char **error) @@ -855,9 +803,7 @@ static int evaluate_sctp_peer_addr_param_expression(struct expression *in, return STATUS_ERR; return STATUS_OK; } -#endif -#ifdef SCTP_SS_VALUE static int evaluate_sctp_stream_value_expression(struct expression *in, struct expression *out, char **error) @@ -885,9 +831,7 @@ static int evaluate_sctp_stream_value_expression(struct expression *in, return STATUS_OK; } -#endif -#ifdef SCTP_EVENT static int evaluate_sctp_event_expression(struct expression *in, struct expression *out, char **error) @@ -915,9 +859,7 @@ static int evaluate_sctp_event_expression(struct expression *in, return STATUS_OK; } -#endif -#ifdef SCTP_ASSOCINFO static int evaluate_sctp_accocparams_expression(struct expression *in, struct expression *out, char **error) @@ -957,9 +899,7 @@ static int evaluate_sctp_accocparams_expression(struct expression *in, return STATUS_OK; } -#endif -#ifdef SCTP_ADAPTATION_LAYER static int evaluate_sctp_setadaptation_expression(struct expression *in, struct expression *out, char **error) @@ -983,7 +923,6 @@ static int evaluate_sctp_setadaptation_expression(struct expression *in, return STATUS_OK; } -#endif static int evaluate(struct expression *in, struct expression **out_ptr, char **error) @@ -1008,59 +947,39 @@ static int evaluate(struct expression *in, memcpy(&out->value.linger, &in->value.linger, sizeof(in->value.linger)); break; -#ifdef SCTP_RTOINFO case EXPR_SCTP_RTOINFO: - evaluate_sctp_rtoinfo_expression(in, out, error); + result = evaluate_sctp_rtoinfo_expression(in, out, error); break; -#endif -#ifdef SCTP_ASSOCINFO case EXPR_SCTP_ASSOCPARAMS: - evaluate_sctp_accocparams_expression(in, out, error); + result = evaluate_sctp_accocparams_expression(in, out, error); break; -#endif -#ifdef SCTP_INITMSG case EXPR_SCTP_INITMSG: - evaluate_sctp_initmsg_expression(in, out, error); + result = evaluate_sctp_initmsg_expression(in, out, error); break; -#endif -#if defined(SCTP_MAXSEG) || defined(SCTP_MAX_BURST) || defined(SCTP_INTERLEAVING_SUPPORTED) case EXPR_SCTP_ASSOC_VALUE: - evaluate_sctp_assoc_value_expression(in, out, error); + result = evaluate_sctp_assoc_value_expression(in, out, error); break; -#endif -#ifdef SCTP_DELAYED_SACK case EXPR_SCTP_SACKINFO: - evaluate_sctp_sack_info_expression(in, out, error); + result = evaluate_sctp_sack_info_expression(in, out, error); break; -#endif -#ifdef SCTP_STATUS case EXPR_SCTP_PADDRINFO: - evaluate_sctp_paddrinfo_expression(in, out, error); + result = evaluate_sctp_paddrinfo_expression(in, out, error); break; case EXPR_SCTP_STATUS: result = evaluate_sctp_status_expression(in, out, error); break; -#endif -#ifdef SCTP_PEER_ADDR_PARAMS case EXPR_SCTP_PEER_ADDR_PARAMS: result = evaluate_sctp_peer_addr_param_expression(in, out, error); break; -#endif -#ifdef SCTP_SS_VALUE case EXPR_SCTP_STREAM_VALUE: - evaluate_sctp_stream_value_expression(in, out, error); + result = evaluate_sctp_stream_value_expression(in, out, error); break; -#endif -#ifdef SCTP_EVENT case EXPR_SCTP_EVENT: result = evaluate_sctp_event_expression(in, out, error); break; -#endif -#ifdef SCTP_ADAPTATION_LAYER case EXPR_SCTP_SETADAPTATION: result = evaluate_sctp_setadaptation_expression(in, out, error); break; -#endif case EXPR_WORD: out->type = EXPR_INTEGER; if (symbol_to_int(in->value.string, diff --git a/gtests/net/packetdrill/script.h b/gtests/net/packetdrill/script.h index 3711795ebcbf12707db3d13d208e527ceca97ddb..9c351a31695db1400b5c0f27cbbe3ee5b30a230b 100644 --- a/gtests/net/packetdrill/script.h +++ b/gtests/net/packetdrill/script.h @@ -45,38 +45,17 @@ enum expression_t { EXPR_IOVEC, /* expression tree for an iovec struct */ EXPR_MSGHDR, /* expression tree for a msghdr struct */ EXPR_POLLFD, /* expression tree for a pollfd struct */ -#ifdef SCTP_RTOINFO EXPR_SCTP_RTOINFO, /* struct sctp_rtoinfo for SCTP_RTOINFO */ -#endif -#ifdef SCTP_INITMSG EXPR_SCTP_INITMSG, /* struct sctp_initmsg for SCTP_INITMSG */ -#endif -#if defined(SCTP_MAXSEG) || defined(SCTP_MAX_BURST) || defined(SCTP_INTERLEAVING_SUPPORTED) EXPR_SCTP_ASSOC_VALUE, /* struct sctp_assoc_value */ -#endif -#ifdef SCTP_DELAYED_SACK EXPR_SCTP_SACKINFO, /* struct sctp_sack_info_expr for - * SCTP_DELAYED_SACK */ -#endif -#ifdef SCTP_STATUS EXPR_SCTP_STATUS, /* struct sctp_status for SCTP_STATUS */ EXPR_SCTP_PADDRINFO, -#endif -#ifdef SCTP_SS_VALUE EXPR_SCTP_STREAM_VALUE, /* struct sctp_stream_value for SCTP_SS_VALUE */ -#endif -#ifdef SCTP_PEER_ADDR_PARAMS EXPR_SCTP_PEER_ADDR_PARAMS, /* struct for sctp_paddrparams for SCTP_PEER_ADDR_PARAMS */ -#endif -#ifdef SCTP_ASSOCINFO EXPR_SCTP_ASSOCPARAMS, /* struct sctp_assocparams for SCTP_ASSOCINFO */ -#endif -#ifdef SCTP_EVENT EXPR_SCTP_EVENT, /* struct sctp_event to for SCTP_EVENT */ -#endif -#ifdef SCTP_ADAPTATION_LAYER EXPR_SCTP_SETADAPTATION, /* struct sctp_setadaptation for SCTP_ADATTATION_LAYER */ -#endif NUM_EXPR_TYPES, }; /* Convert an expression type to a human-readable string */ @@ -96,38 +75,17 @@ struct expression { struct iovec_expr *iovec; struct msghdr_expr *msghdr; struct pollfd_expr *pollfd; -#ifdef SCTP_RTOINFO struct sctp_rtoinfo_expr *sctp_rtoinfo; -#endif -#ifdef SCTP_INITMSG struct sctp_initmsg_expr *sctp_initmsg; -#endif -#if defined(SCTP_MAXSEG) || defined(SCTP_MAX_BURST) || defined(SCTP_INTERLEAVING_SUPPORTED) struct sctp_assoc_value_expr *sctp_assoc_value; -#endif -#ifdef SCTP_DELAYED_SACK struct sctp_sack_info_expr *sctp_sack_info; -#endif -#ifdef SCTP_STATUS struct sctp_status_expr *sctp_status; struct sctp_paddrinfo_expr *sctp_paddrinfo; -#endif -#ifdef SCTP_PEER_ADDR_PARAMS struct sctp_paddrparams_expr *sctp_paddrparams; -#endif -#ifdef SCTP_SS_VALUE struct sctp_stream_value_expr *sctp_stream_value; -#endif -#ifdef SCTP_ASSOCINFO struct sctp_assocparams_expr *sctp_assocparams; -#endif -#ifdef SCTP_EVENT struct sctp_event_expr *sctp_event; -#endif -#ifdef SCTP_ADAPTATION_LAYER struct sctp_setadaptation_expr *sctp_setadaptation; -#endif - } value; const char *format; /* the printf format for printing the value */ }; @@ -175,15 +133,12 @@ struct linger_expr { struct expression *l_linger; }; /* Parse tree for a sctp_rtoinfo struct in a [gs]etsockopt syscall. */ -#ifdef SCTP_RTOINFO struct sctp_rtoinfo_expr { struct expression *srto_initial; struct expression *srto_max; struct expression *srto_min; }; -#endif -#ifdef SCTP_INITMSG /* Parse tree for a sctp_initmsg struct in a [gs]etsockopt syscall. */ struct sctp_initmsg_expr { struct expression *sinit_num_ostreams; @@ -191,32 +146,25 @@ struct sctp_initmsg_expr { struct expression *sinit_max_attempts; struct expression *sinit_max_init_timeo; }; -#endif -#if defined(SCTP_MAXSEG) || defined(SCTP_MAX_BURST) || defined(SCTP_INTERLEAVING_SUPPORTED) /* Parse tree for a sctp_assoc_value struct in a [gs]etsockopt syscall. */ struct sctp_assoc_value_expr { struct expression *assoc_value; }; -#endif -#ifdef SCTP_SS_VALUE /* Parse tree for a sctp_stream_value struct in a [gs]etsockopt syscall. */ struct sctp_stream_value_expr { struct expression *stream_id; struct expression *stream_value; }; -#endif -#ifdef SCTP_DELAYED_SACK /* Parse tree for a sctp_sack_info struct in a [gs]etsockopt syscall. */ struct sctp_sack_info_expr { struct expression *sack_delay; struct expression *sack_freq; }; -#endif + /* Parse tree for a sctp_status struct in a [gs]etsockopt syscall. */ -#ifdef SCTP_STATUS struct sctp_status_expr { struct expression *sstat_state; struct expression *sstat_rwnd; @@ -237,7 +185,6 @@ struct sctp_paddrinfo_expr { struct expression *spinfo_rto; struct expression *spinfo_mtu; }; -#endif /* Parse tree for a sctp_paddrparams struct in a [gs]etsockopt syscall. */ struct sctp_paddrparams_expr { @@ -250,7 +197,6 @@ struct sctp_paddrparams_expr { struct expression *spp_dscp; }; -#ifdef SCTP_ASSOCINFO /* Parse tree for sctp_assocparams struct in [gs]etsockopt syscall. */ struct sctp_assocparams_expr { struct expression *sasoc_asocmaxrxt; @@ -259,22 +205,17 @@ struct sctp_assocparams_expr { struct expression *sasoc_local_rwnd; struct expression *sasoc_cookie_life; }; -#endif -#ifdef SCTP_EVENT /* Parse tree for sctp_event struct in [gs]etsockopt syscall. */ struct sctp_event_expr { struct expression *se_type; struct expression *se_on; }; -#endif -#ifdef SCTP_ADAPTATION_LAYER /* Parse tree for sctp_setadaptation struct in [gs]etsockopt syscall. */ struct sctp_setadaptation_expr { struct expression *ssb_adaptation_ind; }; -#endif /* The errno-related info from strace to summarize a system call error */ struct errno_spec {