@@ -180,8 +180,18 @@ func chmodHandler(data []byte, resp RPCResponse) {
180
180
}
181
181
182
182
func chownHandler (data []byte , resp RPCResponse ) {
183
+
184
+ // variable definitions so goto won't break
185
+ var uid_str string
186
+ var gid_str string
187
+ var gid uint64
188
+ var uid uint64
189
+ var err error
190
+ var usr * user.User
191
+ var grp * user.Group
192
+
183
193
chownReq := & sliverpb.ChownReq {}
184
- err : = proto .Unmarshal (data , chownReq )
194
+ err = proto .Unmarshal (data , chownReq )
185
195
if err != nil {
186
196
// {{if .Config.Debug}}
187
197
log .Printf ("error decoding message: %v" , err )
@@ -200,27 +210,27 @@ func chownHandler(data []byte, resp RPCResponse) {
200
210
goto finished
201
211
}
202
212
203
- uid_str : = chownReq .Uid
204
- usr , err : = user .Lookup (uid_str )
213
+ uid_str = chownReq .Uid
214
+ usr , err = user .Lookup (uid_str )
205
215
if err != nil {
206
216
chown .Response .Err = err .Error ()
207
217
goto finished
208
218
}
209
219
210
- uid , err : = strconv .ParseInt (usr .Uid , 10 , 32 )
220
+ uid , err = strconv .ParseUint (usr .Uid , 10 , 32 )
211
221
if err != nil {
212
222
chown .Response .Err = err .Error ()
213
223
goto finished
214
224
}
215
225
216
- gid_str : = chownReq .Gid
217
- grp , err : = user .LookupGroup (gid_str )
226
+ gid_str = chownReq .Gid
227
+ grp , err = user .LookupGroup (gid_str )
218
228
if err != nil {
219
- chown .Response .Err = err .Error ()
229
+ chown .Response .Err = err .Error ()
220
230
goto finished
221
231
}
222
232
223
- gid , err : = strconv .ParseUint (grp .Gid , 10 , 32 )
233
+ gid , err = strconv .ParseUint (grp .Gid , 10 , 32 )
224
234
if err != nil {
225
235
chown .Response .Err = err .Error ()
226
236
goto finished
0 commit comments