diff --git a/tc/p_icmp.c b/tc/p_icmp.c
new file mode 100644
index 0000000..a4b80c2
--- /dev/null
+++ b/tc/p_icmp.c
@@ -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,
+};
