Commit graph

149 commits

Author SHA1 Message Date
Lennart Poettering
ac0f5275c5 add new switch --start to the PA binary which allows starting PA if it is not running yet. In contrast to normal startup an already running PA will not be considered an error. Also, take the autospawn lock so we can guarantee that after this call returns PA is ralive and running
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2513 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-06-11 17:38:50 +00:00
Lennart Poettering
28405e3dcf big mumbo jumo of interleaved patches.
* Use seperate "state" and "config" paths
* Pass the fact that we are in system mode via an env var $PULSE_SYSTEM instead of as var in pa_core
* Properly check proc name when checking PID files. Don't check exename, because we cannot read that for other uids


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2480 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-05-21 22:50:58 +00:00
Lennart Poettering
045c1d602d merge glitch-free branch back into trunk
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2445 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-05-15 23:34:41 +00:00
Lennart Poettering
a8269372d3 merge r2187 from prepare-0.9.10
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2203 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-03-31 22:07:17 +00:00
Lennart Poettering
78bdb978c6 merge r2184 from prepare-0.9.10
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2200 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-03-31 22:05:48 +00:00
Lennart Poettering
dc3682d3f7 only call pa_ltdl_done() if we called pa_ltdl_init() before
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2111 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-02-15 18:03:11 +00:00
Lennart Poettering
0a807b3c4b print pa version id each time we start up, so that it is easier to identify the version people are reporting bugs again
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2107 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-02-15 13:13:12 +00:00
Lennart Poettering
14a9b80afb - Check process name when dealing with PID files
- Add new PA_STREAM_FIX_CHANNELS, FIX_RATE, FIX_FORMAT, DONT_MOVE, VARIABLE_RATES to pa_sream_flags_t adn implement it
- Expose those flags in pacat
- Add notifications about device suspend/resume to the protocol and expose them in libpulse
- Allow changing of buffer_attr during playback
- allow disabling for remixing globally
- hookup polkit support


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2067 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-11-21 01:30:40 +00:00
Lennart Poettering
81233c1781 make disallow-module-loading config option work again (original patch from Diego Petteno)
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2015 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-11-01 11:23:45 +00:00
Lennart Poettering
7bfd1b2f01 make rtprio and nice level actually configurable
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2014 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-11-01 02:58:26 +00:00
Lennart Poettering
44d7c9ad9b add nice and rtprio resource limit support; make rtprio and nice level to use configurable; some minor updates
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2010 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-11-01 00:34:43 +00:00
Lennart Poettering
a46804a8e2 use real path of binary instead of /proc/self/exe to execute ourselves
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1976 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-10-29 15:33:07 +00:00
Lennart Poettering
a67c21f093 merge 'lennart' branch back into trunk.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1971 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-10-28 19:13:50 +00:00
Pierre Ossman
5530d3295a We now use gid unconditionally, so make sure it's defined.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1463 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-05-29 07:47:02 +00:00
Lennart Poettering
4d88fcd59d when called with the setid bit change euid to uid sooner to make sure that we can access our own files even when we dropped most capabilities. (Closes #21)
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1455 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-05-25 20:35:30 +00:00
Pierre Ossman
06211b7c8f Add copyright notices to all relevant files. (based on svn log)
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1426 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-02-13 15:35:19 +00:00
Pierre Ossman
521daf6f0a Huge trailing whitespace cleanup. Let's keep the tree pure from here on,
mmmkay?


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1418 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-01-04 13:43:45 +00:00
Pierre Ossman
26bfce6281 Improve error messages a bit.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1320 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-22 12:46:05 +00:00
Lennart Poettering
dbc658df41 add new "disable-shm" server config option
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1286 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-19 01:20:13 +00:00
Lennart Poettering
e385d93e5a remove all occurences of
pa_logXXX(__FILE__":  
   
and replace them by 
  
   pa_logXXX("



git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1272 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-18 21:38:40 +00:00
Lennart Poettering
0e436a6926 Rework memory management to allow shared memory data transfer. The central idea
is to allocate all audio memory blocks from a per-process memory pool which is
available as read-only SHM segment to other local processes. Then, instead of
writing the actual audio data to the socket just write references to this
shared memory pool.

To work optimally all memory blocks should now be of type PA_MEMBLOCK_POOL or
PA_MEMBLOCK_POOL_EXTERNAL. The function pa_memblock_new() now generates memory
blocks of this type by default.



git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1266 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-18 19:55:18 +00:00
Lennart Poettering
61ce8bb002 add new command line option --no-cpu-limit. This is useful when running PulseAudio in valgrind's massif or callgrind tools
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1149 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-25 20:51:15 +00:00
Pierre Ossman
4a59581a4c Fix incorrect call to nonexistant pa_log_warning().
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1122 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-20 13:28:50 +00:00
Pierre Ossman
0762af2aee Only warn when running as root and not --system.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1121 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-20 13:24:57 +00:00
Pierre Ossman
f3d4924473 Centralise check if we're running as root.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1120 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-20 13:24:04 +00:00
Pierre Ossman
57d8a315ea Move check for SUID into the caps functions.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1119 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-20 13:19:16 +00:00
Pierre Ossman
8d2dc9c4d1 Handle user switch in a more platform independent manner.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1118 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-20 13:16:23 +00:00
Lennart Poettering
2409f1a80b add support to set resource limits for the daemon and set some of them to some sane values
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1116 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-20 01:25:37 +00:00
Pierre Ossman
246e30aec7 Add missing header.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1114 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-20 00:28:18 +00:00
Pierre Ossman
a3e7595ac1 Make -1 mean "current group/user" so that some platform dependent calls
can be centralised.


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1113 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-20 00:21:50 +00:00
Lennart Poettering
703bb49c91 add a few comments
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1110 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-19 23:16:02 +00:00
Lennart Poettering
a382492204 * add new function pa_check_in_group()
* abstract credential APis a little bit by introducing HAVE_CREDS and a structure pa_creds
* rework credential authentication
* fix module-volume-restore and friends for usage in system-wide instance
* remove loopback= argument from moulde-*-protocol-tcp since it is a superset of listen= and usually a bad idea anyway since the user shouldn't load the TCP module at all if he doesn't want remote access
* rename a few variables in the jack modules to make sure they don't conflict with symbols defined in the system headers
* add server address for system-wide daemons to the default server list for the the client libs
* update todo


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1109 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-19 21:48:35 +00:00
Lennart Poettering
9c87a65ce9 * add new --system command line parameter to the daemon for running PulseAudio as system-wide instance
* add PA_ prefixes to all global #defines
* modify auth-by-creds: define a new group "pulse-access" which is used for authentication
* add proper privilige dropping when running in --system mode
* create runtime directory once on startup and not by each module seperately


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1105 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-19 17:44:19 +00:00
Lennart Poettering
860be2e70b try to use send(,,MSG_NOSIGNAL) instead of write() wherever possible (which
will allow us to drop the SIGPIPE check). Cache the results of the last
write()/send() to make sure that we do not issue more than necessary system
calls.



git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1083 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-14 22:42:01 +00:00
Lennart Poettering
f44ba09265 big s/polyp/pulse/g
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1033 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-06-19 21:53:48 +00:00
Lennart Poettering
f5a888504f disable padsp for the polypaudio daemon itself by defining the __padsp_disabled__ symbol
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@983 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-05-26 17:59:39 +00:00
Lennart Poettering
4413b89d7a * split pa_cstrerror() into its own file polypcore/core-error.[ch]
* fix building of padsp
* remove a warning when compiling padsp.c


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@972 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-05-25 17:16:55 +00:00
Pierre Ossman
4e3dc7ce68 Wrap strerror() in a function that makes it thread safe and converts the
output to UTF-8.


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@945 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-05-22 15:20:46 +00:00
Pierre Ossman
13798312ef Convert log text to current locale before passing it on to stderr or syslog.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@933 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-05-18 10:36:36 +00:00
Lennart Poettering
53a285e756 fix include line for "core-util.h"
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@923 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-05-17 20:44:55 +00:00
Pierre Ossman
d9cc2cfcb9 Move xmalloc to the public side (libpolyp).
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@908 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-05-17 16:34:18 +00:00
Pierre Ossman
6ae8511a66 Having constant deferred events isn't allowed and causes problems. Use timers
instead.


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@757 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-04-19 11:53:24 +00:00
Pierre Ossman
c22a0c12e4 Make the probe for RNG sources at runtime since the configure script isn't
compatible with cross-compiling.


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@744 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-04-18 15:16:24 +00:00
Lennart Poettering
0990d8c796 initialize random seed globaly from $RANDOM_DEVICE
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@719 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-04-16 09:13:09 +00:00
Lennart Poettering
4358977415 * Add new "auth-group=" parameter to protocol-native-unix
* Rename "public=" argument  of protocol-{esound,native} to "auth-anonymous"


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@601 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-24 17:14:23 +00:00
Lennart Poettering
4a64b0d116 change pa_log() and friends to not require a trailing \n on all logged strings
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@574 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-23 02:27:19 +00:00
Lennart Poettering
cae2d80076 disable SIGPIPE before calling pa_core_new(), this way the warning message is not printed
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@542 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-20 23:58:51 +00:00
Pierre Ossman
5eda18bf60 Cleaned up the includes after the restructuring. Indicate which headers are
public and which are internal through <> vs "".


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@500 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-17 12:10:58 +00:00
Pierre Ossman
e205b25d65 Reorganised the source tree. We now have src/ with a couple of subdirs:
* daemon/ - Contains the files specific to the polypaudio daemon.
 * modules/ - All loadable modules.
 * polyp/ - Files that are part of the public, application interface or
   are only used in libpolyp.
 * polypcore/ - All other shared files.
 * tests/ - Test programs.
 * utils/ - Utility programs.


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@487 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-02-16 19:19:58 +00:00
Renamed from polyp/main.c (Browse further)