#define ERR_SIGNATURE_NO_MATCH 2027
#define ERR_INVALID_ACCESS_KEY 2028
#define ERR_MALFORMED_XML 2029
+#define ERR_USER_EXIST 2030
#define ERR_USER_SUSPENDED 2100
#define ERR_INTERNAL_ERROR 2200
#define ERR_NOT_IMPLEMENTED 2201
{ ERR_METHOD_NOT_ALLOWED, 405, "MethodNotAllowed" },
{ ETIMEDOUT, 408, "RequestTimeout" },
{ EEXIST, 409, "BucketAlreadyExists" },
+ { ERR_USER_EXIST, 409, "UserAlreadyExists" },
{ ENOTEMPTY, 409, "BucketNotEmpty" },
{ ERR_PRECONDITION_FAILED, 412, "PreconditionFailed" },
{ ERANGE, 416, "InvalidRange" },
Formatter *formatter = flusher.get_formatter();
ret = user.add(op_state, NULL);
- if (ret < 0)
+ if (ret < 0) {
+ if (ret == -EEXIST)
+ ret = -ERR_USER_EXIST;
return ret;
+ }
ret = user.info(info, NULL);
if (ret < 0)