]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
ALSA: ump: Don't open legacy substream for an inactive group
authorTakashi Iwai <tiwai@suse.de>
Fri, 29 Nov 2024 09:45:42 +0000 (10:45 +0100)
committerTakashi Iwai <tiwai@suse.de>
Fri, 29 Nov 2024 10:07:37 +0000 (11:07 +0100)
When a UMP Group is inactive, we shouldn't allow users to access it
via the legacy MIDI access.  Add the group active flag check and
return -ENODEV if it's inactive.

Link: https://patch.msgid.link/20241129094546.32119-2-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/core/ump.c

index 6d0aac6c763fe7f90b6ae6c0f9dde2993ffaef9c..9f9ad106107f79f90980d605b29db7c471e65360 100644 (file)
@@ -1087,6 +1087,8 @@ static int snd_ump_legacy_open(struct snd_rawmidi_substream *substream)
        guard(mutex)(&ump->open_mutex);
        if (ump->legacy_substreams[dir][group])
                return -EBUSY;
+       if (!ump->groups[group].active)
+               return -ENODEV;
        if (dir == SNDRV_RAWMIDI_STREAM_OUTPUT) {
                if (!ump->legacy_out_opens) {
                        err = snd_rawmidi_kernel_open(&ump->core, 0,