summaryrefslogtreecommitdiff
path: root/ioctlsort.c
diff options
context:
space:
mode:
authorWichert Akkerman <wichert@deephackmode.org>1999-02-19 00:21:36 +0000
committerWichert Akkerman <wichert@deephackmode.org>1999-02-19 00:21:36 +0000
commit76baf7c9f6dd61a15524ad43c1b690c252cf5b7c (patch)
treec54cba971a5ca31d262dbf292fdae19601b7833d /ioctlsort.c
downloadstrace-76baf7c9f6dd61a15524ad43c1b690c252cf5b7c.tar.gz
strace-76baf7c9f6dd61a15524ad43c1b690c252cf5b7c.tar.bz2
strace-76baf7c9f6dd61a15524ad43c1b690c252cf5b7c.tar.xz
Initial revision
Diffstat (limited to 'ioctlsort.c')
-rw-r--r--ioctlsort.c74
1 files changed, 74 insertions, 0 deletions
diff --git a/ioctlsort.c b/ioctlsort.c
new file mode 100644
index 0000000..51aef40
--- /dev/null
+++ b/ioctlsort.c
@@ -0,0 +1,74 @@
+/*
+ * Copyright (c) 1991, 1992 Paul Kranenburg <pk@cs.few.eur.nl>
+ * Copyright (c) 1993, 1994, 1995 Rick Sladkey <jrs@world.std.com>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. The name of the author may not be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * $Id$
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <stdio.h>
+
+#ifdef STDC_HEADERS
+#include <stdlib.h>
+#endif
+
+struct ioctlent {
+ char *doth;
+ char *symbol;
+ unsigned long code;
+};
+
+#include "ioctlent.raw"
+
+int nioctlents = sizeof ioctlent / sizeof ioctlent[0];
+
+int
+compare(a, b)
+const void *a;
+const void *b;
+{
+ unsigned long code1 = ((struct ioctlent *) a)->code;
+ unsigned long code2 = ((struct ioctlent *) b)->code;
+ return (code1 > code2) ? 1 : (code1 < code2) ? -1 : 0;
+}
+
+int
+main(argc, argv)
+int argc;
+char *argv[];
+{
+ int i;
+
+ qsort(ioctlent, nioctlents, sizeof ioctlent[0], compare);
+ for (i = 0; i < nioctlents; i++) {
+ printf("{\"%s\", \"%s\", %#lx},\n",
+ ioctlent[i].doth, ioctlent[i].symbol, ioctlent[i].code);
+ }
+ return 0;
+}