Free (GPLv2) TCP/IP stack developed by TASS Belgium
Fork of PicoTCP by
modules/pico_ipfilter.h@51:18637a3d071f, 2013-08-03 (annotated)
- Committer:
- daniele
- Date:
- Sat Aug 03 08:50:27 2013 +0000
- Revision:
- 51:18637a3d071f
- Parent:
- 3:b4047e8a0123
Branch for CDC-ECM: Work in progress
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
daniele | 3:b4047e8a0123 | 1 | /********************************************************************* |
daniele | 3:b4047e8a0123 | 2 | PicoTCP. Copyright (c) 2012 TASS Belgium NV. Some rights reserved. |
daniele | 3:b4047e8a0123 | 3 | See LICENSE and COPYING for usage. |
daniele | 3:b4047e8a0123 | 4 | |
daniele | 3:b4047e8a0123 | 5 | Authors: Simon Maes |
daniele | 3:b4047e8a0123 | 6 | *********************************************************************/ |
daniele | 3:b4047e8a0123 | 7 | #ifndef _INCLUDE_PICO_IPFILTER |
daniele | 3:b4047e8a0123 | 8 | #define _INCLUDE_PICO_IPFILTER |
daniele | 3:b4047e8a0123 | 9 | |
daniele | 3:b4047e8a0123 | 10 | #include "pico_device.h" |
daniele | 3:b4047e8a0123 | 11 | |
daniele | 3:b4047e8a0123 | 12 | enum filter_action { |
daniele | 3:b4047e8a0123 | 13 | FILTER_ACCEPT = 0, |
daniele | 3:b4047e8a0123 | 14 | FILTER_PRIORITY, |
daniele | 3:b4047e8a0123 | 15 | FILTER_REJECT, |
daniele | 3:b4047e8a0123 | 16 | FILTER_DROP, |
daniele | 3:b4047e8a0123 | 17 | }; |
daniele | 3:b4047e8a0123 | 18 | |
daniele | 3:b4047e8a0123 | 19 | |
daniele | 3:b4047e8a0123 | 20 | |
daniele | 3:b4047e8a0123 | 21 | int pico_ipv4_filter_add(struct pico_device *dev, uint8_t proto, |
daniele | 3:b4047e8a0123 | 22 | struct pico_ip4 *out_addr, struct pico_ip4 *out_addr_netmask, struct pico_ip4 *in_addr, |
daniele | 3:b4047e8a0123 | 23 | struct pico_ip4 *in_addr_netmask, uint16_t out_port, uint16_t in_port, |
daniele | 3:b4047e8a0123 | 24 | int8_t priority, uint8_t tos, enum filter_action action); |
daniele | 3:b4047e8a0123 | 25 | |
daniele | 3:b4047e8a0123 | 26 | int pico_ipv4_filter_del(uint8_t filter_id); |
daniele | 3:b4047e8a0123 | 27 | |
daniele | 3:b4047e8a0123 | 28 | int ipfilter(struct pico_frame *f); |
daniele | 3:b4047e8a0123 | 29 | |
daniele | 3:b4047e8a0123 | 30 | #endif /* _INCLUDE_PICO_IPFILTER */ |
daniele | 3:b4047e8a0123 | 31 |