summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add argument path matching support. Bug #11066.Ryan Lortie2007-09-205-37/+152
| | | | | | | | | | | | | | | | | | 2007-09-20 Ryan Lortie <desrt@desrt.ca> * dbus/signals.c (struct DBusMatchRule, bus_match_rule_new, bus_match_rule_set_arg, bus_match_rule_parse_arg_match, match_rule_matches): Add support for parsing and matching on arg0path='/some/path' type rules. * dbus/signals.h (bus_match_rule_set_arg): change to take const DBusString instead of const char * for the string to match against. * dbus/dbus-bus.c: add a quick note to dbus_bus_add_match documentation about the path matching. * doc/dbus-specification.xml: add a more detailed description of the changes here.
* Add support for compacting DBusStrings to release wasted memory.Ryan Lortie2007-09-206-19/+130
| | | | | | | | | | | | | | | | | 2007-09-19 Ryan Lortie <desrt@desrt.ca> * dbus/dbus-string.[ch] (compact, _dbus_string_compact, _dbus_string_lock): new compact function to free up allocated memory that is no longer used. * dbus/dbus-message.c (load_message): call _dbus_string_compact on the message loader buffer. * dbus/dbus-transport-socket.c (do_reading, do_writing): call _dbus_string_compact on the incoming/outgoing "encoded" buffers. * dbus/dbus-string-util.c (_dbus_string_test): add a few tests for string compacting.
* HACKING: add more explicit git branch/tag instructionsRyan Lortie2007-09-132-7/+13
|
* migrate from cvs to git (cvs2svn -> git-svnimport).Ryan Lortie2007-09-1313-45/+27
| | | | | | | | | | | 2007-09-13 Ryan Lortie <desrt@desrt.ca> migrate from cvs to git (cvs2svn -> git-svnimport). * HACKING: update release/branch/tag instructions * */.cvsignore: rename to .gitignore also, clean up tags and branch names to conform to HACKING
* 2007-08-17 William Jon McCann <mccann@jhu.edu>Havoc Pennington2007-08-172-0/+6
| | | | * update-dbus-docs.sh: upload DTD to server
* 2007-08-17 Havoc Pennington <hp@redhat.com>Havoc Pennington2007-08-176-135/+160
| | | | | | | | | | | | | | | * 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.
* 2007-08-03 Havoc Pennington <hp@redhat.com>Havoc Pennington2007-08-035-2/+175
| | | | | | | | | | | | * configure.in: add major/minor/micro version number AC_SUBST * dbus/dbus-arch-deps.h.in (DBUS_MAJOR_VERSION, DBUS_MINOR_VERSION, DBUS_MICRO_VERSION, DBUS_VERSION_STRING, DBUS_VERSION): collection of macros to get version of library we are compiled against. * dbus/dbus-misc.c (dbus_get_version): new function, to get version of library we are linked against at runtime.
* 2007-07-30 Havoc Pennington <hp@redhat.com>Havoc Pennington2007-07-302-4/+18
| | | | | | | * bus/activation-helper.c (check_bus_name): don't use _dbus_check_valid_bus_name() which is only around with --enable-checks, instead use _dbus_validate_bus_name(). Bug #11766 from Diego <diego@pemas.net>
* 2007-07-27 Havoc Pennington <hp@redhat.com>Havoc Pennington2007-07-272-1/+5
| | | | * configure.in: post-release version bump
* 2007-07-27 Havoc Pennington <hp@redhat.com>dbus-1.1.2Havoc Pennington2007-07-275-3/+40
| | | | * release 1.1.2
* 2007-07-26 Havoc Pennington <hp@redhat.com>Havoc Pennington2007-07-268-36/+65
| | | | | | | | | | | | | | | * bus/config-parser-trivial.c (check_return_values): disable a test that hardcoded the bus user's name * bus/dispatch.c (bus_dispatch_test_conf): remove the "if (!use_launcher)" around the tests, they were only failing because we didn't pass through all the expected errors from the helper. * bus/activation-exit-codes.h (BUS_SPAWN_EXIT_CODE_CHILD_SIGNALED): add a code for child segfaulting (BUS_SPAWN_EXIT_CODE_GENERIC_FAILURE): make "1" be a generic failure code, so if a third party launch helper were written it could just always return 1 on failure.
* fix whitespaceHavoc Pennington2007-07-261-121/+121
|
* Switch over to using getaddrinfo for TCP clients & servers to enable IPv6Daniel P. Berrange2007-07-2510-242/+465
|
* 2007-07-24 Havoc Pennington <hp@redhat.com>Havoc Pennington2007-07-2410-40/+132
| | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-243-1/+115
| | | | | | | | * 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.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-242-3/+14
| | | | | | | | | | | | * 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.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-2418-7/+129
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-242-16/+534
| | | | | | | | | | | * 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.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-242-2/+61
| | | | | * bus/activation.c: (bus_activation_activate_service): If the bus uses a service-laucher, then use the setuid laucher.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-242-2/+24
| | | | | * configure.in: Add the needed library exports for the new laucher.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-242-0/+32
| | | | | | * configure.in: Check for -Wl,--gc-sections so we can really reduce the size of the setuid binary.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-242-0/+60
| | | | | | * bus/activation.c: (handle_activation_exit_error), (babysitter_watch_callback): Map the child exit status integer to a proper dbus error.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-243-3/+28
| | | | | | | | * 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.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-242-1/+41
| | | | | | | * 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.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-243-4/+14
| | | | | | | * 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.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-242-0/+7
| | | | | * bus/.cvsignore: Add the autogenerated binary files.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-243-3/+90
| | | | | | | * 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.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-242-0/+152
| | | | | | * 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.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-244-0/+693
| | | | | | | | | | | | | | * 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.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-244-96/+288
| | | | | | | | | | | | | | | * 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.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-242-0/+11
| | | | | * bus/system.conf.in: Add new servicehelper fields to the default system.conf file.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-243-0/+782
| | | | | | | | | | | | | | | | | | * 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.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-243-0/+239
| | | | | | | | | | | * 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.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-243-1/+79
| | | | | | | | | | | * 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.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-242-0/+33
| | | | | | * bus/dbus-daemon.1.in: Add standard_system_servicedirs and servicehelper into the man file and explain what each does.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-242-0/+8
| | | | | | * doc/busconfig.dtd: Add servicehelper into the dtd, it will soon be a valid part of the config file.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-243-0/+38
| | | | | | | | | | | * 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.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-242-0/+46
| | | | | | | | * 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.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-242-0/+19
| | | | | * dbus/dbus-protocol.h: Add new error names needed for the launch helper.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-243-0/+19
| | | | | | * dbus/dbus-sysdeps.c: (_dbus_clearenv): * dbus/dbus-sysdeps.h: Add a wrapper for clearenv.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-242-0/+87
| | | | | | | * 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.
* * cmake/modules/FindKDEWIN.cmake: fixed commentRalf Habacker2007-07-193-85/+6
| | | | * cmake/modules/FindKDEWIN32.cmake: removed obsolate cmake module
* 2007-07-18 Havoc Pennington <hp@redhat.com>Havoc Pennington2007-07-182-4/+11
| | | | | | | * 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.
* 2007-07-13 Havoc Pennington <hp@redhat.com>Havoc Pennington2007-07-14179-179/+183
| | | | * Add indent-tabs-mode: nil to all file headers.
* 2007-07-12 Havoc Pennington <hp@redhat.com>Havoc Pennington2007-07-123-13/+16
| | | | | | | * 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.
* 2007-07-10 Havoc Pennington <hp@redhat.com>Havoc Pennington2007-07-102-3/+14
| | | | | | | * 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 Habacker2007-07-095-2082/+961
| | | | dbus/dbus-sysdeps-win.c,dbus-sysdeps-win.h,dbus-sysdeps-win-util.c,dbus-sysdeps-spawn-win.c: synced with windbus sources
* * dbus/dbus-sysdeps-win.cRalf Habacker2007-07-072-48/+23
| | | | | | (_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
* * cmake/modules/FindKDEWIN.cmake: search in <program files dir>\win32libs ↵Ralf Habacker2007-07-042-1/+6
| | | | for windows supplementary packages too
* * cmake/dbus/CMakeLists.txt: handle userdb as unix fileRalf Habacker2007-06-302-4/+10
|