Lines Matching full:path
81 static void fire_watch_cb(void *opaque, const char *path, const char *token);
373 * READ <path>| <value|>
374 * WRITE <path>|<value|>
375 * Store and read the octet string <value> at <path>.
378 * MKDIR <path>|
379 * Ensures that the <path> exists, by necessary by creating
380 * it and any missing parents with empty values. If <path>
383 * RM <path>|
384 * Ensures that the <path> does not exist, by deleting
385 * it and all of its children. It is not an error if <path> does
386 * not exist, but it _is_ an error if <path>'s immediate parent
389 * DIRECTORY <path>| <child-leaf-name>|*
390 * Gives a list of the immediate children of <path>, as only the
392 * <path>/<child-leaf-name>.
394 * DIRECTORY_PART <path>|<offset> <gencnt>|<child-leaf-name>|*
396 * XENSTORE_PAYLOAD_MAX. Input are <path> and the byte offset into
403 * GET_PERMS <path>| <perm-as-string>|+
404 * SET_PERMS <path>|<perm-as-string>|+?
421 * When a <path> is modified (including path creation, removal,
423 * on the changed <path>. Changes made in transactions cause an
428 * The event's path matches the watch's <wpath> if it is an child
431 * <wpath> can be a <path> to watch or @<wspecial>. In the
443 * away, with <path> equal to <wpath>. Watches may be triggered
450 * on being sent a watch when a path which it _is_ able to read
461 * <epath> is the event's path, ie the actual path that was
464 * <wpath> (rather than the actual path which was removed). So
468 * the <epath> path will also be relative (with the same base,
504 const char *path = (const char *)req_data; in xs_read() local
515 trace_xenstore_read(tx_id, path); in xs_read()
516 err = xs_impl_read(s->impl, xen_domid, tx_id, path, data); in xs_read()
546 const char *path; in xs_write() local
554 path = (const char *)req_data; in xs_write()
568 trace_xenstore_write(tx_id, path); in xs_write()
569 err = xs_impl_write(s->impl, xen_domid, tx_id, path, data); in xs_write()
583 const char *path; in xs_mkdir() local
591 path = (const char *)req_data; in xs_mkdir()
593 trace_xenstore_mkdir(tx_id, path); in xs_mkdir()
594 err = xs_impl_read(s->impl, xen_domid, tx_id, path, data); in xs_mkdir()
596 err = xs_impl_write(s->impl, xen_domid, tx_id, path, data); in xs_mkdir()
655 const char *path; in xs_directory() local
663 path = (const char *)req_data; in xs_directory()
665 trace_xenstore_directory(tx_id, path); in xs_directory()
666 err = xs_impl_directory(s->impl, xen_domid, tx_id, path, NULL, &items); in xs_directory()
686 const char *offset_str, *path = (const char *)req_data; in xs_directory_part() local
730 trace_xenstore_directory_part(tx_id, path, offset); in xs_directory_part()
731 err = xs_impl_directory(s->impl, xen_domid, tx_id, path, &gencnt, &items); in xs_directory_part()
815 const char *path = (const char *)req_data; in xs_rm() local
823 trace_xenstore_rm(tx_id, path); in xs_rm()
824 err = xs_impl_rm(s->impl, xen_domid, tx_id, path); in xs_rm()
837 const char *path = (const char *)req_data; in xs_get_perms() local
847 trace_xenstore_get_perms(tx_id, path); in xs_get_perms()
848 err = xs_impl_get_perms(s->impl, xen_domid, tx_id, path, &perms); in xs_get_perms()
868 const char *path = (const char *)req_data; in xs_set_perms() local
900 * SET_PERMS <path>|<perm-as-string>|+? in xs_set_perms()
903 trace_xenstore_set_perms(tx_id, path); in xs_set_perms()
904 err = xs_impl_set_perms(s->impl, xen_domid, tx_id, path, perms); in xs_set_perms()
918 const char *token, *path = (const char *)req_data; in xs_watch() local
954 trace_xenstore_watch(path, token); in xs_watch()
955 err = xs_impl_watch(s->impl, xen_domid, path, token, fire_watch_cb, s); in xs_watch()
968 const char *token, *path = (const char *)req_data; in xs_unwatch() local
997 trace_xenstore_unwatch(path, token); in xs_unwatch()
998 err = xs_impl_unwatch(s->impl, xen_domid, path, token, fire_watch_cb, s); in xs_unwatch()
1273 static void deliver_watch(XenXenstoreState *s, const char *path, in deliver_watch() argument
1282 trace_xenstore_watch_event(path, token); in deliver_watch()
1289 len = strlen(path); in deliver_watch()
1294 memcpy(&rsp_data[rsp->len], path, len); in deliver_watch()
1318 char *path; member
1325 g_free(ev->path); in free_watch_event()
1331 static void queue_watch(XenXenstoreState *s, const char *path, in queue_watch() argument
1336 ev->path = g_strdup(path); in queue_watch()
1342 static void fire_watch_cb(void *opaque, const char *path, const char *token) in fire_watch_cb() argument
1359 queue_watch(s, path, token); in fire_watch_cb()
1361 deliver_watch(s, path, token); in fire_watch_cb()
1376 deliver_watch(s, ev->path, ev->token); in process_watch_events()
1509 char *path; member
1521 const char *path, unsigned int *num) in xs_be_directory() argument
1528 err = xs_impl_directory(h->impl, DOMID_QEMU, t, path, NULL, &items); in xs_be_directory()
1545 const char *path, unsigned int *len) in xs_be_read() argument
1551 err = xs_impl_read(h->impl, DOMID_QEMU, t, path, data); in xs_be_read()
1567 const char *path, const void *data, unsigned int len) in xs_be_write() argument
1573 err = xs_impl_write(h->impl, DOMID_QEMU, t, path, gdata); in xs_be_write()
1584 unsigned int perms, const char *path) in xs_be_create() argument
1591 err = xs_impl_read(h->impl, DOMID_QEMU, t, path, data); in xs_be_create()
1593 err = xs_impl_write(h->impl, DOMID_QEMU, t, path, data); in xs_be_create()
1605 err = xs_impl_set_perms(h->impl, DOMID_QEMU, t, path, perms_list); in xs_be_create()
1615 const char *path) in xs_be_destroy() argument
1617 int err = xs_impl_rm(h->impl, DOMID_QEMU, t, path); in xs_be_destroy()
1636 w->fn(w->opaque, ev->path); in be_watch_bh()
1644 static void xs_be_watch_cb(void *opaque, const char *path, const char *token) in xs_be_watch_cb() argument
1650 ev->path = g_strdup(path); in xs_be_watch_cb()
1657 const char *path, xs_watch_fn fn, in xs_be_watch() argument
1667 err = xs_impl_watch(h->impl, DOMID_QEMU, path, NULL, xs_be_watch_cb, w); in xs_be_watch()
1674 w->path = g_strdup(path); in xs_be_watch()
1681 xs_impl_unwatch(h->impl, DOMID_QEMU, w->path, NULL, xs_be_watch_cb, w); in xs_be_unwatch()
1685 g_free(w->path); in xs_be_unwatch()