summaryrefslogtreecommitdiffstats
path: root/src/daemon
Commit message (Collapse)AuthorAgeFilesLines
* Disable check for pthreads on win32Fritz Elfert2011-06-181-1/+3
| | | | And do not use sched_get_priority on mingw with win32 pthreads installed
* daemon: Fix regression introduced in f1d1447e.Colin Guthrie2011-03-251-3/+43
| | | | | | | | | | | | | | | | | | | With Tanu's patch, the server no longer starts when a server is configured. While this is sensible in most circumstances there is a corner case where we still want to start. In a typical X11 login, module-x11-publish will be loaded and will thus set the PULSE_SERVER X11 property on the root window. This then hits the check introduced in f1d1447e and exits. If PA had previously crashed (thus leaving behind it's X11 properties) then this means that we will not autospawn nor even allow ourselves to be started manually until pax11publish -r is run to clear out the X11 properties. This is obviously not desirable. This patch introduces a more in-depth check of the server. If it looks like a local unix domain socket, then we do not exit straight away and instead probe further. This should not pose any problems with e.g. remote SSH usage as the DBus Machine ID is used in the server string.
* daemon: Fix some more error paths in the double forking.Colin Guthrie2011-03-251-1/+8
| | | | | | | | | | | | | | | | | | | As spotted by Tanu Kaskinen: The first process: daemon_pipe is not closed if the first fork() call fails. Even if it doesn't fail, the first process never closes daemon_pipe[0]. The second process: daemon_pipe[1] is not closed if anything fails between the first and the second fork() call. Also, if the second fork fails, then the finish section writes to daemon_pipe2[1], even though only the third process should do that. Also, if anything fails between the first and the second fork, then the second process never writes anything to daemon_pipe[1]. I don't know what happens in the first process in this case - does it get an error or does pa_loop_read() get stuck. The third process: No problems :)
* daemon: Fix regression with --start introduced with the double fork in 8e94f653Colin Guthrie2011-03-241-9/+42
| | | | | | | | The previous commit intoduced a double fork which caused a more or less immediate successful return prior to the hard work of actually starting a daemon. This patch simply used pipe() to only signal our father when the daemon really has finished starting.
* log: Correct bad function implementationVincent Becker2011-03-241-17/+15
| | | | Replace wrong implementation of log to file in pa_daemon_conf_set_log_level to pa_daemon_conf_set_log_target
* Move compile-time checks around pa_run_from_build_tree to core-utilMaarten Bosmans2011-03-241-10/+1
| | | | To make the code cleaner and have the checks all in one place.
* win32: Simplify dl_search_path codeMaarten Bosmans2011-03-241-13/+6
| | | | And add #include <sys/stat.h>, needed by the code introduced in f7acd4bd.
* daemon: Fix missing include - cpu-orc.hArun Raghavan2011-03-201-0/+1
|
* Merge remote-tracking branch 'mkbosmans/mingw32-build'Colin Guthrie2011-03-201-0/+14
|\
| * Find modules and config files relative to the installed libraries.Maarten Bosmans2011-03-191-0/+14
| | | | | | | | Do not use replace %PULSE_ROOT% from the environment.
* | log: Add a new log target to a file descriptorVincent Becker2011-03-182-2/+24
| | | | | | | | | | | | | | This patch enables logging of text debug messages (pa_log feature) into a file or a device driver. Example : pulseaudio --log-target=file:./mylog.txt (Minor tweaks by Colin + Arun)
* | Fix up some double spacesMaarten Bosmans2011-03-182-2/+2
| |
* | volume: Add Orc-based optimised volume scalingArun Raghavan2011-03-051-0/+1
| | | | | | | | | | | | | | | | | | This adds volume scaling for 1- and 2-channel software volume scaling using Orc. While testing the MMX and SSE backends on a Core2, I see an ~2x performance benefit over the hand-rolled MMX and SSE code. Since I haven't been able to test on other architectures, the Orc code is only used when MMX/SSE* is present. This can be changed in the future after testing on AMD and ARM machines.
* | conf: Make system.pa use udev-detect and not hal-detect.Colin Guthrie2011-03-032-4/+4
| | | | | | | | Also fix a left over reference to HAL in default.pa
* | Get rid of some unused-function compiler warningsMaarten Bosmans2011-03-021-4/+2
|/
* Use pa_read, pa_write and pa_poll instead of system functionsMaarten Bosmans2011-02-171-1/+1
|
* Implement some functions for win32Maarten Bosmans2011-02-171-1/+1
| | | | And disable building binaries for win32 that make no sense there
* Apply #ifdefs around functionality not available on win32Maarten Bosmans2011-02-174-0/+13
| | | | And also the reverse: around some win32 specific functionality
* Adapt win32 specific code to current APIMaarten Bosmans2011-02-171-2/+2
|
* Use <pulsecore/socket.h> instead of <sys/socket.h>Maarten Bosmans2011-02-171-1/+1
| | | | | | | | The check whether POSIX socket.h or WIN32 winsock2.h must be included can be made centrally. The downside is that some functionality of e.g. arpa/inet.h is also implemented in winsock.h, so that some files that don't use socket functions, but do use inet.h functions, must also include pulsecore/socket.h. (as well as arpa/inet.h)
* Clean up <poll.h> includesMaarten Bosmans2011-02-171-4/+0
| | | | | | Instead <pulsecore/poll.h> should be included. That file includes poll.h on platform where it is appropriate. Also remove some unnecessary <ioctl.h> includes.
* build: Don't include empty Makefile.am in subdirsMaarten Bosmans2011-01-311-20/+0
|
* console-kit: Console Kit support is dependent on DBUS and is thus optional.Colin Guthrie2011-01-111-0/+2
| | | | | | | | Therefore, we must reflect this in the default.pa. Several users have reported an error with consolekit when starting a self-built PA due to the default config not working properly. This works around the issue but we should include a warning on configure about the lack of DBUS and udev support as this is a common mistake.
* Fix typosZhang Wanming2010-12-201-1/+1
|
* build-sys: Replace dummy Makefiles with proper Makefile.am'sColin Guthrie2010-12-052-1/+20
| | | | | | | | | | | | | | | | | | | | | | | | This is needed to better support out of tree builds (including distcheck) and to ensure the necessary folders are created in the build tree on configure and also works around an intl-tools bug (https://bugs.launchpad.net/intltool/+bug/605826) The Makefile.am's used are minimal (and in some cases completely blank). At present they do not include anything interesting with the majority of the real work still done by the monolitic src/Makefile.am It may make sense to start splitting out src/Makefile.am into smaller chunks but this commit makes the minimum changes to address the issues that result from using make distcheck and other out of tree builds. Note: This 'breaks' the ability to type make in e.g. the src/modules folder and have all of PA rebuilt accordingly (this is because the static Makefiles previously present just did a "make -C ..") which was purportedly for use in emacs. But I'm sure there will be a better and more robust way to configure emacs to do your builds properly if this behaviour is still desirable.
* daemon-conf: Add sync volume parameters to daemon-confJyri Sarha2010-10-164-1/+20
| | | | | | Signed-off-by: Jyri Sarha <jyri.sarha@nokia.com> Reviewed-by: Tanu Kaskinen <tanu.kaskinen@digia.com> Reviewd-by: Colin Guthrie <cguthrie@mandriva.org>
* cpu: Add CPU information to pa_coreArun Raghavan2010-09-231-5/+8
| | | | | | This retains CPU information (processor type and supported features) in pa_core, so that this information can be used by modules at init time to figure out what optimisations may be used.
* daemon: first take name on the bus, then return in starter processLennart Poettering2010-02-211-9/+9
| | | | http://pulseaudio.org/ticket/748
* Typo. s/a/are/Paul Menzel2010-01-211-1/+1
| | | | Signed-off-by: Paul Menzel <paulepanter@users.sourceforge.net>
* start: we don't need to check for $PULSE_SERVER anymoreLennart Poettering2010-01-141-2/+0
| | | | | pulseaudio --start does that internally anyway, so we can get rid of this here.
* daemon: Don't autospawn if a server address is explicitly configured.Tanu Kaskinen2010-01-091-0/+30
|
* fix a number of warningsDaniel Mack2010-01-051-0/+4
| | | | | most of them were due to missing #ifdefs or wrong printf format type for [s]size_t.
* daemon: complain if user passes too many argumentsLennart Poettering2009-11-201-0/+37
|
* daemon: during startup say whether we run in a VMLennart Poettering2009-11-051-1/+2
|
* daemon: make sure pa has its own session and process group, but is not its ↵Lennart Poettering2009-10-311-20/+20
| | | | leader so that we cannot acquire a tty ever
* daemon: realpath segfault fixDavid Yoder2009-10-311-1/+1
| | | | | | | | | | | | | | Lennart, Apparently I was debugging this at the same time as you. I can't figure out why my Fedora 11 install with glibc-2.10 has a glibc realpath that doesn't match the gnu documentation and returns null. But it does. Your commit aa8ce5bb9b159abb2ffb0f43996340566fc2e9c6 almost fixed my problem, but it needs a tweak. Thanks, David Yoder
* git: ignore kde related filesLennart Poettering2009-10-301-0/+1
|
* daemon: don't crash if pa_realpath() failsLennart Poettering2009-10-301-10/+13
|
* use pa_fopen_cloexec() where applicableLennart Poettering2009-10-301-2/+2
|
* use cloexec wrappers wherever applicableLennart Poettering2009-10-301-3/+1
|
* Merge remote branch 'coling/history'Lennart Poettering2009-10-072-0/+41
|\
| * device-manager: Fix typo in module loading script.Colin Guthrie2009-10-021-1/+1
| |
| * device-manager: Add some scripts that are only run under KDE to ↵Colin Guthrie2009-10-012-0/+41
| | | | | | | | load/initialise module-device-manager with routing turned on.
* | Merge branch 'master' into dbus-workTanu Kaskinen2009-10-026-261/+27
|\| | | | | | | | | Conflicts: src/daemon/daemon-conf.c
| * polkit: drop left-over polkit policy file from git treeLennart Poettering2009-09-291-50/+0
| |
| * Don't refuse to start on systems using GNU stow, graft, STORE et alNix2009-09-291-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are multiple package management systems out there which implement packages using symlinks. The recent (otherwise useful) check to ensure that a re-executed pulseaudio is actually reexecuting itself unfortunately breaks in the presence of all these packaging systems, because PA_BINARY refers to its installed location (e.g. /usr/local/bin/pulseaudio), which is a symlink to the binary (e.g. /usr/local/stow/pulseaudio-0.9.18/bin/pulseaudio), because /proc/self/exe always contains the canonical path of the executable, with all symlinks resolved. (At least one distribution uses a symlink-based packaging system, so will be forced to apply this locally in any case.) The fix is simple: canonicalize PA_BINARY before equality-testing. (This should be completely safe, because the OS does just that when PA_BINARY is executed.) The patch is against 0.9.18, but applies without fuzz to current master.
| * conf: Fix typo in daemon.conf: rlimit-rtttime - too many t'sColin Guthrie2009-09-181-1/+1
| | | | | | | | Spotted by peol on IRC
| * daemon: disable CPU load limiter by defaultLennart Poettering2009-09-042-2/+2
| | | | | | | | | | RLIMIT_RTTIME and rtki can do this job much better, so let's disable this by default.
| * daemon: make use of SIMD optional via config variable to ease debuggingLennart Poettering2009-09-031-2/+4
| |
| * daemon: drop polkit code from git repo we weren't using anymoreLennart Poettering2009-09-022-199/+0
| |