summaryrefslogtreecommitdiffstats
path: root/routers/api/v1/user
diff options
context:
space:
mode:
authorVlad Temian <vladtemian@gmail.com>2017-12-06 12:27:10 +0200
committerLauris BH <lauris@nix.lv>2017-12-06 12:27:10 +0200
commit469ab99e9a4e31c1e95ab37f363c26b62b782542 (patch)
tree610c3848c07f2d0ca8854c6fb989f72e8a656b3b /routers/api/v1/user
parentc7fb6e30870ea1abff13a8214107e0747d293320 (diff)
downloadgitea-469ab99e9a4e31c1e95ab37f363c26b62b782542.tar.gz
gitea-469ab99e9a4e31c1e95ab37f363c26b62b782542.zip
Delete a user's public key via admin api (closes #3014) (#3059)
* Delete a user's public key via admin api * Test admin ssh endpoint for creating a new ssh key * Adapt public ssh key test to also test the delete operation * Test that deleting a missing key will result in a 404 * Test that a normal user can't delete another user's ssh key * Make DeletePublicKey return err * Update swagger doc
Diffstat (limited to 'routers/api/v1/user')
-rw-r--r--routers/api/v1/user/key.go6
1 files changed, 5 insertions, 1 deletions
diff --git a/routers/api/v1/user/key.go b/routers/api/v1/user/key.go
index 3649dac9b9..c36ef763dd 100644
--- a/routers/api/v1/user/key.go
+++ b/routers/api/v1/user/key.go
@@ -178,8 +178,12 @@ func DeletePublicKey(ctx *context.APIContext) {
// "$ref": "#/responses/empty"
// "403":
// "$ref": "#/responses/forbidden"
+ // "404":
+ // "$ref": "#/responses/notFound"
if err := models.DeletePublicKey(ctx.User, ctx.ParamsInt64(":id")); err != nil {
- if models.IsErrKeyAccessDenied(err) {
+ if models.IsErrKeyNotExist(err) {
+ ctx.Status(404)
+ } else if models.IsErrKeyAccessDenied(err) {
ctx.Error(403, "", "You do not have access to this key")
} else {
ctx.Error(500, "DeletePublicKey", err)