@@ -3,7 +3,6 @@ package rest
33import (
44 "encoding/json"
55 "errors"
6- "io"
76 "net/http"
87
98 "github.com/lxc/incus-os/incus-osd/api"
@@ -19,7 +18,7 @@ func (s *Server) apiSystemStorage(w http.ResponseWriter, r *http.Request) {
1918 case http .MethodGet :
2019 ret , err := storage .GetStorageInfo (r .Context ())
2120 if err != nil {
22- _ = response .BadRequest (err ).Render (w )
21+ _ = response .InternalError (err ).Render (w )
2322
2423 return
2524 }
@@ -34,16 +33,9 @@ func (s *Server) apiSystemStorage(w http.ResponseWriter, r *http.Request) {
3433 return
3534 }
3635
37- b , err := io .ReadAll (r .Body )
38- if err != nil {
39- _ = response .BadRequest (err ).Render (w )
40-
41- return
42- }
43-
44- storageStruct := api.SystemStorage {}
36+ storageStruct := & api.SystemStorage {}
4537
46- err = json .Unmarshal ( b , & storageStruct )
38+ err : = json .NewDecoder ( r . Body ). Decode ( storageStruct )
4739 if err != nil {
4840 _ = response .BadRequest (err ).Render (w )
4941
@@ -65,7 +57,7 @@ func (s *Server) apiSystemStorage(w http.ResponseWriter, r *http.Request) {
6557 }
6658
6759 if err != nil {
68- _ = response .BadRequest (err ).Render (w )
60+ _ = response .InternalError (err ).Render (w )
6961
7062 return
7163 }
@@ -95,20 +87,13 @@ func (*Server) apiSystemStorageDeletePool(w http.ResponseWriter, r *http.Request
9587 return
9688 }
9789
98- b , err := io .ReadAll (r .Body )
99- if err != nil {
100- _ = response .BadRequest (err ).Render (w )
101-
102- return
103- }
104-
10590 type deleteStruct struct {
10691 Name string `json:"name"`
10792 }
10893
109- config := deleteStruct {}
94+ config := & deleteStruct {}
11095
111- err = json .Unmarshal ( b , & config )
96+ err : = json .NewDecoder ( r . Body ). Decode ( config )
11297 if err != nil {
11398 _ = response .BadRequest (err ).Render (w )
11499
@@ -124,7 +109,7 @@ func (*Server) apiSystemStorageDeletePool(w http.ResponseWriter, r *http.Request
124109 // Delete the pool.
125110 err = zfs .DestroyZpool (r .Context (), config .Name )
126111 if err != nil {
127- _ = response .BadRequest (err ).Render (w )
112+ _ = response .InternalError (err ).Render (w )
128113
129114 return
130115 }
@@ -148,16 +133,9 @@ func (*Server) apiSystemStorageWipeDrive(w http.ResponseWriter, r *http.Request)
148133 return
149134 }
150135
151- b , err := io .ReadAll (r .Body )
152- if err != nil {
153- _ = response .BadRequest (err ).Render (w )
136+ wipeStruct := & api.SystemStorageWipe {}
154137
155- return
156- }
157-
158- wipeStruct := api.SystemStorageWipe {}
159-
160- err = json .Unmarshal (b , & wipeStruct )
138+ err := json .NewDecoder (r .Body ).Decode (wipeStruct )
161139 if err != nil {
162140 _ = response .BadRequest (err ).Render (w )
163141
@@ -172,7 +150,7 @@ func (*Server) apiSystemStorageWipeDrive(w http.ResponseWriter, r *http.Request)
172150
173151 err = storage .WipeDrive (r .Context (), wipeStruct .ID )
174152 if err != nil {
175- _ = response .BadRequest (err ).Render (w )
153+ _ = response .InternalError (err ).Render (w )
176154
177155 return
178156 }
@@ -196,16 +174,9 @@ func (*Server) apiSystemStorageImportEncryptionKey(w http.ResponseWriter, r *htt
196174 return
197175 }
198176
199- b , err := io .ReadAll (r .Body )
200- if err != nil {
201- _ = response .BadRequest (err ).Render (w )
177+ poolStruct := & api.SystemStoragePoolKey {}
202178
203- return
204- }
205-
206- poolStruct := api.SystemStoragePoolKey {}
207-
208- err = json .Unmarshal (b , & poolStruct )
179+ err := json .NewDecoder (r .Body ).Decode (poolStruct )
209180 if err != nil {
210181 _ = response .BadRequest (err ).Render (w )
211182
@@ -226,7 +197,7 @@ func (*Server) apiSystemStorageImportEncryptionKey(w http.ResponseWriter, r *htt
226197
227198 err = storage .SetEncryptionKey (r .Context (), poolStruct .Name , poolStruct .EncryptionKey )
228199 if err != nil {
229- _ = response .BadRequest (err ).Render (w )
200+ _ = response .InternalError (err ).Render (w )
230201
231202 return
232203 }
0 commit comments