04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina/* The following declarations are auto-generated from nss_iface.xml */
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina/* ------------------------------------------------------------------------
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina * DBus Constants
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina * Various constants of interface and method names mostly for use by clients
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina/* constants for org.freedesktop.sssd.nss.MemoryCache */
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina#define IFACE_NSS_MEMORYCACHE "org.freedesktop.sssd.nss.MemoryCache"
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina#define IFACE_NSS_MEMORYCACHE_UPDATEINITGROUPS "UpdateInitgroups"
c3a225d4d735d3a01883125592dda7a030a64e00Jakub Hrozek#define IFACE_NSS_MEMORYCACHE_INVALIDATEALLUSERS "InvalidateAllUsers"
c3a225d4d735d3a01883125592dda7a030a64e00Jakub Hrozek#define IFACE_NSS_MEMORYCACHE_INVALIDATEALLGROUPS "InvalidateAllGroups"
f2047f6c5b56d6759bd8e6d504f572a593476c65Pavel Březina#define IFACE_NSS_MEMORYCACHE_INVALIDATEALLINITGROUPS "InvalidateAllInitgroups"
851d31264c826d7e1bca38bb6d49e66b446707e7Fabiano Fidêncio#define IFACE_NSS_MEMORYCACHE_INVALIDATEGROUPBYID "InvalidateGroupById"
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina/* ------------------------------------------------------------------------
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina * DBus handlers
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina * These structures are filled in by implementors of the different
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina * dbus interfaces to handle method calls.
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina * Handler functions of type sbus_msg_handler_fn accept raw messages,
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina * other handlers are typed appropriately. If a handler that is
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina * set to NULL is invoked it will result in a
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina * org.freedesktop.DBus.Error.NotSupported error for the caller.
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina * Handlers have a matching xxx_finish() function (unless the method has
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina * accepts raw messages). These finish functions the
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina * sbus_request_return_and_finish() with the appropriate arguments to
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina * construct a valid reply. Once a finish function has been called, the
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina * @dbus_req it was called with is freed and no longer valid.
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina/* vtable for org.freedesktop.sssd.nss.MemoryCache */
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina struct sbus_vtable vtable; /* derive from sbus_vtable */
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina int (*UpdateInitgroups)(struct sbus_request *req, void *data, const char *arg_user, const char *arg_domain, uint32_t arg_groups[], int len_groups);
c3a225d4d735d3a01883125592dda7a030a64e00Jakub Hrozek int (*InvalidateAllUsers)(struct sbus_request *req, void *data);
c3a225d4d735d3a01883125592dda7a030a64e00Jakub Hrozek int (*InvalidateAllGroups)(struct sbus_request *req, void *data);
f2047f6c5b56d6759bd8e6d504f572a593476c65Pavel Březina int (*InvalidateAllInitgroups)(struct sbus_request *req, void *data);
851d31264c826d7e1bca38bb6d49e66b446707e7Fabiano Fidêncio int (*InvalidateGroupById)(struct sbus_request *req, void *data, uint32_t arg_gid);
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina/* finish function for UpdateInitgroups */
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březinaint iface_nss_memorycache_UpdateInitgroups_finish(struct sbus_request *req);
c3a225d4d735d3a01883125592dda7a030a64e00Jakub Hrozek/* finish function for InvalidateAllUsers */
c3a225d4d735d3a01883125592dda7a030a64e00Jakub Hrozekint iface_nss_memorycache_InvalidateAllUsers_finish(struct sbus_request *req);
c3a225d4d735d3a01883125592dda7a030a64e00Jakub Hrozek/* finish function for InvalidateAllGroups */
c3a225d4d735d3a01883125592dda7a030a64e00Jakub Hrozekint iface_nss_memorycache_InvalidateAllGroups_finish(struct sbus_request *req);
f2047f6c5b56d6759bd8e6d504f572a593476c65Pavel Březina/* finish function for InvalidateAllInitgroups */
f2047f6c5b56d6759bd8e6d504f572a593476c65Pavel Březinaint iface_nss_memorycache_InvalidateAllInitgroups_finish(struct sbus_request *req);
851d31264c826d7e1bca38bb6d49e66b446707e7Fabiano Fidêncio/* finish function for InvalidateGroupById */
851d31264c826d7e1bca38bb6d49e66b446707e7Fabiano Fidêncioint iface_nss_memorycache_InvalidateGroupById_finish(struct sbus_request *req);
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina/* ------------------------------------------------------------------------
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina * DBus Interface Metadata
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina * These structure definitions are filled in with the information about
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina * the interfaces, methods, properties and so on.
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina * The actual definitions are found in the accompanying C file next
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina * to this header.
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina/* interface info for org.freedesktop.sssd.nss.MemoryCache */
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březinaextern const struct sbus_interface_meta iface_nss_memorycache_meta;
04e870d99e72aa3160bdb6ab05d986fb4005c3edPavel Březina#endif /* __NSS_IFACE_XML__ */