static void esp_print(const void *ip, const struct xt_entry_match *match, int numeric) { const struct xt_esp *esp = (struct xt_esp *)match->data; printf(" esp"); print_spis("spi", esp->spis[0], esp->spis[1], esp->invflags & XT_ESP_INV_SPI); if (esp->invflags & ~XT_ESP_INV_MASK) printf(" Unknown invflags: 0x%X", esp->invflags & ~XT_ESP_INV_MASK); }
static void ah_print(const void *ip, const struct xt_entry_match *match, int numeric) { const struct ipt_ah *ah = (struct ipt_ah *)match->data; printf("ah "); print_spis("spi", ah->spis[0], ah->spis[1], ah->invflags & IPT_AH_INV_SPI); if (ah->invflags & ~IPT_AH_INV_MASK) printf("Unknown invflags: 0x%X ", ah->invflags & ~IPT_AH_INV_MASK); }
/* Prints out the union ip6t_matchinfo. */ static void print(const struct ip6t_ip6 *ip, const struct ip6t_entry_match *match, int numeric) { const struct ip6t_ah *ah = (struct ip6t_ah *)match->data; printf("ah "); print_spis("spi", ah->spis[0], ah->spis[1], ah->invflags & IP6T_AH_INV_SPI); print_len("length", ah->hdrlen, ah->invflags & IP6T_AH_INV_LEN); if (ah->hdrres) printf("reserved "); if (ah->invflags & ~IP6T_AH_INV_MASK) printf("Unknown invflags: 0x%X ", ah->invflags & ~IP6T_AH_INV_MASK); }