summaryrefslogtreecommitdiff
path: root/lib/libsndio/debug.c
diff options
context:
space:
mode:
authorAlexandre Ratchov <ratchov@cvs.openbsd.org>2011-11-15 08:05:23 +0000
committerAlexandre Ratchov <ratchov@cvs.openbsd.org>2011-11-15 08:05:23 +0000
commit1d03551d3bdde57b6b26304c15d01e24fa830fd2 (patch)
treef427bbcfc086b18d7aae9e6201af95c20d4779ac /lib/libsndio/debug.c
parent231448b73ea84fb6b44a1e2fad2383a7ae09872d (diff)
Add a "device number" component in sndio(7) device names, allowing a
single aucat instance to handle all audio and MIDI services. Since this partially breaks compatibility, this is a opportunitiy to fix few other design mistakes (eg ':' being used by inet6, type name vs api name confusion, etc..). This leads to the following names: type[@hostname][,unit]/devnum[.option] The device number is the minor device number for direct hardware access (ie the 'N' in /dev/audioN). For aucat, this is the occurence number of the -f (or -M) option. There's a compatibility hook to keep old names working if only one aucat server is running.
Diffstat (limited to 'lib/libsndio/debug.c')
-rw-r--r--lib/libsndio/debug.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/lib/libsndio/debug.c b/lib/libsndio/debug.c
index 05431cc6b3e..b592506494d 100644
--- a/lib/libsndio/debug.c
+++ b/lib/libsndio/debug.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: debug.c,v 1.1 2011/04/16 10:52:22 ratchov Exp $ */
+/* $OpenBSD: debug.c,v 1.2 2011/11/15 08:05:22 ratchov Exp $ */
/*
* Copyright (c) 2011 Alexandre Ratchov <alex@caoua.org>
*
@@ -39,3 +39,17 @@ sndio_debug_init(void)
}
}
#endif
+
+const char *
+sndio_parsetype(const char *str, char *type)
+{
+ while (*type) {
+ if (*type != *str)
+ return NULL;
+ type++;
+ str++;
+ }
+ if (*str >= 'a' && *str <= 'z')
+ return NULL;
+ return str;
+}