This commit was generated by cvs2svn to compensate for changes in r1650,
[iproute2.git] / tc / p_icmp.c
diff --git a/tc/p_icmp.c b/tc/p_icmp.c
new file mode 100644 (file)
index 0000000..f9ddbe3
--- /dev/null
@@ -0,0 +1,61 @@
+/*
+ * m_pedit_icmp.c      packet editor: ICMP header
+ *
+ *             This program is free software; you can distribute it and/or
+ *             modify it under the terms of the GNU General Public License
+ *             as published by the Free Software Foundation; either version
+ *             2 of the License, or (at your option) any later version.
+ *
+ * Authors:  J Hadi Salim (hadi@cyberus.ca) 
+ * 
+ */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <syslog.h>
+#include <fcntl.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <arpa/inet.h>
+#include <string.h>
+#include "utils.h"
+#include "tc_util.h"
+#include "m_pedit.h"
+
+
+static int
+parse_icmp(int *argc_p, char ***argv_p,struct tc_pedit_sel *sel,struct tc_pedit_key *tkey)
+{
+       int res = -1;
+#if 0
+       int argc = *argc_p;
+       char **argv = *argv_p;
+
+       if (argc < 2)
+               return -1;
+
+       if (strcmp(*argv, "type") == 0) {
+               NEXT_ARG();
+               res = parse_u8(&argc, &argv, 0);
+               goto done;
+       }
+       if (strcmp(*argv, "code") == 0) {
+               NEXT_ARG();
+               res = parse_u8(&argc, &argv, 1);
+               goto done;
+       }
+       return -1;
+
+      done:
+       *argc_p = argc;
+       *argv_p = argv;
+#endif
+       return res;
+}
+
+struct m_pedit_util p_pedit_icmp = {
+       NULL,
+       "icmp",
+       parse_icmp,
+};