Lines Matching defs:resource
199 ret = dgettext(TEXT_DOMAIN, "no such resource");
202 ret = dgettext(TEXT_DOMAIN, "resource name required");
700 else if (xmlStrcmp(node->name, (xmlChar *)"resource") == 0)
1339 * resource names comes into being.
2197 * the case of "resource", enforce a no duplicates in a group rule. If
2206 sa_share_t resource;
2213 * restrictions on them. Initially, only "resource" has
2215 * of a resource name may exist within a group.
2218 if (strcmp(tag, "resource") == 0) {
2219 resource = sa_get_resource(group, value);
2220 if (resource != share && resource != NULL)
2621 * Account for resource names being slightly
2642 * resource. While this could be a
2661 * the share if this is a resource.
2838 sa_resource_t resource = group;
2839 sa_share_t share = sa_get_resource_parent(resource);
3101 * Check for share vs. resource since they need slightly
3664 * sa_get_share_resource(share, resource)
3666 * Get the named resource from the share, if it exists. If resource is
3667 * NULL, get the first resource.
3671 sa_get_share_resource(sa_share_t share, char *resource)
3679 if (xmlStrcmp(node->name, (xmlChar *)"resource") == 0) {
3680 if (resource == NULL) {
3683 * resource node and not a names
3684 * resource.
3693 (xmlChar *)resource) == 0) {
3706 * sa_get_next_resource(resource)
3713 sa_get_next_resource(sa_resource_t resource)
3717 if (resource != NULL) {
3718 for (node = ((xmlNodePtr)resource)->next; node != NULL;
3720 if (xmlStrcmp(node->name, (xmlChar *)"resource") == 0)
3730 * get the next resource index number (one greater then current largest)
3736 sa_resource_t resource;
3740 for (resource = sa_get_share_resource(share, NULL);
3741 resource != NULL;
3742 resource = sa_get_next_resource(resource)) {
3743 id = get_node_attr((void *)resource, "id");
3757 * sa_add_resource(share, resource, persist, &err)
3759 * Adds a new resource name associated with share. The resource name
3764 sa_add_resource(sa_share_t share, char *resource, int persist, int *error)
3776 res = sa_find_resource(handle, resource);
3782 (xmlChar *)"resource", NULL);
3785 (xmlChar *)resource);
3799 /* ZFS doesn't use resource names */
3824 * sa_remove_resource(resource)
3826 * Remove the resource name from the share (and the system)
3830 sa_remove_resource(sa_resource_t resource)
3839 share = sa_get_resource_parent(resource);
3850 /* Disable the resource for all protocols. */
3851 (void) sa_disable_resource(resource, NULL);
3853 /* Remove any optionsets from the resource. */
3854 for (opt = sa_get_optionset(resource, NULL);
3860 xmlUnlinkNode((xmlNode *)resource);
3861 xmlFreeNode((xmlNode *)resource);
3882 * proto_rename_resource(handle, group, resource, newname)
3885 * of a resource name change prior to a config repository update.
3889 sa_resource_t resource, char *newname)
3901 err = sa_proto_rename_resource(handle, type, resource,
3912 * sa_rename_resource(resource, newname)
3914 * Rename the resource to the new name, if it is unique.
3918 sa_rename_resource(sa_resource_t resource, char *newname)
3926 share = sa_get_resource_parent(resource);
3947 ret = proto_rename_resource(handle, group, resource, newname);
3948 set_node_attr(resource, "name", newname);
3965 * sa_get_resource_attr(resource, tag)
3967 * Get the named attribute of the resource. "name" and "id" are
3972 sa_get_resource_attr(sa_resource_t resource, char *tag)
3974 return (get_node_attr((void *)resource, tag));
3978 * sa_set_resource_attr(resource, tag, value)
3980 * Get the named attribute of the resource. "name" and "id" are
3986 sa_set_resource_attr(sa_resource_t resource, char *tag, char *value)
3988 set_node_attr((void *)resource, tag, value);
3995 * Returns the share associated with the resource.
3999 sa_get_resource_parent(sa_resource_t resource)
4003 if (resource != NULL)
4004 share = (sa_share_t)((xmlNodePtr)resource)->parent;
4011 * Find the resource within the group.
4018 sa_resource_t resource = NULL;
4023 share != NULL && resource == NULL;
4025 for (resource = sa_get_share_resource(share, NULL);
4026 resource != NULL;
4027 resource = sa_get_next_resource(resource)) {
4028 name = sa_get_resource_attr(resource, "name");
4039 return (resource);
4045 * Find the named resource in the system.
4053 sa_resource_t resource = NULL;
4057 * resource name in them.
4066 zgroup != NULL && resource == NULL;
4068 resource = find_resource(zgroup, name);
4071 resource = find_resource(group, name);
4073 if (resource != NULL)
4076 return (resource);
4080 * sa_get_resource(group, resource)
4083 * resource name matching the one specified.
4090 sa_get_resource(sa_group_t group, char *resource)
4095 if (resource != NULL) {
4099 res = sa_get_share_resource(share, resource);
4176 sa_resource_t resource = NULL;
4190 resource = (sa_resource_t)object;
4191 share = sa_get_resource_parent(resource);
4199 if (resource != NULL)
4200 ret = get_protocol_list(options, resource);
4224 sa_enable_resource(sa_resource_t resource, char *protocol)
4229 ret = sa_proto_share_resource(protocol, resource);
4237 protoset = sa_get_active_protocols(resource);
4248 err = sa_proto_share_resource(proto, resource);
4256 (void) sa_set_resource_attr(resource, "shared", NULL);
4262 * sa_disable_resource(resource, protocol)
4266 * protocol doesn't implement disable at the resource level, we
4270 sa_disable_resource(sa_resource_t resource, char *protocol)
4275 ret = sa_proto_unshare_resource(protocol, resource);
4280 * resource. That implies that resource names are
4284 parent = sa_get_resource_parent(resource);
4297 protoset = sa_get_active_protocols(resource);
4308 err = sa_proto_unshare_resource(proto, resource);
4311 parent = sa_get_resource_parent(resource);
4324 (void) sa_set_resource_attr(resource, "shared", NULL);
4330 * sa_set_resource_description(resource, content)
4336 sa_set_resource_description(sa_resource_t resource, char *content)
4343 for (node = ((xmlNodePtr)resource)->children;
4354 node = _sa_set_share_description(resource, content);
4364 share = sa_get_resource_parent(resource);
4387 sa_get_resource_description(sa_resource_t resource)
4392 for (node = ((xmlNodePtr)resource)->children; node != NULL;