int on_unit_properties_changed(sd_bus_message *m, void *userdata, sd_bus_error *ret_error) {
int rc = 1;
+ /* const char* path; */
+ /* path = NULL; */
+ uint8_t type;
+
fprintf(stdout,"'");
fflush(stdout);
- /* const char* path; */
+ rc = sd_bus_message_get_type(m, &type);
+ if (rc < 0) {
+ fprintf(stderr, "Oops!\n");
+ rc = rc;
+ goto finish;
+ }
- /* path = NULL; */
+ fprintf(stdout, "Received a message!\n");
+ fprintf(stdout, " Type: %s\n",
+ type == SD_BUS_MESSAGE_METHOD_CALL ? "method call" :
+ (type == SD_BUS_MESSAGE_METHOD_RETURN ? "method return" :
+ (type == SD_BUS_MESSAGE_METHOD_ERROR ? "method error" :
+ (type == SD_BUS_MESSAGE_SIGNAL ? "signal" : "INVALID"))));
+ fprintf(stdout, " Interface: %s\n", sd_bus_message_get_interface(m));
+ fprintf(stdout, " Member: %s\n", sd_bus_message_get_member(m));
+ fprintf(stdout, " Path: %s\n", sd_bus_message_get_path(m));
+
+finish:
return rc;
}
int main(int ac, char* av[])
{
sd_event* loop;
- sd_event_source* source;
+ /* sd_event_source* source; */
sd_bus_error error = SD_BUS_ERROR_NULL;
sd_bus *bus = NULL;
/* const char *path; */