Havoc Pennington [Tue, 24 Jul 2007 22:11:00 +0000 (22:11 +0000)]
2007-07-24 Havoc Pennington <hp@redhat.com>
* configure.in: add AM_PROG_CC_C_O to allow per-target CPPFLAGS
* bus/dispatch.c (bus_dispatch_test_conf): Fix up setting
TEST_LAUNCH_HELPER_CONFIG to include the full path, and enable
test shell_fail_service_auto_start when use_launcher==TRUE
* bus/activation-helper-bin.c (convert_error_to_exit_code): pass
through the INVALID_ARGS error so the test suite works
* bus/activation.c (handle_activation_exit_error): return
DBUS_ERROR_NO_MEMORY if we get BUS_SPAWN_EXIT_CODE_NO_MEMORY
* dbus/dbus-spawn.c (_dbus_babysitter_get_child_exit_status):
return only the exit code of the child, not the entire thingy from
waitpid(), and make the return value indicate whether the child
exited normally (with a status code)
* bus/bus.c (process_config_first_time_only): _dbus_strdup works
on NULL so no need to check
(process_config_every_time): move servicehelper init here, so we
reload it on HUP or config file change
* bus/Makefile.am (install-data-hook): remove comment because
Emacs make mode seems to be grumpy about it
Richard Hughes [Tue, 24 Jul 2007 13:03:31 +0000 (13:03 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* bus/Makefile.am:
* bus/test-system.c: (die), (check_memleaks), (test_pre_hook),
(test_post_hook), (main):
Add back the test-system.c file - not sure now this got ignored in the
diff. I blame git.
Richard Hughes [Tue, 24 Jul 2007 12:55:32 +0000 (12:55 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* configure.in:
Use ustar to generate the tarball; this fixes the make distcheck
problem when the data files do not fit in the archive:
tar: dbus-1.1.2/test/data/valid-service-files/org.freedesktop.DBus.
TestSuiteShellEchoServiceFail.service.in: file name is too
long (max 99); not dumped
We have to have the 'long' names as the service helper matches by
filename rather than by the name in the service file.
Richard Hughes [Tue, 24 Jul 2007 12:48:45 +0000 (12:48 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* configure.in:
* test/Makefile.am:
* test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
uiteNoExec.service.in:
* test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
uiteNoService.service.in:
* test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
uiteNoUser.service.in:
* test/data/valid-config-files-system/debug-allow-all-fail.conf.in:
* test/data/valid-config-files-system/debug-allow-all-pass.conf.in:
* test/data/valid-config-files/debug-allow-all-sha1.conf.in:
* test/data/valid-config-files/debug-allow-all.conf.in:
* test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
teEchoService.service.in:
* test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
teSegfaultService.service.in:
* test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
teShellEchoServiceFail.service.in:
* test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
teShellEchoServiceSuccess.service.in:
* test/data/valid-service-files/debug-echo.service.in:
* test/data/valid-service-files/debug-segfault.service.in:
* test/data/valid-service-files/debug-shell-echo-fail.service.in:
* test/data/valid-service-files/debug-shell-echo-success.service.in:
* test/data/valid-service-files/org.freedesktop.DBus.TestSuiteEchoS
ervice.service.in:
* test/data/valid-service-files/org.freedesktop.DBus.TestSuiteSegfa
ultService.service.in:
* test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShell
EchoServiceFail.service.in:
* test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShell
EchoServiceSuccess.service.in:
Add the data files needed by the system activation unit checks.
Richard Hughes [Tue, 24 Jul 2007 12:39:30 +0000 (12:39 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* bus/dispatch.c: (check_segfault_service_no_auto_start),
(check_launch_service_file_missing),
(check_launch_service_user_missing),
(check_launch_service_exec_missing),
(check_launch_service_service_missing), (bus_dispatch_test_conf),
(bus_dispatch_test_conf_fail), (bus_dispatch_test):
Add unit tests for system activation. Most are copied from the
session activation tests, but some didn't apply when using a laucher.
Richard Hughes [Tue, 24 Jul 2007 12:36:41 +0000 (12:36 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* bus/activation.c: (bus_activation_activate_service):
If the bus uses a service-laucher, then use the setuid laucher.
Richard Hughes [Tue, 24 Jul 2007 12:33:35 +0000 (12:33 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* configure.in:
Add the needed library exports for the new laucher.
Richard Hughes [Tue, 24 Jul 2007 12:31:01 +0000 (12:31 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* configure.in:
Check for -Wl,--gc-sections so we can really reduce the size of the
setuid binary.
Richard Hughes [Tue, 24 Jul 2007 12:22:43 +0000 (12:22 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* bus/activation.c: (handle_activation_exit_error),
(babysitter_watch_callback):
Map the child exit status integer to a proper dbus error.
Richard Hughes [Tue, 24 Jul 2007 12:19:59 +0000 (12:19 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* bus/bus.c: (process_config_first_time_only),
(process_config_every_time), (bus_context_unref),
(bus_context_get_servicehelper):
* bus/bus.h:
Add the concept of a service-helper and allow it's value to be read.
Richard Hughes [Tue, 24 Jul 2007 12:17:39 +0000 (12:17 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* bus/activation.c: (bus_activation_entry_unref),
(update_desktop_file_entry):
Add the concept of, and read the value of user from the desktop file.
The user string is not required unless we are using system activation.
Richard Hughes [Tue, 24 Jul 2007 12:14:51 +0000 (12:14 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* bus/activation.c:
* bus/desktop-file.h:
Move the defines into the header file, as we use these in the lauch
helper as well as the desktop file parsing.
Richard Hughes [Tue, 24 Jul 2007 12:12:10 +0000 (12:12 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* bus/.cvsignore:
Add the autogenerated binary files.
Richard Hughes [Tue, 24 Jul 2007 12:10:58 +0000 (12:10 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* bus/Makefile.am:
* bus/test.h:
Add the build glue for the lauch helper, and also add the launch-helper
OOM checks into make check. I've probably broken the build, give me 2.
Richard Hughes [Tue, 24 Jul 2007 12:03:04 +0000 (12:03 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* bus/test-launch-helper.c: (die), (check_memleaks),
(test_post_hook), (bus_activation_helper_oom_test), (main):
Add a test wrapper to allow OOM checks on the launch helper.
Richard Hughes [Tue, 24 Jul 2007 12:01:32 +0000 (12:01 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* bus/activation-helper-bin.c: (convert_error_to_exit_code),
(main):
* bus/activation-helper.c: (desktop_file_for_name),
(clear_environment), (check_permissions), (check_service_name),
(get_parameters_for_service), (switch_user),
(exec_for_correct_user), (check_bus_name), (get_correct_parser),
(launch_bus_name), (check_dbus_user), (run_launch_helper):
* bus/activation-helper.h:
Add the initial launch-helper. This is split into a main section and a
binary loader that allows us to lauch the main section in another test
harness to do stuff like OOM testing. No build glue yet.
Richard Hughes [Tue, 24 Jul 2007 11:58:08 +0000 (11:58 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* bus/Makefile.am:
* bus/config-parser.c: (bus_config_parser_unref),
(start_busconfig_child), (bus_config_parser_end_element),
(servicehelper_path), (bus_config_parser_content),
(bus_config_parser_finished),
(bus_config_parser_get_servicehelper),
(test_default_session_servicedirs),
(test_default_system_servicedirs), (bus_config_parser_test):
* bus/config-parser.h:
Make the config-parser code use the common config code.
Also add the session and systemdirs stuff, and make the config parser
aware of the servicehelper field.
Richard Hughes [Tue, 24 Jul 2007 11:53:35 +0000 (11:53 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* bus/system.conf.in:
Add new servicehelper fields to the default system.conf file.
Richard Hughes [Tue, 24 Jul 2007 11:50:59 +0000 (11:50 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* bus/config-parser-trivial.c: (service_dirs_find_dir),
(service_dirs_append_link_unique_or_free), (bus_config_parser_new),
(bus_config_parser_unref), (bus_config_parser_start_element),
(bus_config_parser_end_element), (bus_config_parser_content),
(bus_config_parser_finished), (bus_config_parser_get_user),
(bus_config_parser_get_type), (bus_config_parser_get_service_dirs),
(check_return_values), (do_load), (check_loader_oom_func),
(process_test_valid_subdir), (make_full_path), (check_file_valid),
(bus_config_parser_trivial_test):
* bus/config-parser-trivial.h:
Add a security sensitive stripped down config parser for the setuid
launcher. This file only reads what it needs, and doesn't try to do
anything remotely clever like including external files.
It is not intended to validate the config file; it is expected that
config-parser will do that before the setuid program tries to read it.
Richard Hughes [Tue, 24 Jul 2007 11:47:31 +0000 (11:47 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* bus/config-parser-common.c:
(bus_config_parser_element_name_to_type),
(bus_config_parser_element_type_to_name):
* bus/config-parser-common.h:
We don't want to run the whole config parser with all it's deps in the
setuid program. We need to implement a stripped down config parser just
for the launcher, and to do so I need some common functions and
defines; add them here.
Richard Hughes [Tue, 24 Jul 2007 11:44:35 +0000 (11:44 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* dbus/dbus-sysdeps-unix.c:
(_dbus_get_standard_system_servicedirs):
* dbus/dbus-sysdeps-win.c:
Provide a way to get the standard system servicedirs, just like we do
for the session service dirs. These should be seporate, as there may
be a security issue starting up some session stuff as root.
The use-case for the same binary starting up per-system _and_
per-session is also not valid.
Richard Hughes [Tue, 24 Jul 2007 11:41:19 +0000 (11:41 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* bus/dbus-daemon.1.in:
Add standard_system_servicedirs and servicehelper into the man file
and explain what each does.
Richard Hughes [Tue, 24 Jul 2007 11:38:47 +0000 (11:38 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* doc/busconfig.dtd:
Add servicehelper into the dtd, it will soon be a valid part of the
config file.
Richard Hughes [Tue, 24 Jul 2007 11:37:20 +0000 (11:37 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* dbus/dbus-spawn.c: (read_data),
(_dbus_babysitter_get_child_exit_status):
* dbus/dbus-spawn.h:
Add a function so we can get access to the exit status of the launch
helper.
By providing the return code and not the error we can leave the
'what does this mean?' to the bus launch code and not include it in the
dbus directory.
Richard Hughes [Tue, 24 Jul 2007 11:34:40 +0000 (11:34 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* bus/activation-exit-codes.h:
Add defines which specify the output codes of the launch helper.
We have to use exit codes as this is the only way we can return failure
type without going grotty things like redirecting possibly-nonsecure
stderr into the error.
Richard Hughes [Tue, 24 Jul 2007 11:27:09 +0000 (11:27 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* dbus/dbus-protocol.h:
Add new error names needed for the launch helper.
Richard Hughes [Tue, 24 Jul 2007 11:24:52 +0000 (11:24 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* dbus/dbus-sysdeps.c: (_dbus_clearenv):
* dbus/dbus-sysdeps.h:
Add a wrapper for clearenv.
Richard Hughes [Tue, 24 Jul 2007 11:23:46 +0000 (11:23 +0000)]
2007-07-24 Richard Hughes <richard@hughsie.com>
* doc/system-activation.txt:
Add design document for the system activation parts. I'll shortly be
committing many patches that add system activation using a setuid
launcher into CVS, so expect things to be broken for a few hours.
Ralf Habacker [Thu, 19 Jul 2007 20:16:09 +0000 (20:16 +0000)]
* cmake/modules/FindKDEWIN.cmake: fixed comment
* cmake/modules/FindKDEWIN32.cmake: removed obsolate cmake module
Havoc Pennington [Wed, 18 Jul 2007 21:43:23 +0000 (21:43 +0000)]
2007-07-18 Havoc Pennington <hp@redhat.com>
* dbus/dbus-message.c (dbus_message_get_cached)
(dbus_message_cache_or_finalize): don't mess with message from
message cache outside of the cache lock. Bug #9164 from Jonathan
Matthew.
Havoc Pennington [Sat, 14 Jul 2007 02:44:01 +0000 (02:44 +0000)]
2007-07-13 Havoc Pennington <hp@redhat.com>
* Add indent-tabs-mode: nil to all file headers.
Havoc Pennington [Thu, 12 Jul 2007 22:18:05 +0000 (22:18 +0000)]
2007-07-12 Havoc Pennington <hp@redhat.com>
* dbus/dbus-sysdeps-util.c (_dbus_sysdeps_test): invert the test
for parsing hex as double to be sure it fails to work
* dbus/dbus-sysdeps.c (_dbus_string_parse_double): don't allow hex numbers.
Havoc Pennington [Tue, 10 Jul 2007 16:00:44 +0000 (16:00 +0000)]
2007-07-10 Havoc Pennington <hp@redhat.com>
* dbus/dbus-connection.c (struct DBusConnection): Fix from Olivier
Hochreutiner to avoid trying to protect individual bits in a word
with different locks (make dispatch_acquired and io_path_acquired
dbus_bool_t rather than bitfields)
Ralf Habacker [Mon, 9 Jul 2007 06:24:50 +0000 (06:24 +0000)]
* dbus/dbus-sysdeps-win.c,dbus-sysdeps-win.h,dbus-sysdeps-win-util.c,dbus-sysdeps-spawn-win.c: synced with windbus sources
Ralf Habacker [Sat, 7 Jul 2007 11:14:44 +0000 (11:14 +0000)]
* dbus/dbus-sysdeps-win.c
(_dbus_getsid): remove unused jump label
(_dbus_read_credentials_socket): _dbus_string_init could fail, check initialisation
(_dbus_get_working_dir, _dbus_init_working_dir): remove unused functions
Ralf Habacker [Wed, 4 Jul 2007 06:41:56 +0000 (06:41 +0000)]
* cmake/modules/FindKDEWIN.cmake: search in <program files dir>\win32libs for windows supplementary packages too
Ralf Habacker [Sat, 30 Jun 2007 11:46:48 +0000 (11:46 +0000)]
* cmake/dbus/CMakeLists.txt: handle userdb as unix file
Ralf Habacker [Sat, 30 Jun 2007 11:38:05 +0000 (11:38 +0000)]
* dbus/dbus-sysdeps-win.c,dbus/dbus-sysdeps-win.h: removed obsolate DBusUserInfo code
Ralf Habacker [Sat, 30 Jun 2007 11:29:17 +0000 (11:29 +0000)]
* dbus/dbus-sysdeps-win.c (_dbus_daemon_init): reduced compiler warnings
Ralf Habacker [Sat, 23 Jun 2007 07:45:17 +0000 (07:45 +0000)]
* dbus/dbus-auth-script.c (_dbus_auth_script_run): added UNIX_ONLY and WIN_ONLY commands for auth scripts
* test/data/auth/external-root.auth-script: limit execution to unix
Ralf Habacker [Fri, 22 Jun 2007 09:56:53 +0000 (09:56 +0000)]
. readded dbus_watch_get_fd() fix, requires for recent qt releases
Ralf Habacker [Thu, 21 Jun 2007 21:58:36 +0000 (21:58 +0000)]
* dbus/dbus-tranport.c (auth_via_default_rules): made the verbose spam cross-platform
Havoc Pennington [Thu, 21 Jun 2007 21:28:59 +0000 (21:28 +0000)]
2007-06-21 Havoc Pennington <hp@redhat.com>
* dbus/dbus-watch.c (dbus_watch_get_fd): 1) its behavior should
not be the same as before, the ABI has never been declared stable
on Windows and 2) do not commit to cross-platform files without
posting the exact patch to the mailing list
* dbus/dbus-sysdeps-util.c (_dbus_sysdeps_test): as I have pointed
out before, either 0xff needs to work on both platforms, or none
of the dbus code can rely on it working. That means the options
are 1) audit the code for anywhere that relies on 0xff working, if
none found ideally add a test that it *doesn't* work and make unix
reject it explicitly, but in any case this test would go away or
2) make it work on Windows also, then we don't have to figure out
whether we rely on it.
And in either case, post the exact patch to the mailing list and
don't just commit.
Ralf Habacker [Thu, 21 Jun 2007 15:08:50 +0000 (15:08 +0000)]
* cmake/CMakeLists.txt: added VERSION_PATCH to be able to distinguish win32 binary releases from dbus versioning
Ralf Habacker [Thu, 21 Jun 2007 13:11:10 +0000 (13:11 +0000)]
* dbus/dbus-sysdeps-win.c: deleted local DBusCredentials structure
(_dbus_getsid): new function
(_dbus_read_credentials_socket): fixed
(_dbus_append_user_from_current_process, _dbus_credentials_add_from_current_process): added real sid reading
(_dbus_credentials_parse_and_add_desired,_dbus_parse_uid): deleted
Ralf Habacker [Thu, 21 Jun 2007 12:58:52 +0000 (12:58 +0000)]
- recommit with unix eol, cvs does not support native eol
Ralf Habacker [Thu, 21 Jun 2007 12:56:56 +0000 (12:56 +0000)]
* dbus/dbus-sysdeps-win.c (_dbus_sysdeps_test): don't check 0xff as floating point, this isn't supported on win32 math implementation
Ralf Habacker [Thu, 21 Jun 2007 12:34:06 +0000 (12:34 +0000)]
* dbus/dbus-sysdeps-win.c (_dbus_homedir_from_username, _dbus_homedir_from_current_process, _dbus_append_desired_identity): removed obsolate functions
Ralf Habacker [Thu, 21 Jun 2007 12:23:30 +0000 (12:23 +0000)]
* dbus/dbus-sysdeps-win.c, dbus/dbus-sysdeps-spawn-win.c, dbus/dbus-sysdeps-win.h: disabled DBusSocket implementation by Peter Kuemmel
Ralf Habacker [Thu, 21 Jun 2007 08:29:24 +0000 (08:29 +0000)]
* dbus/dbus-watch.c (dbus_watch_get_fd): this function is deprecated and its behavior should be as before until all client code is migrated.
Ralf Habacker [Tue, 19 Jun 2007 20:12:11 +0000 (20:12 +0000)]
* dbus/dbus-sysdeps-util-win.c, tools/dbus-launch-win.c: msvc7.1 fixes by Jaroslaw Staniek tested with mingw
Ralf Habacker [Tue, 19 Jun 2007 20:04:34 +0000 (20:04 +0000)]
* dbus/dbus-sysdeps-win.c, dbus/dbus-sysdeps-spawn-win.c, dbus/dbus-sysdeps-win.h: disabled DBusSocket implementation Patch by Peter Kuemmel
Havoc Pennington [Tue, 19 Jun 2007 17:23:55 +0000 (17:23 +0000)]
add a comment about the match rules limit
Ralf Habacker [Tue, 19 Jun 2007 16:35:40 +0000 (16:35 +0000)]
* removed obsolate patches
Ralf Habacker [Tue, 19 Jun 2007 16:08:09 +0000 (16:08 +0000)]
* eol fix
Havoc Pennington [Mon, 18 Jun 2007 19:55:50 +0000 (19:55 +0000)]
fix location of releases in HACKING
Havoc Pennington [Mon, 18 Jun 2007 19:51:18 +0000 (19:51 +0000)]
2007-06-18 Havoc Pennington <hp@redhat.com>
* configure.in: bump version to 1.1.2 so CVS is higher than last
release (this is not the 1.1.2 release)
Havoc Pennington [Mon, 18 Jun 2007 19:49:40 +0000 (19:49 +0000)]
2007-06-18 Havoc Pennington <hp@redhat.com>
* Release 1.1.1
Havoc Pennington [Mon, 18 Jun 2007 19:32:51 +0000 (19:32 +0000)]
2007-06-18 Havoc Pennington <hp@redhat.com>
* doc/dbus-specification.xml: document org.freedesktop.DBus.GetId()
* bus/driver.c (bus_driver_handle_get_id): implement org.freedesktop.DBus.GetId()
* bus/bus.c (bus_context_new): generate a unique ID for each bus context
* dbus/dbus-connection.c (dbus_connection_get_server_id): new function
* dbus/dbus-bus.c (dbus_bus_get_id): new function
* dbus/dbus-server.c (dbus_server_get_id): new function
Havoc Pennington [Mon, 18 Jun 2007 18:05:21 +0000 (18:05 +0000)]
2007-06-18 Havoc Pennington <hp@redhat.com>
* dbus/dbus-sysdeps-unix.c (_dbus_read_credentials_socket): clean
this up a little bit, to try and understand why telnet'ing to a
server and sending a non-nul byte didn't disconnect immediately;
now it seems that it does disconnect immediately as it should,
though I don't understand what has changed.
Havoc Pennington [Mon, 18 Jun 2007 16:24:03 +0000 (16:24 +0000)]
2007-06-18 Havoc Pennington <hp@redhat.com>
* dbus/dbus-watch.c (dbus_watch_get_socket)
(dbus_watch_get_unix_fd): new API to match DBusConnection
(dbus_watch_get_fd): deprecate this
Throughout: just s/dbus_watch_get_fd/dbus_watch_get_socket/g for
now since all the transports use sockets anyway
Ralf Habacker [Sun, 17 Jun 2007 16:43:39 +0000 (16:43 +0000)]
* dbus/dbus-macros.h, dbus/dbus-message.c, dbus/dbus-message.h: renamed DBUS_GNUC_DEPRECATED to DBUS_DEPRECATED and extended to msvc compiler
Ralf Habacker [Sat, 16 Jun 2007 08:14:47 +0000 (08:14 +0000)]
- debug options should not be in cvs
Ralf Habacker [Sat, 16 Jun 2007 08:09:41 +0000 (08:09 +0000)]
* cmake/CMakeLists.txt: use local include header first
* dbus/dbus-sysdeps-win.c: mingw compile fix of DBusCredential struct
Ralf Habacker [Fri, 15 Jun 2007 21:04:43 +0000 (21:04 +0000)]
* cmake/ConfigureChecks.cmake,cmake/config.h.cmake: added check for HAVE_ERRNO_H
* cmake/dbus/CMakeLists.txt: added missing files
* dbus/dbus-transport-win.c/.h: new files
* dbus/dbus-sysdeps-win.c,.h: added required _unix functions to make dbus compilable on win32
* dbus/dbus-sysdeps-win-utils.c,.h: moved some functions to dbus-sysdeps-win.c
* dbus-win.patch: removed applied or obsolate patches
Note: dbus-win32 is now compilable, no guarantee that it runs without any problems
Havoc Pennington [Fri, 15 Jun 2007 20:10:09 +0000 (20:10 +0000)]
2007-06-15 Havoc Pennington <hp@redhat.com>
* 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
Havoc Pennington [Fri, 15 Jun 2007 19:28:36 +0000 (19:28 +0000)]
2007-06-15 Havoc Pennington <hp@redhat.com>
* 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)
Ralf Habacker [Fri, 15 Jun 2007 18:15:41 +0000 (18:15 +0000)]
- minor spelling fix
Havoc Pennington [Thu, 14 Jun 2007 22:02:10 +0000 (22:02 +0000)]
2007-06-14 Havoc Pennington <hp@redhat.com>
* bus/dispatch.c (check_get_connection_unix_process_id): mop up
getpid() (noticed by Peter KKümmel) and adapt the test to
expect a "pid unknown" error when running on Windows.
Havoc Pennington [Thu, 14 Jun 2007 21:15:33 +0000 (21:15 +0000)]
2007-06-14 Havoc Pennington <hp@redhat.com>
* 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()
Havoc Pennington [Thu, 14 Jun 2007 20:59:16 +0000 (20:59 +0000)]
2007-06-14 Havoc Pennington <hp@redhat.com>
* 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().
Ralf Habacker [Thu, 14 Jun 2007 20:08:48 +0000 (20:08 +0000)]
* reverted global rename of function _dbus_username_from_current_process.
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.
Ralf Habacker [Thu, 14 Jun 2007 19:28:07 +0000 (19:28 +0000)]
* dbus/dbus-auth.c (handle_client_initial_response_cookie_sha1_mech): fixed usage of _dbus_append_desired_identity()
* dbus/dbus-sysdeps.h (_dbus_username_from_current_process): removed prototype
Ralf Habacker [Thu, 14 Jun 2007 18:34:28 +0000 (18:34 +0000)]
* dbus/dbus-sysdeps.c: moved global lock system_users from dbus-userdb.c
Ralf Habacker [Thu, 14 Jun 2007 18:25:22 +0000 (18:25 +0000)]
* global rename of function dbus_username_from_current_process to _dbus_append_desired_identity
Ralf Habacker [Thu, 14 Jun 2007 17:37:27 +0000 (17:37 +0000)]
* dbus/dbus-sysdeps-win.c: disabled DBusUserInfo related code
(_dbus_append_desired_identity,_dbus_windows_user_is_process_owner): new win32 functions as counterpart of unix related
(_dbus_send_credentials_socket,_dbus_read_credentials_socket): renamed from ..._unix_socket
(_dbus_send_credentials_unix_socket): removed obsolate function
* dbus/dbus-sysdeps-win-util.c: disabled DBusGroupInfo related code
(_dbus_verify_daemon_user,_dbus_change_to_daemon_user): new win32 functions as counterpart of unix related
Simon McVittie [Thu, 14 Jun 2007 09:50:17 +0000 (09:50 +0000)]
doc/dbus-specification.xml: say the protocol version is 1 instead of 0
(patch from Kristoffer Lundén, fd.o#10033)
Also remove the FIXME about removing protocol version from messages (as per
Havoc's comment on that bug)
Ralf Habacker [Thu, 14 Jun 2007 08:55:08 +0000 (08:55 +0000)]
* dbus/dbus-sysdeps-win.c (_dbus_pid_for_log,_dbus_flush_caches): new win32 functions as counterpart of unix related
Ralf Habacker [Thu, 14 Jun 2007 07:56:47 +0000 (07:56 +0000)]
* cmake/modules/FindKDEWIN.cmake, cmake/modules/FindKDEWIN_Packager.cmake cmake/modules/Win32Macros.cmake: new files from the kdewin32 project
* cmake/CMakeLists.txt: cleaned support for kdewin installer and win32 explorer wrapper
Havoc Pennington [Wed, 13 Jun 2007 21:15:33 +0000 (21:15 +0000)]
2007-06-13 Havoc Pennington <hp@redhat.com>
* dbus/dbus-message.c (dbus_message_iter_open_container): Fix
broken return_if_fail (kind of scary that test suite does not
cover this)
Havoc Pennington [Wed, 13 Jun 2007 20:52:58 +0000 (20:52 +0000)]
2007-06-13 Havoc Pennington <hp@redhat.com>
* 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
Havoc Pennington [Wed, 13 Jun 2007 16:30:43 +0000 (16:30 +0000)]
2007-06-13 Havoc Pennington <hp@redhat.com>
* configure.ac, bus/selinux.c, dbus/dbus-sysdeps-unix-util.c: add
libaudit support, no clue what this means really but now we have
it. Patches from Fedora package.
* bus/bus.c (bus_context_new): move selinux initialization after
changing to daemon user, patch from Fedora package
* dbus/dbus-transport.c (auth_via_unix_user_function): fix a typo
Havoc Pennington [Tue, 12 Jun 2007 19:39:47 +0000 (19:39 +0000)]
2007-06-12 Havoc Pennington <hp@redhat.com>
* dbus/dbus-message.c (dbus_message_iter_open_container): improve
the checks/warnings for contained_signature a bit
Havoc Pennington [Tue, 12 Jun 2007 18:53:32 +0000 (18:53 +0000)]
2007-06-12 Havoc Pennington <hp@redhat.com>
* dbus/dbus-marshal-recursive.c (write_or_verify_typecode):
improve the warning a bit if you write extra data into a message
Havoc Pennington [Tue, 12 Jun 2007 18:36:19 +0000 (18:36 +0000)]
2007-06-12 Havoc Pennington <hp@redhat.com>
* dbus/dbus-auth.c (sha1_handle_second_client_response)
(handle_server_data_anonymous_mech): add the process ID from
socket credentials, if available, even if not using EXTERNAL
* dbus/dbus-transport.c (auth_via_default_rules): support
allow_anonymous flag
* dbus/dbus-connection.c (dbus_connection_get_is_anonymous)
(dbus_connection_set_allow_anonymous): new API for controlling
anonymous access
Havoc Pennington [Sun, 10 Jun 2007 04:54:45 +0000 (04:54 +0000)]
2007-06-09 Havoc Pennington <hp@redhat.com>
* dbus/dbus-string.c (_dbus_string_pop_line): fix this not to
think an empty line is the end of the file.
Also, fix some whitespace.
* dbus/dbus-string-util.c: add more tests for
_dbus_string_pop_line() revealing that it thinks an empty line is
the end of the file, which broke dbus-auth-script.c so
it didn't really run the scripts
* dbus/dbus-auth.c: add ANONYMOUS mechanism
* dbus/dbus-auth-script.c (_dbus_auth_script_run): fix to detect
an empty/no-op auth script; add commands to check that we have or
don't have the expected credentials
Havoc Pennington [Sat, 9 Jun 2007 23:41:33 +0000 (23:41 +0000)]
2007-06-09 Havoc Pennington <hp@redhat.com>
* 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
Havoc Pennington [Sat, 9 Jun 2007 21:53:20 +0000 (21:53 +0000)]
2007-06-09 Havoc Pennington <hp@redhat.com>
* 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
Havoc Pennington [Thu, 7 Jun 2007 16:40:30 +0000 (16:40 +0000)]
2007-06-07 Havoc Pennington <hp@redhat.com>
* dbus/dbus-message.c: improve some docs related to reading values
from a message iter
Ralf Habacker [Sun, 3 Jun 2007 14:15:57 +0000 (14:15 +0000)]
* cmake: added cygwin compile support
Ralf Habacker [Fri, 1 Jun 2007 22:27:47 +0000 (22:27 +0000)]
* tools/dbus-launch-win.c: new file, replaces script wrapper on win32.
* cmake/dbus-launch.bat.cmake: removed obsolate file
Ralf Habacker [Fri, 1 Jun 2007 22:24:57 +0000 (22:24 +0000)]
* tools/dbus-launch-win.c: new file, replaces script wrapper on win32
Ralf Habacker [Fri, 1 Jun 2007 22:12:43 +0000 (22:12 +0000)]
* (_dbus_get_install_root): bug fix
Ralf Habacker [Fri, 1 Jun 2007 22:05:42 +0000 (22:05 +0000)]
* bus/main.c (main): uses _dbus_get_config_file_name() to detect session.conf location on win32.
* dbus-sysdeps-win.h (_dbus_get_config_file_name,_dbus_file_exists): new prototyp, undefined interface after including windows.h because t makes trouble when a paramater is named interface.
* dbus-sysdeps-win.c (_dbus_get_install_root,_dbus_get_config_file_name,_dbus_file_exists): new functions.
Ralf Habacker [Sun, 27 May 2007 11:38:28 +0000 (11:38 +0000)]
* bus/policy.c,dbus/dbus-internals.c: fixed inconsistant line endings as reported by Peter Kümmel.
John (J5) Palmieri [Fri, 25 May 2007 21:53:55 +0000 (21:53 +0000)]
* bump version number
John (J5) Palmieri [Fri, 25 May 2007 21:53:06 +0000 (21:53 +0000)]
* Released 1.1.0
John (J5) Palmieri [Fri, 25 May 2007 20:49:50 +0000 (20:49 +0000)]
* Split NEWS and ChangeLog into a .pre-1-0 file as per HACKING
We forgot to do this during the 1.0 release and it makes sense
now as we get ready to release the first 1.1.0 development tarball
John (J5) Palmieri [Fri, 25 May 2007 20:41:01 +0000 (20:41 +0000)]
* create directory test/data/valid-config-files/session.d so that
make check passes
John (J5) Palmieri [Fri, 25 May 2007 20:19:33 +0000 (20:19 +0000)]
* INSTALL: remove dependancies for bindings since they no longer
are a part of core