Lines Matching refs:path
95 * Object paths that represent all objects under the path:
96 * /org/object/path/~* (without tilda)
98 static bool sbus_opath_is_subtree(const char *path)
102 len = strlen(path);
108 return path[len - 2] == '/' && path[len - 1] == '*';
112 * If the path represents a subtree object path, this function will
130 /* replace / only if it is not a root path (only slash) */
139 const char *path)
146 subtree = sbus_opath_get_base_path(mem_ctx, path);
160 /* this object path is invalid since it cannot end with slash */
161 DEBUG(SSSDBG_CRIT_FAILURE, "Invalid object path '%s'?\n", path);
166 /* because object path cannot end with / there is enough space for
175 * The following path related functions are based on similar code in
186 /* The path must be valid */
320 char *path = NULL;
324 DEBUG(SSSDBG_OP_FAILURE, "Wrong object path base!\n");
328 path = talloc_strdup(mem_ctx, base);
329 if (path == NULL) return NULL;
339 path = talloc_asprintf_append(path, "/%s", safe_part);
341 if (path == NULL) {
349 return path;
353 talloc_free(path);
365 const char *path;
377 /* Strip prefix from the path. */
379 path = sbus_opath_strip_prefix(object_path, prefix);
380 if (path == NULL) {
385 path = object_path;
389 split_on_separator(tmp_ctx, path, '/', true, true, &decomposed, &len);
487 char *path;
490 path = sbus_opath_get_base_path(NULL, item->key.str);
492 dbus_connection_unregister_object_path(conn->dbus.conn, path);
525 DEBUG(SSSDBG_TRACE_FUNC, "Registering interface %s with path %s\n",
548 /* This object path has already some interface registered. We will
612 * in the path hierarchy and try to lookup the parent node. This continues
656 /* we will not free lookup path since it is freed with tmp_ctx
667 * Acquire list of all interfaces that are supported on given object path.
721 /* we will not free lookup path since it is freed with tmp_ctx
849 intf->path = talloc_strdup(intf, object_path);
850 if (intf->path == NULL) {
851 DEBUG(SSSDBG_FATAL_FAILURE, "Cannot duplicate object path.\n");
868 const char *path)
876 DEBUG(SSSDBG_TRACE_FUNC, "Registering object path %s with D-Bus "
877 "connection\n", path);
879 if (sbus_opath_is_subtree(path)) {
880 reg_path = sbus_opath_get_base_path(conn, path);
885 /* D-Bus does not allow to have both object path and fallback
898 dbret = dbus_connection_try_register_object_path(conn->dbus.conn, path,
910 DEBUG(SSSDBG_FATAL_FAILURE, "Unable to register object path "
911 "%s with D-Bus connection.\n", path);
945 /* this object path is already registered */
957 /* register standard interfaces with this object path as well */
981 for (i = 0; map[i].path != NULL; i++) {
982 ret = sbus_conn_register_iface(conn, map[i].vtable, map[i].path, pvt);
993 const char *path,
999 ret = sbus_nodes_hash_add(conn->nodes_fns, path, nodes_fn, data);
1002 "%s. Introspection may not work correctly.\n", path);
1050 const char *path;
1058 path = dbus_message_get_path(message);
1061 DEBUG(SSSDBG_TRACE_INTERNAL, "Received SBUS method %s.%s on path %s\n",
1062 iface_name, method_name, path);
1066 path, iface_name);
1098 "on path %s\n", iface_name, method_name, path);