Add rules support
diff --git a/openstack/compute/v2/extensions/secgroups/results.go b/openstack/compute/v2/extensions/secgroups/results.go
index 6418970..c814048 100644
--- a/openstack/compute/v2/extensions/secgroups/results.go
+++ b/openstack/compute/v2/extensions/secgroups/results.go
@@ -84,3 +84,21 @@
return &response.SecurityGroup, err
}
+
+type AddRuleResult struct {
+ gophercloud.Result
+}
+
+func (r AddRuleResult) Extract() (*Rule, error) {
+ if r.Err != nil {
+ return nil, r.Err
+ }
+
+ var response struct {
+ Rule Rule `mapstructure:"security_group_rule"`
+ }
+
+ err := mapstructure.Decode(r.Body, &response)
+
+ return &response.Rule, err
+}