Better handle nil responses in logical unwrap

This commit is contained in:
Jeff Mitchell
2016-12-01 16:38:08 -05:00
parent 1d1af35c8c
commit 77d804e483

View File

@@ -135,13 +135,17 @@ func (c *Logical) Unwrap(wrappingToken string) (*Secret, error) {
}
resp, err := c.c.RawRequest(r)
if resp != nil {
defer resp.Body.Close()
}
if err != nil {
if resp != nil && resp.StatusCode != 404 {
return nil, err
}
}
if resp == nil {
return nil, nil
}
defer resp.Body.Close()
if err != nil && resp.StatusCode != 404 {
return nil, err
}
switch resp.StatusCode {
case http.StatusOK: // New method is supported