auto import from //depot/cupcake/@135843
diff --git a/tools/iself/iself.c b/tools/iself/iself.c
new file mode 100644
index 0000000..e634a22
--- /dev/null
+++ b/tools/iself/iself.c
@@ -0,0 +1,36 @@
+#include <debug.h>
+#include <unistd.h>
+
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+#include <string.h>
+#include <errno.h>
+
+int
+main(int argc, char **argv)
+{
+	char *fname;
+	int fd;
+	char magic[4];
+
+	argc--, argv++;
+	FAILIF(argc != 1, "Expecting a file name!\n");
+	fname = *argv;
+
+	fd = open(fname, O_RDONLY);
+	FAILIF(fd < 0, "Error opening %s for reading: %s (%d)!\n",
+           fname, strerror(errno), errno);
+
+	FAILIF(4 != read(fd, magic, 4),
+           "Could not read first 4 bytes from %s: %s (%d)!\n",
+           fname, strerror(errno), errno);
+
+    if (magic[0] != 0x7f) return 1;
+    if (magic[1] != 'E')  return 1;
+    if (magic[2] != 'L')  return 1;
+    if (magic[3] != 'F')  return 1;
+
+    return 0;
+}