summaryrefslogtreecommitdiff
path: root/src/dbus-path.c
AgeCommit message (Collapse)Author
2012-01-16dbus: more efficient implementation of propertiesMichal Schmidt
The way the various properties[] arrays are initialized is inefficient: - only the .data members change at runtime, yet the whole arrays of properties with all the fields are constructed on the stack one by one by the code. - there's duplication, eg. the properties of "org.freedesktop.systemd1.Unit" are repeated in several unit types. Fix it by moving the information about properties into static const sections. Instead of storing the .data directly in the property, store a constant offset from a run-time base. The small arrays of struct BusBoundProperties bind together the constant information with the right runtime information (the base pointer). On my system the code shrinks by 60 KB, data increases by 10 KB.
2012-01-16unit: remove union UnitMichal Schmidt
Now that objects of all unit types are allocated the exact amount of memory they need, the Unit union has lost its purpose. Remove it. "Unit" is a more natural name for the base unit class than "Meta", so rename Meta to Unit. Access to members of the base class gets simplified.
2012-01-06unit: properly update references to units which are mergedLennart Poettering
When we merge units that some kind of object points to, those pointers might become invalidated, and needs to be updated. Introduce a UnitRef struct which links up all the unit references, to ensure corrected references. At the same time, drop configured_sockets in the Service object, and replace it by proper UNIT_TRIGGERS resp. UNIT_TRIGGERED_BY dependencies, which allow us to simplify a lot of code.
2011-04-16dbus: split out object management code into dbus-common, and simplify itLennart Poettering
2011-04-10path: optionally, create watched directories in .path unitsLennart Poettering
2011-03-09dbus: properly generate UnknownInterface, UnknownProperty and ↵Lennart Poettering
PropertyReadOnly errors
2011-02-21dbus: don't rely that timer/path units have an initialized unit fieldLennart Poettering
2010-11-23build-sys: allow cross-compilationThierry Reding
When cross-compiling systemd, the introspection XML files fail to be generated because the systemd host binary is not executable. This patch works around this by putting the introspection XML data into separate ELF sections and extracting them from the binary when generating the XML files. The extracted XML data is passed through the strings utility in order to strip the trailing NUL character. A small AWK script is used to prepend the doctype and add the opening and closing node tags respectively. Finally, the C preprocessor is used to substitute the correct doctype information from the D-Bus header files.
2010-08-20dbus: follow standardized fdo PropertiesChanged signal specLennart Poettering
2010-08-14emacs: make sure nobody accidently adds tabs to our sourcesLennart Poettering
2010-07-04dbus: complete coverage for path unitsLennart Poettering
2010-06-19dbus: to make sure that systemd stays controllable during early bootup, ↵Lennart Poettering
register our services on our own micro usb server in addition to the bus
2010-05-24path: add .path unit type for monitoring filesLennart Poettering