diff options
author | Bryan Ischo <bryan@ischo.com> | 2008-07-21 12:28:51 +0000 |
---|---|---|
committer | Bryan Ischo <bryan@ischo.com> | 2008-07-21 12:28:51 +0000 |
commit | 8a2f22506a4e3a8f07356aaa3a223428243acda4 (patch) | |
tree | 50a226caf30348afc47a227295f85511f2692c0d /src/general.c | |
parent | 5b2d5978bfea855912ba38e32985cee8c0f35a89 (diff) | |
download | ceph-libs3-8a2f22506a4e3a8f07356aaa3a223428243acda4.tar.gz |
* Removed http response code from complete callback (libs3 users should only
care about the actual response code)
* Cleaned up some stuff
* Added S3_status_is_retryable
Diffstat (limited to 'src/general.c')
-rw-r--r-- | src/general.c | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/src/general.c b/src/general.c index 4915b0e..39e5cd8 100644 --- a/src/general.c +++ b/src/general.c @@ -173,7 +173,7 @@ const char *S3_get_status_name(S3Status status) return #s handlecase(OK); - handlecase(Failure); + handlecase(InternalError); handlecase(OutOfMemory); handlecase(Interrupted); handlecase(FailedToCreateMutex); @@ -216,6 +216,10 @@ const char *S3_get_status_name(S3Status status) handlecase(BadAclGrantee); handlecase(BadAclPermission); handlecase(AclXmlDocumentTooLarge); + handlecase(NameLookupError); + handlecase(FailedToConnect); + handlecase(ConnectionFailed); + handlecase(AbortedByCallback); handlecase(ErrorAccessDenied); handlecase(ErrorAccountProblem); handlecase(ErrorAmbiguousGrantByEmailAddress); @@ -562,3 +566,20 @@ S3Status S3_convert_acl(char *aclXml, char *ownerId, char *ownerDisplayName, return S3StatusOK; } + + +int S3_status_is_retryable(S3Status status) +{ + switch (status) { + case S3StatusNameLookupError: + case S3StatusFailedToConnect: + case S3StatusConnectionFailed: + case S3StatusErrorInternalError: + case S3StatusErrorOperationAborted: + case S3StatusErrorRequestTimeout: + return 1; + default: + return 0; + } +} + |