Bug 1274148 (part 1, attempt 2) - Use MOZ_MUST_USE more in xpcom/io/Base64.h. r=erahm,bagder,mattwoodrow.

This commit is contained in:
Nicholas Nethercote
2016-06-06 12:22:14 +10:00
parent 0ba1302e1e
commit 66fadb3d03
4 changed files with 17 additions and 13 deletions

View File

@@ -1477,8 +1477,10 @@ LayerScopeWebSocketManager::SocketHandler::WebSocketHandshake(nsTArray<nsCString
uint8_t digest[SHA1Sum::kHashSize]; // SHA1 digests are 20 bytes long. uint8_t digest[SHA1Sum::kHashSize]; // SHA1 digests are 20 bytes long.
sha1.finish(digest); sha1.finish(digest);
nsCString newString(reinterpret_cast<char*>(digest), SHA1Sum::kHashSize); nsCString newString(reinterpret_cast<char*>(digest), SHA1Sum::kHashSize);
Base64Encode(newString, res); rv = Base64Encode(newString, res);
if (NS_FAILED(rv)) {
return false;
}
nsCString response("HTTP/1.1 101 Switching Protocols\r\n"); nsCString response("HTTP/1.1 101 Switching Protocols\r\n");
response.AppendLiteral("Upgrade: websocket\r\n"); response.AppendLiteral("Upgrade: websocket\r\n");
response.AppendLiteral("Connection: Upgrade\r\n"); response.AppendLiteral("Connection: Upgrade\r\n");

View File

@@ -180,7 +180,8 @@ void nsNotifyAddrListener::calculateNetworkId(void)
sha1.finish(digest); sha1.finish(digest);
nsCString newString(reinterpret_cast<char*>(digest), nsCString newString(reinterpret_cast<char*>(digest),
SHA1Sum::kHashSize); SHA1Sum::kHashSize);
Base64Encode(newString, output); nsresult rv = Base64Encode(newString, output);
MOZ_RELEASE_ASSERT(NS_SUCCEEDED(rv));
LOG(("networkid: id %s\n", output.get())); LOG(("networkid: id %s\n", output.get()));
if (mNetworkId != output) { if (mNetworkId != output) {
// new id // new id

View File

@@ -270,7 +270,8 @@ void nsNetworkLinkService::calculateNetworkId(void)
sha1.finish(digest); sha1.finish(digest);
nsCString newString(reinterpret_cast<char*>(digest), nsCString newString(reinterpret_cast<char*>(digest),
SHA1Sum::kHashSize); SHA1Sum::kHashSize);
Base64Encode(newString, output); nsresult rv = Base64Encode(newString, output);
MOZ_RELEASE_ASSERT(NS_SUCCEEDED(rv));
LOG(("networkid: id %s\n", output.get())); LOG(("networkid: id %s\n", output.get()));
mNetworkId = output; mNetworkId = output;
} }

View File

@@ -13,27 +13,27 @@ class nsIInputStream;
namespace mozilla { namespace mozilla {
nsresult MOZ_MUST_USE nsresult
Base64EncodeInputStream(nsIInputStream* aInputStream, Base64EncodeInputStream(nsIInputStream* aInputStream,
nsACString& aDest, nsACString& aDest,
uint32_t aCount, uint32_t aCount,
uint32_t aOffset = 0); uint32_t aOffset = 0);
nsresult MOZ_MUST_USE nsresult
Base64EncodeInputStream(nsIInputStream* aInputStream, Base64EncodeInputStream(nsIInputStream* aInputStream,
nsAString& aDest, nsAString& aDest,
uint32_t aCount, uint32_t aCount,
uint32_t aOffset = 0); uint32_t aOffset = 0);
nsresult MOZ_MUST_USE nsresult
Base64Encode(const char* aBinary, uint32_t aBinaryLen, char** aBase64); Base64Encode(const char* aBinary, uint32_t aBinaryLen, char** aBase64);
nsresult MOZ_MUST_USE nsresult
Base64Encode(const nsACString& aBinary, nsACString& aBase64); Base64Encode(const nsACString& aBinary, nsACString& aBase64);
nsresult MOZ_MUST_USE nsresult
Base64Encode(const nsAString& aBinary, nsAString& aBase64); Base64Encode(const nsAString& aBinary, nsAString& aBase64);
nsresult MOZ_MUST_USE nsresult
Base64Decode(const nsACString& aBase64, nsACString& aBinary); Base64Decode(const nsACString& aBase64, nsACString& aBinary);
nsresult MOZ_MUST_USE nsresult
Base64Decode(const nsAString& aBase64, nsAString& aBinary); Base64Decode(const nsAString& aBase64, nsAString& aBinary);
enum class Base64URLEncodePaddingPolicy { enum class Base64URLEncodePaddingPolicy {
@@ -46,7 +46,7 @@ enum class Base64URLEncodePaddingPolicy {
* Aims to encode the data in constant time. The caller retains ownership * Aims to encode the data in constant time. The caller retains ownership
* of |aBinary|. * of |aBinary|.
*/ */
nsresult MOZ_MUST_USE nsresult
Base64URLEncode(uint32_t aBinaryLen, const uint8_t* aBinary, Base64URLEncode(uint32_t aBinaryLen, const uint8_t* aBinary,
Base64URLEncodePaddingPolicy aPaddingPolicy, Base64URLEncodePaddingPolicy aPaddingPolicy,
nsACString& aBase64); nsACString& aBase64);
@@ -60,7 +60,7 @@ enum class Base64URLDecodePaddingPolicy {
/** /**
* Decodes a Base64 URL-encoded |aBase64| into |aBinary|. * Decodes a Base64 URL-encoded |aBase64| into |aBinary|.
*/ */
nsresult MOZ_MUST_USE nsresult
Base64URLDecode(const nsACString& aBase64, Base64URLDecode(const nsACString& aBase64,
Base64URLDecodePaddingPolicy aPaddingPolicy, Base64URLDecodePaddingPolicy aPaddingPolicy,
FallibleTArray<uint8_t>& aBinary); FallibleTArray<uint8_t>& aBinary);