The Advanced Linux Sound Architecture (ALSA) - library
Find a file
Stephan Gerhold cfd3da47fa ucm: fix st_mode check for symbolic links
The file type in the st_mode field is not encoded as unique bits but as
an enumerator. Checking if some bits of S_IFLNK are set does not work
correctly because it happens to evaluate to true for regular files as
well.

The POSIX man page suggests using the following approach to check
the file type:

    if ((sb.st_mode & S_IFMT) == S_IFLNK)

Alternatively, there is a S_ISLNK() macro to check this more easily.

Make use of the latter so that readlink() is only called on actual
symbolic links and not regular files. This makes audio work again
with slightly older alsa-ucm-conf versions or alternative top-level
ucm.conf configurations that do not make use of symlinks.

Fixes: d6adde0e ("ucm: top-level path - set directory from symlink")
Fixes: https://github.com/alsa-project/alsa-lib/pull/249
Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2022-07-08 17:31:58 +02:00
.github/workflows github actions: move to checkout@v3 2022-05-19 12:38:18 +02:00
alsalisp Change FSF address (Franklin Street) 2017-11-14 14:29:26 +01:00
aserver pcm: fix for the unitialized write buffer 2022-05-20 08:47:07 +02:00
doc ucm: add initial doxygen documenation 2021-12-01 10:33:44 +01:00
include output: include stdarg.h 2022-06-17 10:25:39 +02:00
m4 Update the attributes.m4 macro file from xine 2020-01-03 19:13:13 +01:00
modules mixer: simple module: python 3.10 PyTuple_SET_ITEM() fix 2022-05-20 10:03:10 +02:00
src ucm: fix st_mode check for symbolic links 2022-07-08 17:31:58 +02:00
test conf: introduce snd_config_load_string() 2021-12-01 10:18:58 +01:00
utils utils/alsa.m4: another quick fix for the brackets 2021-04-14 08:08:43 +02:00
.gitignore initial version of .travis.yml file 2018-10-24 16:07:58 +02:00
acinclude.m4 fixed for the recent autoconf. 2004-01-26 15:52:17 +00:00
ChangeLog * update to libtool 1.3.3 1999-07-22 12:18:42 +00:00
configure.ac Release v1.2.7.1 2022-06-17 11:42:05 +02:00
COPYING Change FSF address (Franklin Street) 2017-11-14 14:29:26 +01:00
gitcompile gitcompile: fix 32 bit compilation support 2022-05-20 08:47:07 +02:00
INSTALL pcm: Add thread-safety to PCM API 2016-07-11 15:25:30 +02:00
Makefile.am Makefile: Add README.md to EXTRA_DIST 2020-12-10 10:37:13 +01:00
MEMORY-LEAK Initial version 2003-02-04 14:56:07 +00:00
NOTES Change assert condition in error message handler 2007-10-24 12:53:08 +02:00
README.md README: Add link to GitHub Actions 2022-05-19 12:47:24 +02:00
TODO Added snd_config_load_override(). 2002-01-09 21:28:15 +00:00

alsa-lib

Advanced Linux Sound Architecture (ALSA) project

Build alsa-lib

The alsa-lib is a library to interface with ALSA in the Linux kernel and virtual devices using a plugin system.

The up-to-date reference generated from sources can be accessed here:

http://www.alsa-project.org/alsa-doc/alsa-lib/

You may give a look for more information about the ALSA project to URL http://www.alsa-project.org.

Submitting patches

The preferred way to submit patches is by sending them by email to the alsa-devel mailing list. Sending mail to the list requires subscription, subscribe here: https://mailman.alsa-project.org/mailman/listinfo/alsa-devel

Add Takashi Iwai <tiwai@suse.de> and/or Jaroslav Kysela <perex@perex.cz> to Cc so that your patch won't be missed.

Patches are also accepted as GitHub pull requests.