| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
2008-01-15 John (J5) Palmieri <johnp@redhat.com>
* patch by Peter O'Gorman <pogma at thewrittenword dot com>
* dbus/dbus-sysdeps.h: support for AIX poll implementation (FDO Bug
#11666)
|
|
|
|
|
|
| |
Previously, the attempts to determine support at compile-time on Darwin were
causing the i486 atomic ops to be used on *all* i386 or x86-64 GCC builds
(AH_VERBATIM can't be conditionalized like we were trying to).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* tools/dbus-launch-x11.c (set_address_in_x11): fix from Michael
Lorenz to use long not int with XChangeProperty format 32
* dbus/dbus-sysdeps-util-unix.c
(_dbus_write_pid_to_file_and_pipe): factor this out, and use the
same code in _dbus_become_daemon (where the parent writes the pid
file and to the pid pipe) and in bus_context_new (where the daemon
writes its own pid file and to its own pid pipe)
* bus/bus.c (bus_context_new): close the pid pipe after we print
to it. Also, don't write the pid to the pipe twice when we fork,
someone reported this bug a long time ago.
|
| |
|
|
|
|
|
|
| |
* dbus/dbus-sysdeps.c: (_dbus_clearenv):
* dbus/dbus-sysdeps.h:
Add a wrapper for clearenv.
|
|
|
|
| |
* Add indent-tabs-mode: nil to all file headers.
|
|
|
|
|
|
|
|
|
|
|
| |
* dbus/dbus-sysdeps-unix.c (_dbus_append_session_config_file)
(_dbus_append_system_config_file): new functions
* bus/main.c (main): use _dbus_append_system_config_file() and
_dbus_append_session_config_file()
* dbus/Makefile.am (INCLUDES): move DBUS_SYSTEM_CONFIG_FILE and
DBUS_SESSION_CONFIG_FILE into this makefile
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* dbus/dbus-sysdeps.c (_dbus_set_errno_to_zero)
(_dbus_get_is_errno_nonzero, _dbus_get_is_errno_eintr)
(_dbus_strerror_from_errno): family of functions to abstract
errno, though these are somewhat bogus (really we should make our
socket wrappers not use errno probably - the issue is that any
usage of errno that isn't socket-related probably is not
cross-platform, so should either be in a unix-only file that can
use errno directly, or is a bug - these general errno wrappers
hide issues of this nature in non-socket code, while
socket-specific API changes would not since sockets are allowed
cross-platform)
|
|
|
|
|
|
| |
* dbus/dbus-sysdeps-unix.c (_dbus_credentials_parse_and_add_user):
delete this function since it was effectively the same as
_dbus_credentials_add_from_username()
|
|
|
|
|
|
|
|
|
|
|
| |
* dbus/dbus-auth.c: adapt to keyring changes
* dbus/dbus-keyring.c: change to avoid using user ID and home
directory directly; instead use a
keyring-location-from-credentials function in dbus-sysdeps
* fix to use _dbus_append_user_from_current_process() instead of
_dbus_username_from_current_process() or _dbus_append_desired_identity().
|
|
|
|
| |
It needs to much tests to verify that the change does not break anything. I had overseen that the signatures are different (** to *) which requires non trivial changes. This is one *major* disadvantage of elumating oop functionality with c. You are responsible for cleaning every object on every function return point, which could be a nightmare if you are not working with dbus all the days.
|
|
|
|
| |
_dbus_append_desired_identity
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* dbus/dbus-server-socket.c (_dbus_server_listen_socket): support
all_interfaces=true|false for tcp servers
* dbus/dbus-sysdeps-unix.c (_dbus_listen_tcp_socket): support
inaddr_any flag
* bus/selinux.c: fix some missing includes
* dbus/dbus-server-socket.c (_dbus_server_listen_socket): allow
port to simply be omitted in addition to specifying 0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* bus/policy.c (bus_policy_create_client_policy): gracefully
continue if the connection has no unix user - just don't apply
any unix user dependent rules.
* bus/config-parser.c: remove dbus-userdb.h usage
* bus/bus.c: remove dbus-userdb.h usage
* dbus/dbus-transport.c (_dbus_transport_get_is_authenticated):
support Windows user function; also, fix the logic for checking
auth as root in the default auth code (broken in the previous
commit)
* dbus/dbus-connection.c
(dbus_connection_set_windows_user_function): new function
(dbus_connection_get_windows_user): new function
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* bus/dispatch.c (check_get_connection_unix_process_id): adapt
since sysdeps-unix.h stuff isn't included anymore
* bus/bus.c (bus_context_new): use more abstract functions to
change user, so they can be no-ops on Windows
* dbus/dbus-credentials.c, dbus/dbus-credentials.h,
dbus/dbus-credentials-util.c: new files containing a fully opaque
DBusCredentials data type to replace the old not opaque one.
* configure.in (DBUS_UNIX): define DBUS_UNIX to match DBUS_WIN on
windows
* dbus/dbus-userdb.h: prohibit on Windows, next step is to clean
up the uses of it in bus/*.c and factor out the parts of
cookie auth that depend on it
|
|
|
|
|
|
| |
(_DBUS_PATH_SEPARATOR): new macro.
* dbus/dbus-sysdeps.c (_dbus_split_paths_and_append): merged from dbus/dbus-sysdeps-unix.c and dbus/dbus-sysdeps-win.c.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* tools/dbus-launch.c (do_close_stderr): fix C89 problem and
formatting problem
* Mostly fix the DBusPipe mess.
- put line break after function return types
- put space before parens
- do not pass structs around by value
- don't use dbus_strerror after calling supposedly cross-platform
api
- don't name pipe variables "fd"
- abstract special fd numbers like -1 and 1
|
|
|
|
| |
dbus/dbus-sysdeps-util-unix.c, dbus/dbus-sysdeps-util-win.c, bus/dbus-sysdeps-win.c,dbus/dbus-sysdeps.h: renamed _dbus_xxx_pipe to _dbus_pipe_xxx, completed _dbus_pipe support.
|
|
|
|
|
|
|
|
| |
pointer, because the port is given back.
* dbus/dbus-server-socket.c (_dbus_server_new_for_tcp_socket): implemented returning tcp port. Skipping port parameter and non integer port values in config <listen> statement needs more effort.
* dbus/dbus-sysdeps-unix.c, dbus/dbus-sysdeps-win.c (_dbus_listen_tcp_socket): return the real used tcp port.
* bus/dbus-daemon.1.in: added <listen> tcp examples
|
|
|
|
| |
related write() function calls to _dbus_write_pipe().
|
|
|
|
|
|
|
|
| |
from dbus/dbus-sysdeps.c, windows version of _dbus_atomic_inc/dec()
is in dbus-sysdeps-win.c (not in this patch).
* dbus/dbus-sysdeps.h: DBusAtomic::value is long on windows to fit
with InterlockedInc/Decrement. - Patches from Christian Ehrlicher
|
|
|
|
| |
* bus/dbus-daemon.1.in: document standard_session_servicedirs
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* bus/config-parser.c: add the standard_session_servicedirs element
to the parser
(bus_config_parser_content): process the standard_session_servicedirs
element by getting the standard directories from sysdeps and merging
them into the service directory list
(test_default_session_servicedirs): make sure we get what we expect
* bus/session.conf.in: replace the servicedir tag with the
standard_session_servicedirs tag
* dbus/dbus-list.h: remove the typedef of DBusList and place it in
dbus-sysdeps.h to avoid circular header dependencies
* dbus/dbus-sysdeps.h: add the typedef of DBusList
* dbus/dbus-sysdeps-unix.c (split_paths_and_append): utility function
which takes a string of directories delimited by colons, parses them
out, appends a suffix and puts them in a list ignoring empty elements
(_dbus_get_standard_session_servicedirs): returns the standard
directories for a session bus to look for service activation files
on Unix which includes the XDG_DATA_HOME, XDG_DATA_DIRS and
DBUS_DATADIR directories
* test/data/valid-config-files/many-rules.conf: add the
standard_session_servicedirs tag to the valid config file tests
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* dbus/dbus-threads.[hc]: Documentation improvements. Clarify how
condition variables relate to recursive mutexes.
* dbus/dbus-sysdeps-pthread.c, dbus/dbus-sysdeps-win-thread.c,
dbus/dbus-threads.c: Split the platforms-specific thread
implementations into their own files.
* dbus/dbus-sysdeps-pthread.c
(_dbus_pthread_condvar_wait_timeout): invert the return value, it
was backward. Not that anything uses it.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* dbus/dbus-sysdeps-unix.c: Add function
_dbus_make_file_world_readable that chmods a file to 0644.
* dbus/dbus-sysdeps-unix.c (_dbus_get_autolaunch_address):
Avoid writing to the static "argv" array, thereby avoiding a
COW on the child process.
* dbus/dbus-internals.c (_dbus_create_uuid_file_exclusively):
call _dbus_make_file_world_readable on the created file.
|
|
|
|
|
| |
* Documentation! Whee! Doxygen now 100% silent. If you make it
angry again, you will be punished.
|
|
|
|
|
|
|
| |
* Clean up Doxygen group markers for public API so Doxygen finds
everything (not comprehensively fixed for private API).
Means all remaining Doxygen warnings are just about missing docs
and thus pretty simple to resolve.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* configure.in (LT_CURRENT, LT_AGE): increment current and age to
reflect addition of interfaces.
* doc/dbus-specification.xml: describe a new
org.freedesktop.DBus.Peer.GetMachineId method
* dbus/dbus-string.c (_dbus_string_skip_white_reverse): new function
(_dbus_string_skip_white, _dbus_string_skip_blank): use new
DBUS_IS_ASCII_BLANK, DBUS_IS_ASCII_WHITE macros and fix assertion
at end of skip_white
(_dbus_string_chop_white): new function
* bus/connection.c (bus_connections_setup_connection): call
dbus_connection_set_route_peer_messages.
* dbus/dbus-connection.c
(_dbus_connection_peer_filter_unlocked_no_update): modify to
support a GetMachineId method.
Also, support a new flag to let the bus pass peer methods through
to apps on the bus, which can be set with
dbus_connection_set_route_peer_messages.
Finally, handle and return an error for anything unknown on the
Peer interface, which will allow us to extend the Peer interface
in the future without fear that we're now intercepting something
apps were wanting to see.
* tools/dbus-uuidgen.c: a thin wrapper around the functions in
dbus/dbus-uuidgen.c
* dbus/dbus-uuidgen.c: implement the bulk of the dbus-uuidgen
binary here, since most of the code is already in libdbus
* dbus/dbus-sysdeps.c (_dbus_read_local_machine_uuid): read the
uuid from the system config file
* dbus/dbus-internals.c (_dbus_generate_uuid, _dbus_uuid_encode)
(_dbus_read_uuid_file_without_creating)
(_dbus_create_uuid_file_exclusively, _dbus_read_uuid_file): new
uuid-related functions, partly factored out from dbus-server.c
* dbus/dbus-sysdeps.c (_dbus_error_from_errno): convert EEXIST to
DBUS_ERROR_FILE_EXISTS instead of EEXIST
* dbus/dbus-protocol.h (DBUS_ERROR_FILE_EXISTS): add file exists error
* tools/dbus-cleanup-sockets.1: explain what the point of this
thing is a bit more
* autogen.sh (run_configure): add --config-cache to default
configure args
* dbus/dbus-internals.h (_DBUS_ASSERT_ERROR_IS_SET): disable the
error set/clear assertions when DBUS_DISABLE_CHECKS is defined
* tools/dbus-launch.c (main): if xdisplay hasn't been opened,
don't try to save address, fixes crash in make check
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* tools/dbus-launch.c
* tools/dbus-launch.h
* tools/dbus-launch-x11.c:
* tools/dbus-launch.1: Add the --autolaunch option to
dbus-launch, which makes it scan for an existing session
started with --autolaunch. With that option, it also creates
an X11 window and saves the bus address and PID to it.
* dbus/dbus-sysdeps.h:
* dbus/dbus-sysdeps-unix.c (_dbus_get_autolaunch_address): Add
a function that runs "dbus-launch --autolaunch" to retrieve
the running D-Bus session address (or start one if none was running)
* dbus/dbus-transport.c: Add the handler for the "autolaunch:"
address protocol, which tries to get the running session from
dbus-launch.
* dbus/dbus-bus.c:
* dbus/dbus-internals.h: Make "autolaunch:" be the default
D-Bus session bus address.
* dbus/dbus-connection.c: Fix horrible typo in error message.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* dbus/dbus-server.c (dbus_server_listen): change how this works
to be able to delegate to a set of handlers that can succeed,
fail, or choose not to handle. Allows us to have
dbus_server_listen_platform_specific.
* dbus/dbus-server-socket.c (_dbus_server_new_for_tcp_socket):
factor out the tcp socket stuff to be used on windows, leaving
unix domain socket only in dbus-socket-unix.c
* dbus/dbus-transport-socket.c
(_dbus_transport_new_for_tcp_socket): factor out the tcp socket
stuff to be used on windows, leaving unix domain socket only
in dbus-transport-unix.c
* dbus/dbus-connection.c (dbus_connection_get_unix_user): insert
temporary hack to be sure this fails on windows
(dbus_connection_get_unix_process_id): ditto
|
|
|
|
|
|
|
|
|
|
|
|
| |
* dbus/dbus-sysdeps-unix.c (_dbus_open_tcp_socket)
(_dbus_open_unix_socket, _dbus_open_socket): change API for
_dbus_open_socket so the domain/type/protocol from system headers
are not required. This is kind of pointless though unless we move
part of _dbus_connect_tcp_socket into sysdeps.c instead of
sysdeps-unix.c, which would mean adding a wrapper around
bind/listen/etc.
Also, add DBusError to the socket-opening functions so they
don't require use of errno.
|
|
|
|
|
|
|
|
|
|
| |
* dbus/dbus-sysdeps-unix.h: small change to Peter's patch to make
dbus-sysdeps-unix-util.c build, add unix-specific sysdeps header.
* dbus/dbus-sysdeps.h, dbus-sysdeps-unix.c: patch from Peter
Kümmel bug #8249 to make the sysdeps.h read/write/open/close
functions specifically for sockets only, and move generic
read/write/open/close into unix-specific code.
|
|
|
|
|
|
|
|
|
|
|
|
| |
patch mostly by Peter Kümmel, bug #8211
* dbus/dbus-sysdeps-unix.c: new file, which splits out
unix-specific stuff in dbus-sysdeps.c
* dbus/dbus-sysdeps.c: don't include any UNIX-only headers,
and move unix-specific stuff to dbus-sysdeps-unix.c
* configure.in: check HAVE_ERRNO_H
|
|
|
|
|
|
|
|
|
|
| |
* test/test-service.c (path_message_func): fix lack of return value
* dbus/dbus-sysdeps.c (_dbus_printf_string_upper_bound): fix
formatting, remove #ifdef, and fix docs. #ifdef doesn't make
any more sense than on anything else in this file.
(_dbus_get_tmpdir): add const to return value, and keep the
results of the various getenv around in a static variable.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* bus/services.c (bus_service_list_queued_owners):
Add a pointer cast to fix compiler warning
* dbus/dbus-dataslot.c (_dbus_data_slot_list_get):
return a NULL instead of FALSE since the return type
is not expecting a boolean
* dbus/dbus-marshal-basic.c (_dbus_marshal_test):
Remove unused variable
* dbus/dbus-marshal-recursive-util.c (node_new):
return a NULL instead of FALSE since the return type
is not expecting a boolean
* dbus/dbus-server-debug-pipe.c (_dbus_transport_debug_pipe_new):
Send a NULL into _dbus_transport_new_for_fd instead of a FALSE
because we are expecting a pointer not a boolean
* dbus/dbus-sysdeps-util.c (_dbus_get_tmpdir):
add void as the parameter so some compilers
don't complain
* dbus/dbus-transport-unix.c (_dbus_transport_new_for_domain_socket,
_dbus_transport_new_for_tcp_socket):
Send a NULL into _dbus_transport_new_for_fd instead of a FALSE
because we are expecting a pointer not a boolean
* test/shell-test.c (test_command_line):
cast the second argument to _dbus_list_append to avoid compiler
warnings
* test/test-names.c (main): remove unused variable
* test/test-service.c (check_hello_from_self_reply):
Initialize echo_message and echo_reply to NULL
* test/test-shell-service.c (handle_echo):
Remove unused variable and cast the third parameter passed to
dbus_connection_get_object_path_data to avoid compiler warrnings
* test/name-test/test-names.c (clear_message_queue):
Remove unused function
* test/name-test/test-pending-call-dispatch.c:
Fix format string in printf
|
|
|
|
|
|
|
|
| |
* dbus/dbus-address.c:
* bus/activation.c:
* test/shell-test.c:
don't hardcode tmp directory (patch from Dave Meikle
<dmk at davemeikle dot co dot uk>)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* dbus/dbus-sysdeps.c:
* dbus/dbus-string.c:
s/_dbus_printf_length/_dbus_printf_string_upper_bound to comform with
GLib's function which does the same thing
* configure.in:
* bus/Makefile.am:
* bus/dir-watch-default.c:
* bus/dir-watch-dnotify.c:
* bus/dir-watch-kqueue.c:
Add kqueue directory watching for freebsd and split the directory
watching code into seperate files per method/arch
(patches from Timothy Redaelli <drizzt at gufi dotorg>)
|
|
|
|
|
|
| |
* dbus/dbus-sysdeps.c:
add _dbus_printf_length (patch from Peter Kümmel
<syntheticpp at gmx dot net>)
|
| |
|
|
|
|
|
|
|
| |
* configure.in: Add a configure option, --with-console-auth-dir
* dbus/dbus-sysdeps-util.c (_dbus_user_at_console): Use the
new setting. Patch from Kay Sievers.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(dbus_message_has_path): New method
(dbus_message_has_interface): New method
(dbus_message_has_member): New method
* dbus/dbus/dbus-sysdeps.c (_dbus_check_dir_is_private_to_user):
New method
* dbus/dbus-keyring.c (_dbus_keyring_reload): Check to see that
the keyring directory is private to the user
* doc/TODO:
- The convenience functions in dbus-bus.h should perhaps have
the signatures that they would have if they were autogenerated
stubs. e.g. the acquire service function. We should also evaluate
which of these functions to include, in light of the fact that
GLib/Qt native stubs will probably also exist.: Punted
- add dbus_message_has_path(), maybe has_member/interface:
fixed in this patch
- in dbus-keyring.c, enforce that the keyring dir is not
world readable/writable: Fixed in this patch
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* doc/dbus-specification.xml: document the GUID thing
* dbus/dbus-server.c (_dbus_server_init_base): initialize a
globally unique ID for the server, and put a "guid=hexencoded"
field in the address
* dbus/dbus-bus.c: fix missing #include of dbus-threads-internal.h
* dbus/dbus-message.c: ditto
* dbus/dbus-dataslot.c: ditto
* dbus/dbus-list.c: ditto
* dbus/dbus-internals.h: wait, just include
dbus-threads-internal.h here
* dbus/dbus-string.c (_dbus_string_copy_to_buffer): move back for
use in main library
* dbus/dbus-sysdeps.c (_dbus_generate_random_bytes_buffer): new function
|
|
|
|
|
|
|
|
| |
* dbus/dbus-userdb-util.c: split out part of dbus-userdb.c
* dbus/dbus-sysdeps.c (_dbus_uid_from_string): move here to pave
way for stripping down dbus-userdb.c stuff included in libdbus.
Rename _dbus_parse_uid for consistency.
|
|
|
|
|
| |
* dbus/dbus-sysdeps.h: add _DBUS_DOUBLES_BITWISE_EQUAL macro,
for a variety of reasons '==' doesn't do this.
|
|
|
|
|
|
|
|
|
|
| |
* dbus/dbus-sysdeps.h (_dbus_become_daemon): Also take
parameter for fd to write pid to.
* dbus/dbus-sysdeps.c (_dbus_become_daemon): Implement it.
* bus/bus.c (bus_context_new): Pass print_pid_fd
to _dbus_become_daemon (bug #1720)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* bus/config-parser.c:
(struct PolicyType): Add POLICY_CONSOLE
(struct Element.d.policy): s/gid_or_uid/gid_uid_or_at_console
(start_busconfig_child): Sets up console element when
<policy at_console=""> is encountered in a policy file
(append_rule_from_element): Convert console elements to console
rules.
* bus/policy.c:
(bus_policy_create_client_policy): Add console rules to the client
policy based on if the client is at the console
(bus_policy_append_console_rule): New function for adding a
console rule to a policy
(bus_policy_merge): Handle console rule merging
* dbus/dbus-sysdeps.h: Added the DBUS_CONSOLE_DIR constant
where we check for console user files
* dbus/dbus-sysdeps.c:
(_dbus_file_exists): New function which checks if the given
file exists
(_dbus_user_at_console): New function which does the system
specific process of checking if the user is at the console
* dbus/dbus-userdb.c:
(_dbus_is_console_user): New function converts a UID to user name
and then calls the system specific _dbus_user_at_console to
see if the user is at the console and therefor a console user
|
|
|
|
|
| |
* COPYING: switch to Academic Free License version 2.1 instead of
2.0, to resolve complaints about patent termination clause.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* test/glib/test-service-glib.c (main): remove unused variable
* glib/dbus-gidl.c (base_info_ref): fix a silly compiler warning
* dbus/dbus-auth.h (enum): remove AUTHENTICATED_WITH_UNUSED_BYTES
from the enum, no longer in use.
* dbus/dbus-sysdeps.h: include config.h so DBUS_VA_COPY actually
works right.
* dbus/dbus-message.c: add various _dbus_return_val_if_fail for
whether error_name passed in is a valid error name.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* bus/activation.c:
- Added service file reloading.
Each service files directory is kept in an hash table in
BusActivation and each BusActivationEntry knows what .service-file it
was read from. So when you try to activate a service the bus will
check if it's been updated, removed or if new .service-files has
been installed.
- Test code at the bottom for the service file reloading.
* bus/test-main.c: (main):
* bus/test.h:
- added service reloading test.
* dbus/dbus-sysdeps.c:
* dbus/dbus-sysdeps.h: (_dbus_delete_directory): Added.
|